vim Part 6©2ch.net

主にWindows環境でのVimについてのスレッドです。

本家: http://www.vim.org/
Windows版バイナリ配布: http://www.kaoriya.net/
vim-jp: http://vim-jp.org/
VimWiki: http://vimwiki.net/
ctags 日本語対応版: http://hp.vector.co.jp/authors/VA025040/

名無しのVIM使い(スクリプト) http://nanasi.jp
spanish passion Linux(全オプション) http://www15.ocn.ne.jp/~tusr/
ずんWiki http://www.kawaz.jp/pukiwiki/?vim

関連リンク
UNIX板 Vim Part22: http://peace.2ch.net/test/read.cgi/unix/1365071542/
MacVim 再び: http://anago.2ch.net/test/read.cgi/mac/1133534694/
前スレ vim Part 5: http://anago.2ch.net/test/read.cgi/software/1379912425/

6776292018/01/13(土) 02:59:18.20ID:2ghyYC0g0
gx でURL を開くとき、?以降のパラメータが含まれないようです
?以降のパラメータを含めるような設定はありますか?

678名無しさん@お腹いっぱい。2018/01/14(日) 20:20:15.18ID:j8cFEhBB0
netrwの話?
:set isfname+=63 "( '?' の10進表記 = 63)
でもグローバルなんだなこのオプション
viWgx とでもして開くほうがいいかもしらん

679名無しさん@お腹いっぱい。2018/02/04(日) 22:09:26.73ID:Ex7WuPiE0
vim 標準搭載のパッケージ管理について質問です。

.vim/pack 下にプラグインを置くことでそのプラグインを使えるようになりますが、
そのプラグインのドキュメントが読み込まれません。

たとえば、vim-surround というプラグインを .vim/pack/pack1/start/vim-surround に置くと、
vim を起動させるだけで surround プラグインが機能します。
しかし、:h surround コマンドを入力してもエラーになりヘルプが見れません。
.vim/pack/pack1/start/vim-surround/doc/surround.txt が存在するのにです。

pathogen を使っていた時は、.vim/bundle にプラグインを置けば、そのドキュメントも利用できたのですが。
標準搭載のパッケージ管理ではドキュメントまでは面倒を見てくれないのでしょうか。

680名無しさん@お腹いっぱい。2018/02/05(月) 00:08:13.90ID:XvjhK2Ri0
:helptags /path/to/surround.txt やったらいけるとか?

681名無しさん@お腹いっぱい。2018/02/05(月) 11:28:34.02ID:mk5FwJkP0
Vim スクリプトできたのって1998年なのか

682名無しさん@お腹いっぱい。2018/02/06(火) 08:06:00.46ID:3hgvlDCi0
久々にいいオプションを見つけた
set isfname-==
'=' をファイル名の一部として認識させない
これによって設定ファイルの中の
option=/path/to/file
のような局面で <C-x><C-f> 補完を使っていける

683名無しさん@お腹いっぱい。2018/02/06(火) 20:28:09.23ID:4HyUH8RQ0
>>680
:helptags .vim/pack/pack1/start/vim-surround
としてみましたが、ダメでした。
(surround.txt を引数に入れると、ディレクトリではないと怒られるので )

:set runtimeoath? とすると、そこには
.vim/pack/pack1/start/vim-surround
も含まれてるのですが...

684名無しさん@お腹いっぱい。2018/02/06(火) 21:48:13.19ID:+AgQ6OlP0
raspbianにインストールされている標準のvimを使うとC言語など拡張子に合わせてインデントや色分けするので便利でした。
Ubuntuでも同じようにしたいのですが、個別に機能をインスールのではなく補完機能を込み込みにしたvimのパッケージなどってあるんでしょうか?
あとRaspbianのvimはそれ用にカスタマイズされたものなんでしょうか?

685名無しさん@お腹いっぱい。2018/02/06(火) 22:26:56.02ID:3aQKGlB00
>>684
色んなプラグインとか設定とかが元々入ってる Vim のディストリはいくつかあるよ
spf13, Janus, SpaceVim あたりが有名どころだろうか
イチから自分で探すの面倒ならこういうのもアリなのかもしらん

686名無しさん@お腹いっぱい。2018/02/07(水) 02:02:47.73ID:d3pHNNkU0
>>685
そうなんですね、疑問がスッキリしました。
オススメされたディストリを入れてみます。
ありがとう。

687名無しさん@お腹いっぱい。2018/02/07(水) 05:05:49.75ID:3woY5VBb0
Cのシンタックスハイライトやインデントくらいなら公式のVimに付いてくるはず
UbuntuにデフォルトインストールされているVimはtiny版だと思うから、huge版をインストールし直してやればいい。正確なパッケージ名までは知らんが公式リポにあるはず

688名無しさん@お腹いっぱい。2018/02/07(水) 19:09:22.81ID:rav/W75F0
Ubuntu使っているならvim-gtk3を入れとけばいいんじゃないかと思う

689名無しさん@お腹いっぱい。2018/02/07(水) 22:13:21.41ID:v2CcfQmh0
>>682
早速設定したいいね

690名無しさん@お腹いっぱい。2018/02/07(水) 23:40:18.65ID:d3pHNNkU0
gtk3(huge)を入れたんだけど自動インデントされません。
tiny消したりしても変化なし、ハイライトはされてます。

691名無しさん@お腹いっぱい。2018/02/08(木) 03:50:31.20ID:z0rRyRu/0
>>690
.vimrcにset cindentって書けば有効化できる
動作とか詳しくはググって

692名無しさん@お腹いっぱい。2018/02/08(木) 04:12:40.57ID:eZTWGbQ80
>>691
cindentオプションはC言語のインデントプラグインで自動的に有効化(バッファローカル)されるので、普通は手動で :set することはない

>>690
vimrcを作成済みなら、その末尾に
filetype plugin indent on
の一行を追加して、いったんVimを終了してからC言語ファイルの編集を始めてみて

693名無しさん@お腹いっぱい。2018/02/09(金) 14:59:51.70ID:5oua0ax+0
>>692
Cでインデント効きました。
嬉しい!ありがとうございます。

694名無しさん@お腹いっぱい。2018/02/15(木) 01:44:57.78ID:yLfrC0l60
patch ファイルを開いている場合に、下記例でいうと src/foo.c にジャンプしたいです
単に gf とすると "a/" もパスの一部と解釈されてしまいジャンプできません

diff --git a/src/foo.c b/src/foo.c

今は泥臭いですが a にカーソルを持っていき xx <C-w> f で開いています
(単に xxgf だとバッファが保存されていなくて開けない)

isfname あたりで "a/" を無視するような設定や、
もう少し短いキーストロークで実現する方法はあるでしょうか

695名無しさん@お腹いっぱい。2018/02/15(木) 22:07:38.62ID:NTsQ7F5L0

6966942018/02/16(金) 19:09:45.16ID:Fzx+NlT+0
ありがとうございます
試してみます

697名無しさん@お腹いっぱい。2018/02/17(土) 00:39:36.85ID:WP383XxW0
vim右下の行列表示で 7,105-71となっているとき
右の71は半角1,全角2として
左の105は半角1、全角3として計算しているようです。
UTF8なら左、Shift_JISなら右の数字を見ると1行のデータ量が分かるいいということであってますか?

698名無しさん@お腹いっぱい。2018/03/01(木) 19:25:43.48ID:M8MGtIen0
香り屋さんのを仕事で使ってるんだけど
ctrl-;はやっぱ割り当てられないよね
[キーが遠くて小指が痛いのんだけど、どのキーで妥協すべき?

699名無しさん@お腹いっぱい。2018/03/01(木) 21:40:23.05ID:+hKr9yBc0
俺Ctrl+iだわ

700名無しさん@お腹いっぱい。2018/03/02(金) 01:15:09.12ID:Bcvc+oSk0
>>698
英語配列だとキーひとつ分左なんだよね、[って。

701名無しさん@お腹いっぱい。2018/03/02(金) 01:16:26.83ID:Bcvc+oSk0
>>699
タブ入力する時に使うから割当て変えるの凄いと思った

702名無しさん@お腹いっぱい。2018/03/02(金) 02:56:04.11ID:Ncwi+G2w0
>>701
タブ入力はC-v,Tabかな。あんま使わないから
基本プログラミングとかしない。メモ帳と小遣い帳

703名無しさん@お腹いっぱい。2018/03/03(土) 21:45:46.26ID:H4zWi9ov0
linux で vim を使っています。

今、6行目の4列目にカーソルがあるとして、
2行目から4行目の範囲の文字列を外部コマンドに標準入力を通して送り、
コマンド処理において標準出力に出力された文字列をカーソルの位置に挿入したいです。

コマンドラインモードで
:2,4! コマンド
とすると、2行目から4行目が消され、2行目にコマンドが出力した文字列が挿入されます。

そうではなく、カーソルの位置に挿入したいのですが、可能でしょうか。

7046942018/04/23(月) 15:44:09.38ID:lskVF0Hn0
>695
遅レスですが、まんまやりたいことができました
ありがとうございました

ただ、当たり前ですが path から探すので
自分のフォルダ構成だと patch ファイルと同じディレクトリに遷移する必要がありました
そこで下記のマップをして改良してます

nnoremap ,gf :cd %:h<CR>:call gf#user#do("gf", "n")<CR>

705名無しさん@お腹いっぱい。2018/05/12(土) 09:02:19.28ID:Xs3iZn7R0
一文字ずつ間にデリミタを入れるように置換したい。

[例]
1749064 --> 1,7,4,9,0,6,4

正規表現を使って一発で置換できるだろうか?

:s/\v(\d)(\d)/\1,\2/g
これを2回適用すればできたけど、なんか不様。

706名無しさん@お腹いっぱい。2018/05/12(土) 11:19:50.04ID:WzZv1SoL0
>>705
先読みで

:s/..\@=/&,/g

vimの先読みは \@= と書き、その直前の正規表現(この場合二つめの .)がその場所で一致するかどうかを見る
ちなみに & は一致した文字列全体

707名無しさん@お腹いっぱい。2018/05/12(土) 12:09:06.89ID:fQpz5LJv0
>>705
試してないけどこれでもいけるかも
s/\d\ze\d/&,/g

708名無しさん@お腹いっぱい。2018/05/13(日) 03:18:44.26ID:X8ne/l250
vimの先読み後読みって覚えづらいのよね……
おれ先に(?=)とかで覚えちゃったから余計に

709名無しさん@お腹いっぱい。2018/05/13(日) 14:09:54.80ID:lh+oIfnh0
>>706 >>707 でできました。
ありがとうございました。

先読みなどという仕組みがあるのですね。
興味深いので調べてみます。

710名無しさん@お腹いっぱい。2018/05/13(日) 17:19:35.36ID:mVufkUsF0
>>708
\zsと\zeのがわかりやすいしね

711名無しさん@お腹いっぱい。2018/05/17(木) 05:28:13.18ID:xqetUBaJ0
ryanoasis/vim-deviconsを入れるとscrooloose/NERDTreeの表示がおかしくなります。

画像のfolderの中にfolder1〜5とfile1〜5が入っているんですが、ファイルだけがなぜか4マス分右にインデントされてしまいます。
vim-deviconsのオプションでフォルダにもアイコンを付ける設定をすると、フォルダも4マス分右にずれるので、ファイルと並びがそろうんですが、左のスペースが気になります。
左に詰めるにはどういう設定をしたらよいですか?

iTrem2でフォントはCicaフォントを使っています。

https://i.imgur.com/Ru8H3M7.jpg
https://i.imgur.com/GQUhbpO.jpg

712名無しさん@お腹いっぱい。2018/05/17(木) 05:33:11.22ID:xqetUBaJ0
この画像だと、フォルダとファイルは一緒に並んでいて、ファイルにインデントがかかってないです。
こんな風にしたいです。

https://camo.githubusercontent.com/7b67065e8ff4985dff6068a154ed54a790e948c2/687474703a2f2f692e696d6775722e636f6d2f49536e567776432e706e67

713名無しさん@お腹いっぱい。2018/05/17(木) 05:53:40.46ID:GYmrKBbr0

714名無しさん@お腹いっぱい。2018/05/17(木) 06:23:16.17ID:GYmrKBbr0
自己レス
Xuyuanp/nerdtree-git-plugin
これの影響でした

715名無しさん@お腹いっぱい。2018/05/18(金) 07:45:49.89ID:UBuWUPJt0
正規表現にも方言があるから面倒だよな
grepのman見るまで基本や拡張があるなんて知らんかったし
vimの置換に手を焼いてたら原因がエスケープの有無とかほんと

716名無しさん@お腹いっぱい。2018/05/18(金) 13:09:21.66ID:Or9v+YQm0
指定した正規表現の量指定子やエスケープ、クラス、グループなんかをそれぞれ色分けして表示してくれるといいのにね。

そうすれば、エスケープし忘れている文字とかも一発で視認できる。

717名無しさん@お腹いっぱい。2018/05/18(金) 14:14:43.14ID:tabF5f900
エスケープの有無の違いがウザい
未だに戸惑うし

718名無しさん@お腹いっぱい。2018/05/19(土) 17:38:25.00ID:0xVirQWu0
編集が済んでファイルを :bd で 閉じているのですが、
この時にtabは閉じないようにできないでしょうか?

tab 毎に カレントディレクトリを変えているのでやや困っています。

719名無しさん@お腹いっぱい。2018/05/19(土) 21:54:37.42ID:F6IdimAr0
>>718
https://thinca.hatenablog.com/entry/20111204/1322932585
" タブページを常に表示
set showtabline=2
" gVimでもテキストベースのタブページを使う
set guioptions-=e

後:bdだと:ls!では表示されるから俺は:bw使ってる

720名無しさん@お腹いっぱい。2018/05/20(日) 06:24:30.86ID:zmUHpF5R0

721名無しさん@お腹いっぱい。2018/05/20(日) 17:44:58.14ID:5UNB6//I0
>>719,720
ありがとうございます。
720 の plugin が やりたいことっぽいので試してみます。

722名無しさん@お腹いっぱい。2018/05/21(月) 21:15:38.92ID:a5nUaVKs0
8.1きてるじゃないですか

723名無しさん@お腹いっぱい。2018/05/21(月) 22:02:36.13ID:osgZGFj80
kaoriyaのも5/20付?で8.1あるな

724名無しさん@お腹いっぱい。2018/05/22(火) 04:19:25.71ID:QMK9uA+f0
8.1のターミナルサポートってなんのこと?
:terminalとはまた違うターミナル?

725名無しさん@お腹いっぱい。2018/05/22(火) 04:27:52.17ID:QOIpONPs0
>>724
これ見ると同じみたい
いつからあるのか知らないけど
https://www.vim.org/vim-8.1-released.php

726名無しさん@お腹いっぱい。2018/05/22(火) 10:39:06.82ID:z9TAdl0O0
C-pでと入力補完ができるけどまさかC-x C-fでパス補完までできるとは
vimに標準でemacsじみた操作があるとか何この初見殺し

727名無しさん@お腹いっぱい。2018/05/22(火) 17:49:56.67ID:fa0LM1mN0
gvimからのterminal素敵すぎる

新着レスの表示
レスを投稿する