主に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/
探検
vim Part 6©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2015/01/13(火) 13:05:45.21ID:JwnBl2Yv0
2017/09/02(土) 22:28:24.27ID:8bAG7ppU0
2017/10/03(火) 23:14:16.22ID:QcTyHpdE0
3ボタン式フットペダル買おうと思う
左はESCとして、真ん中と右に何を割り当てようか?
左はESCとして、真ん中と右に何を割り当てようか?
2017/10/03(火) 23:19:07.97ID:+ct86dHB0
クラッチとアクセルだよな
2017/10/03(火) 23:26:04.06ID:f4gHys0x0
そもそもそういうのが必要ないのがvimのいいところじゃね
2017/10/04(水) 00:15:47.10ID:cDl6M1KN0
2017/10/04(水) 00:51:15.43ID:vgPnd8+o0
免停
2017/10/04(水) 20:51:51.94ID:KZawJQeu0
>>594
C-z と fg <CR>
C-z と fg <CR>
2017/10/05(木) 02:39:35.11ID:a7le/tir0
>>594
押しっぱなしOKならCTRL
押しっぱなしOKならCTRL
2017/10/12(木) 22:42:02.80ID:YUZLqc8d0
kaoriya の gvim と cygwin の vim を併用しています
kaoriya の gvim において、コマンドラインモードの部分のテキストを
クリップボードにコピーしたいです。何か方法はあるでしょうか?
ちなみに cygwin の vim では、ターミナルの機能だと思うのですが
マウス選択すればクリップボードにコピーされます
また、右クリックでメニューも出ます
ユースケースとしては、ファイルのフルパスを 1 と Ctrl + G で
コマンドライン部分に表示させた後、その文字列をコピペする操作です
kaoriya の gvim において、コマンドラインモードの部分のテキストを
クリップボードにコピーしたいです。何か方法はあるでしょうか?
ちなみに cygwin の vim では、ターミナルの機能だと思うのですが
マウス選択すればクリップボードにコピーされます
また、右クリックでメニューも出ます
ユースケースとしては、ファイルのフルパスを 1 と Ctrl + G で
コマンドライン部分に表示させた後、その文字列をコピペする操作です
2017/10/12(木) 23:19:03.68ID:iq+JUW1U0
>>601
ファイル名をクリップボード(または単にレジスタ)に入れるだけならこれがよさそう
https://blog.trimark.jp/archives/21
いろんなメッセージに対して使いたいならこっちかな
https://superuser.com/a/171105
ファイル名をクリップボード(または単にレジスタ)に入れるだけならこれがよさそう
https://blog.trimark.jp/archives/21
いろんなメッセージに対して使いたいならこっちかな
https://superuser.com/a/171105
2017/10/13(金) 00:10:56.55ID:ncs7N8va0
>602
回答ありがとうございます
どちらも有益な情報でした
nnoremap ,cp :let @*=expand("%:p")<CR>
こんな感じでマップすると、良い感じで使いまわせそうです
あと、2つ目の方は先頭に改行 ^J が入ってしまうようですね
助かりました
回答ありがとうございます
どちらも有益な情報でした
nnoremap ,cp :let @*=expand("%:p")<CR>
こんな感じでマップすると、良い感じで使いまわせそうです
あと、2つ目の方は先頭に改行 ^J が入ってしまうようですね
助かりました
2017/10/13(金) 22:17:18.33ID:wbV6EcdM0
指定した範囲内の特定の文字列を置換したい。
ただし、置換先の文字列は1から順に増加する数字を含むとする。
例えば下記のものを
abcdef
xyzcwv
ocpqr
hijkclcno
xxcx
2行目から4行目までの c を上から順に、また左から順に [1] [2] [3] [4] に置換すると、
abcdef
xyz[1]wv
o[2]pqr
hijk[3]l[4]no
xxcx
となる。
どうすれば良い?
ただし、置換先の文字列は1から順に増加する数字を含むとする。
例えば下記のものを
abcdef
xyzcwv
ocpqr
hijkclcno
xxcx
2行目から4行目までの c を上から順に、また左から順に [1] [2] [3] [4] に置換すると、
abcdef
xyz[1]wv
o[2]pqr
hijk[3]l[4]no
xxcx
となる。
どうすれば良い?
2017/10/13(金) 22:23:38.98ID:sfqciESl0
「ただし、」はどこにかかってるの?
2017/10/13(金) 23:24:02.57ID:psSxC80I0
>>604
コマンド一発でやる方法は思いつかなかったわ
関数作るならもちろんできる
function! AAA() range
let i = a:firstline
let n = 1
for l in getline(i, a:lastline)
let line = l
while match(line, 'c') + 1
if match(line, 'c')
let line = substitute(line, 'c', printf('[%d]', n), '')
let n += 1
endif
endwhile
cal setline(i, line)
let i += 1
endfor
endfunction
コマンド一発でやる方法は思いつかなかったわ
関数作るならもちろんできる
function! AAA() range
let i = a:firstline
let n = 1
for l in getline(i, a:lastline)
let line = l
while match(line, 'c') + 1
if match(line, 'c')
let line = substitute(line, 'c', printf('[%d]', n), '')
let n += 1
endif
endwhile
cal setline(i, line)
let i += 1
endfor
endfunction
2017/10/14(土) 05:23:42.42ID:iik+6J8W0
:let i=1 | 2,4g/./s/c/\=("[".i."]")/g | let i+=1
上のだと4行目のcは同じ数字にしか置換されない
↓これで
let g:c=0
function! Inc()
let g:c+=1
return g:c
endfunction
:let g:c=0 | 2,4g/^/s/c/\=("[".Inc()."]")/g
:global コマンドを使い慣れてないので2,4g/^/s/cのとこはキレイでないかもしれない
上のだと4行目のcは同じ数字にしか置換されない
↓これで
let g:c=0
function! Inc()
let g:c+=1
return g:c
endfunction
:let g:c=0 | 2,4g/^/s/c/\=("[".Inc()."]")/g
:global コマンドを使い慣れてないので2,4g/^/s/cのとこはキレイでないかもしれない
2017/10/14(土) 21:37:36.91ID:DefQA8cL0
2017/10/14(土) 22:24:49.10ID:Fp7rFVAI0
関数を作ると別ファイルに分けたくなる→プラグイン開発の道へ
2017/10/15(日) 11:40:20.45ID:+vJKpvKe0
連続した2行の中のそれぞれのある列からある列までの文字列を上下入れ替えたいんだけど、
素早くやる方法ってある?
たとえば、こんなの (便宜的に半角空白2文字を倍角空白1文字に置き換えた)
bindsym up command1
bindsym down command2
こんな2行の文字列内の「up 」と「down」を入れ替えたい。
もちろん up の後ろの2つの空白文字も含めて。
こんな感じに。
bindsym down command1
bindsym up command2
プログラミングとかコンフィグファイルとか書いてると時々あって、
今まで普通に消してから書き直すか、片方を一度別の文字列に置換する方法でスワップしてたんだけど、
これが結構疲れるんだ。
長い文字列だと、作業中に何をやろうとしていたのか、どこまでやってたのか忘れることもあるし。
なんか良い方法ない?
キーストロークでやる方法、コマンドを駆使する方法、何でもいいんだけど。
素早くやる方法ってある?
たとえば、こんなの (便宜的に半角空白2文字を倍角空白1文字に置き換えた)
bindsym up command1
bindsym down command2
こんな2行の文字列内の「up 」と「down」を入れ替えたい。
もちろん up の後ろの2つの空白文字も含めて。
こんな感じに。
bindsym down command1
bindsym up command2
プログラミングとかコンフィグファイルとか書いてると時々あって、
今まで普通に消してから書き直すか、片方を一度別の文字列に置換する方法でスワップしてたんだけど、
これが結構疲れるんだ。
長い文字列だと、作業中に何をやろうとしていたのか、どこまでやってたのか忘れることもあるし。
なんか良い方法ない?
キーストロークでやる方法、コマンドを駆使する方法、何でもいいんだけど。
2017/10/15(日) 14:06:22.54ID:ORQlSw2R0
>>610
自分は true/false を入れ替えるのにこれ使ってるわ
sagarrakshe/toggle-bool
自分はこれで足りてるけど、こっちのが高機能で色々カスタマイズできるみたい
AndrewRadev/switch.vim
自分は true/false を入れ替えるのにこれ使ってるわ
sagarrakshe/toggle-bool
自分はこれで足りてるけど、こっちのが高機能で色々カスタマイズできるみたい
AndrewRadev/switch.vim
2017/10/15(日) 21:11:15.02ID:+vJKpvKe0
>>611
ごめん、例が誤解させちゃったみたい。
up と down だったのは特に考えなしに挙げた例で、
実際は何か意味的に対になる単語という訳じゃないんだ。
だから、予め辞書みたいに登録しておけない。
純粋に、2つの行の、同じ列から同じ列までの範囲の文字列を入れ換えたい。
矩形選択した範囲内の一番上の行と一番下の行をスワップする。
これができれば理想的なんだけど。
ごめん、例が誤解させちゃったみたい。
up と down だったのは特に考えなしに挙げた例で、
実際は何か意味的に対になる単語という訳じゃないんだ。
だから、予め辞書みたいに登録しておけない。
純粋に、2つの行の、同じ列から同じ列までの範囲の文字列を入れ換えたい。
矩形選択した範囲内の一番上の行と一番下の行をスワップする。
これができれば理想的なんだけど。
2017/10/15(日) 22:25:14.16ID:hbvh5OYC0
2017/10/16(月) 14:09:16.56ID:NHOddXz50
2017/10/16(月) 15:36:02.02ID:A0Q+iCAA0
>>610
洗練されてないコードだがこんなんとか
function! Sw()
let pat = '\s\+\S\+\s\+'
let l = getline('.')
let m = matchstr(l, pat)
let l2 = getline(line('.') + 1)
let m2 = matchstr(l2, pat)
cal setline(line('.'), substitute(l, pat, m2, ''))
cal setline(line('.') + 1, substitute(l2, pat, m, ''))
endfunction
洗練されてないコードだがこんなんとか
function! Sw()
let pat = '\s\+\S\+\s\+'
let l = getline('.')
let m = matchstr(l, pat)
let l2 = getline(line('.') + 1)
let m2 = matchstr(l2, pat)
cal setline(line('.'), substitute(l, pat, m2, ''))
cal setline(line('.') + 1, substitute(l2, pat, m, ''))
endfunction
2017/10/20(金) 00:35:41.26ID:9Lq922rL0
>>610
矩形選択した2行の同列の文字列同士を交換するならこんなんでどうか
function! s:SwapLine()
let pos1=getpos("'<")
let pos2=getpos("'>")
let l1=pos1[1]
let c_start=pos1[2]
let l2=pos2[1]
let c_end=pos2[2]
let len=c_end - c_start + 1
let text1=strpart(getline(l1),c_start-1,len)
let text2=strpart(getline(l2),c_start-1,len)
let line1=getline(l1)
let line2=getline(l2)
let newline1=strpart(line1,0,c_start-1).text2.strpart(line1,c_end)
let newline2=strpart(line2,0,c_start-1).text1.strpart(line2,c_end)
call setline(l1,newline1)
call setline(l2,newline2)
endfunction
vmap <C-S> :<C-U>call s:SwapLine()<CR>
矩形選択した2行の同列の文字列同士を交換するならこんなんでどうか
function! s:SwapLine()
let pos1=getpos("'<")
let pos2=getpos("'>")
let l1=pos1[1]
let c_start=pos1[2]
let l2=pos2[1]
let c_end=pos2[2]
let len=c_end - c_start + 1
let text1=strpart(getline(l1),c_start-1,len)
let text2=strpart(getline(l2),c_start-1,len)
let line1=getline(l1)
let line2=getline(l2)
let newline1=strpart(line1,0,c_start-1).text2.strpart(line1,c_end)
let newline2=strpart(line2,0,c_start-1).text1.strpart(line2,c_end)
call setline(l1,newline1)
call setline(l2,newline2)
endfunction
vmap <C-S> :<C-U>call s:SwapLine()<CR>
2017/10/20(金) 14:23:23.01ID:B1/d+O3g0
618名無しさん@お腹いっぱい。
2017/10/24(火) 12:52:35.00ID:lJHX4Ddo0 ファイルの最後尾を見たくてvim(gvim)をリードモードで開きたいです。
開いたあとにshift+gや、.vimrcの設定ではなく、起動時のオプションで、リードモード、最後尾を表示、で開くにはどうしたら良いでしょうか?
ソフトの実行ログで、最後尾周辺に見たい情報があります。
開いたあとにshift+gや、.vimrcの設定ではなく、起動時のオプションで、リードモード、最後尾を表示、で開くにはどうしたら良いでしょうか?
ソフトの実行ログで、最後尾周辺に見たい情報があります。
2017/10/24(火) 13:47:10.36ID:OV1KDivO0
2017/10/24(火) 21:40:55.66ID:ve11aTtX0
ノーマルモードで、
viWU
の後に、カーソルを最初に v を入力する時にいた位置に戻したいのたが、
関数やプラグインを使わずキーストロークのみで実現するには
マーク機能を使うしかないかな?
<c-o> を入力したら変なところ飛んじゃった。
viWU はジャンプリストには登録されないみたい。
viWU
の後に、カーソルを最初に v を入力する時にいた位置に戻したいのたが、
関数やプラグインを使わずキーストロークのみで実現するには
マーク機能を使うしかないかな?
<c-o> を入力したら変なところ飛んじゃった。
viWU はジャンプリストには登録されないみたい。
2017/10/25(水) 10:33:41.05ID:QgOEb83f0
2017/10/25(水) 18:19:16.67ID:CrH398Uo0
>620
viWU``
こういうことをしたい感じ?
マーク機能を使っているけど自動でマークされた場所に戻るだけだからセーフということで
viWU``
こういうことをしたい感じ?
マーク機能を使っているけど自動でマークされた場所に戻るだけだからセーフということで
2017/10/25(水) 20:57:59.51ID:w945/33m0
2017/10/25(水) 22:59:13.87ID:CrH398Uo0
あっ、再試験してみたらやっぱり手動でマークしないとダメだった……。なんだろ、無意識にm`しちゃってたのか?
改めて、 m`viWU`` ならたぶん意図通りになるんじゃないかなと。m`はジャンプリストを更新しているので最後の``はC-oでもいけるよ
:h jumplistにも載ってるからたぶん由緒正しい方法
改めて、 m`viWU`` ならたぶん意図通りになるんじゃないかなと。m`はジャンプリストを更新しているので最後の``はC-oでもいけるよ
:h jumplistにも載ってるからたぶん由緒正しい方法
2017/10/26(木) 21:15:31.52ID:p7h8skLL0
2017/10/27(金) 18:07:57.94ID:oDT7BWTj0
日本語ヘルプだと「直前位置マーク」ってなっていて、これはとてもいい名付け方だと思う
/とかggとかGとかでカーソルがどこかへジャンプする時にジャンプ前の位置が自動でマークされる
m`は手動でそのマークを更新しているわけね
maとかして`aと違うのはカーソルジャンプが発生すると自動で上書きされるマークだから、一時的に使うだけなら後腐れがないというのが1点
それとC-oで戻れないって>620にあったので戻れるようにできないか調べた結果というのがもう1点
/とかggとかGとかでカーソルがどこかへジャンプする時にジャンプ前の位置が自動でマークされる
m`は手動でそのマークを更新しているわけね
maとかして`aと違うのはカーソルジャンプが発生すると自動で上書きされるマークだから、一時的に使うだけなら後腐れがないというのが1点
それとC-oで戻れないって>620にあったので戻れるようにできないか調べた結果というのがもう1点
2017/10/27(金) 21:08:26.73ID:FdjtbyQ10
2017/10/29(日) 17:26:34.66ID:2hFicOAz0
>>601
ノーマルモードで2つのキーq: 連続押しするとexコマンド履歴が表示されるので
それ選択してクリップボードへ。
また :dis ってexモードで入力すると "で始まる各レジスタが表示される。
もしかしたら編集中のファイル名などコピペしたいのがあるかもしれない。
ノーマルモードで2つのキーq: 連続押しするとexコマンド履歴が表示されるので
それ選択してクリップボードへ。
また :dis ってexモードで入力すると "で始まる各レジスタが表示される。
もしかしたら編集中のファイル名などコピペしたいのがあるかもしれない。
2017/11/08(水) 12:12:30.72ID:HwsBEVk+0
cygwin の vim と kaoriya の gvim を併用しています
nerdtree において、259 文字以上のパスの場合、
cygwin の vim はそのファイルが表示されます
kaoriya の gvim はそのファイルが表示されません
後者の nerdtree において max_path を超えるパスを扱える方法はあるでしょうか
プラグインと設定ファイルはどちらも同じものを読み込んでます
kaoriya 付属の設定が原因かもですが、特定方法が分かりません
nerdtree において、259 文字以上のパスの場合、
cygwin の vim はそのファイルが表示されます
kaoriya の gvim はそのファイルが表示されません
後者の nerdtree において max_path を超えるパスを扱える方法はあるでしょうか
プラグインと設定ファイルはどちらも同じものを読み込んでます
kaoriya 付属の設定が原因かもですが、特定方法が分かりません
630629
2017/11/13(月) 13:11:31.88ID:t6b6lZth0 netrw も同じ症状でした
kaoriya は内部でwin32 api の制限を受けてるってことなんでしょうかね
kaoriya は内部でwin32 api の制限を受けてるってことなんでしょうかね
2017/11/13(月) 18:11:05.12ID:er883CbH0
2017/11/13(月) 19:48:42.85ID:AN9eRedf0
cygwin もネイティブのWindowsアプリなのでWindowsの制限を受けるのは同じ
2017/11/13(月) 20:38:21.25ID:er883CbH0
>>632
うーんじゃあファイル名の長さ制限は別の要因によるのかなあ
まあ自分もかつて両方使って環境変数の競合によるトラブルに悩まされた経験があるので
そもそもCygwinのVimとKaoriyaのVimは併用すべきでないと思う
うーんじゃあファイル名の長さ制限は別の要因によるのかなあ
まあ自分もかつて両方使って環境変数の競合によるトラブルに悩まされた経験があるので
そもそもCygwinのVimとKaoriyaのVimは併用すべきでないと思う
2017/11/19(日) 13:35:29.94ID:TVXilEkx0
Win32 APIは特別な対策をしなければMAX_PATH文字までしか使えない。
Cygwinはその特別な対策をしているが、Win32版は何もしていない。
Cygwinはその特別な対策をしているが、Win32版は何もしていない。
2017/11/29(水) 01:43:35.26ID:l4+9B2Hi0
GVimってなんでダメなの?
2017/11/29(水) 11:16:58.03ID:x0JDSmbC0
誰がダメだと言ってたの?
2017/11/29(水) 13:53:19.92ID:Cn9Z4Eq+0
VIP板のプログラミングスレの人達が言ってた
2017/11/29(水) 13:59:35.80ID:N7yajO2K0
GVIPならよかったんじゃね?
2017/11/30(木) 09:04:35.33ID:3PPJ82c80
linuxなら使わんけど
windowsなら普通に使う
windowsなら普通に使う
2017/11/30(木) 09:40:33.28ID:6UwNqrtQ0
Gvimがダメなんじゃなくて
Gvimがダメとか言ってる人たちがダメなんでしょ
弘法筆を選ばず
Windowsのメモ帳だってコードは書ける
Gvimがダメとか言ってる人たちがダメなんでしょ
弘法筆を選ばず
Windowsのメモ帳だってコードは書ける
2017/11/30(木) 15:14:08.43ID:Kr867vK00
まあcatよりはマシかもね
2017/11/30(木) 17:23:03.64ID:27CcoRuh0
挿入モードでカーソルを行末に持って行くのに、C-o $でやっているのですが他に方法って有りましたっけ。
2017/11/30(木) 17:35:50.97ID:3PPJ82c80
End
2017/12/01(金) 08:01:01.83ID:OKrtfkyp0
思考を放棄して ESC A してる
2017/12/01(金) 13:20:44.67ID:POVz5gxT0
>>643
それって入力中の文字列の最後に行くだけじゃないっけ
それって入力中の文字列の最後に行くだけじゃないっけ
646名無しさん@お腹いっぱい。
2017/12/01(金) 13:40:07.04ID:Md8z6RvL0 C-eを<End>にcnoremapしてる
647642
2017/12/01(金) 14:17:12.52ID:Ua777U600 様々なご意見ありがとうございます。
MacbookなのでEndがないのと、ホームポジションからなるべくキーを離したくないのです。
今まではESC AまたはC-[ Aだったのですが、最近ようやくC-o $を知りました。
どのみち2ストロークだよなあ、と思って質問してみました。
vimrc弄ってマッピングするのは盲点でした。検討してみます。
MacbookなのでEndがないのと、ホームポジションからなるべくキーを離したくないのです。
今まではESC AまたはC-[ Aだったのですが、最近ようやくC-o $を知りました。
どのみち2ストロークだよなあ、と思って質問してみました。
vimrc弄ってマッピングするのは盲点でした。検討してみます。
2017/12/01(金) 20:09:15.11ID:yk3phPpD0
2017/12/01(金) 22:13:17.49ID:e8YCngbo0
>>647
Fn+rightキーでend
Fn+rightキーでend
2017/12/02(土) 06:25:06.47ID:W/e2T6nM0
未だにAltってマップ出来ないの?
2017/12/02(土) 18:04:49.08ID:YOi+asrS0
フットペダルの出番ですね!?
2017/12/03(日) 10:23:47.82ID:aaXDgAD90
vim を使用しているとき矢印キーを不能にしたくて、
試しに :noremap! <Up> <Nop> としましたが、
インサートモードでおかしな挙動をします。
1つ上の行に1文字 A が挿入されます。
不可解です、これはどう言うことでしょうか?
コマンドラインモードでは問題なく意図通りになっています。
ちなみに、:noremap! <Del> <Nop> もインサートモードでの挙動が変です。
こちらはカーソルのすぐ左の1文字の大小が入れ替わり、
かつノーマルモードへ戻ってしまいます。
:noremap! <BS> <Nop> はインサートモードでも意図通りになりました。
試しに :noremap! <Up> <Nop> としましたが、
インサートモードでおかしな挙動をします。
1つ上の行に1文字 A が挿入されます。
不可解です、これはどう言うことでしょうか?
コマンドラインモードでは問題なく意図通りになっています。
ちなみに、:noremap! <Del> <Nop> もインサートモードでの挙動が変です。
こちらはカーソルのすぐ左の1文字の大小が入れ替わり、
かつノーマルモードへ戻ってしまいます。
:noremap! <BS> <Nop> はインサートモードでも意図通りになりました。
2017/12/03(日) 10:28:33.55ID:aaXDgAD90
2017/12/03(日) 12:15:11.52ID:aaXDgAD90
>>655
ごめんなさい、嘘をついていました。
まだ解決されていません。
矢印キーや Delete キーなどの挙動の仕組みは理解できました(つもり)。
そこで、set nocompatible を .vimrc に既述しましたが、症状は変わりません。
そもそも .vimrc が存在する時点で、デフォルトで nocompatible on のはずです。
仮想端末の方が悪いのかと、数種類試してみましたが、どの場合も同じ症状です。
vim のコンパイルオプションが関係しているのかと、vim --version で確認しましたが、
vi互換性やキーコードに関係していそうなオプションは見あたりませんでした。
もともと、矢印キーなどへ伸びる手を矯正しようと Nop に設定したので、
意図しない挙動であっても実質的には問題ないのですが、
やはり理由、原因は気になります。
vi互換性を切っても出るこの症状は何が原因なのでしょうか。
ごめんなさい、嘘をついていました。
まだ解決されていません。
矢印キーや Delete キーなどの挙動の仕組みは理解できました(つもり)。
そこで、set nocompatible を .vimrc に既述しましたが、症状は変わりません。
そもそも .vimrc が存在する時点で、デフォルトで nocompatible on のはずです。
仮想端末の方が悪いのかと、数種類試してみましたが、どの場合も同じ症状です。
vim のコンパイルオプションが関係しているのかと、vim --version で確認しましたが、
vi互換性やキーコードに関係していそうなオプションは見あたりませんでした。
もともと、矢印キーなどへ伸びる手を矯正しようと Nop に設定したので、
意図しない挙動であっても実質的には問題ないのですが、
やはり理由、原因は気になります。
vi互換性を切っても出るこの症状は何が原因なのでしょうか。
657629
2017/12/04(月) 23:05:49.96ID:kqi5W/Ks0 話がそれますが
Git for Windows も 260 を超えるパスは扱えませんでした
cygwin の git は扱えました
Git for Windows も 260 を超えるパスは扱えませんでした
cygwin の git は扱えました
2017/12/05(火) 20:30:18.38ID:CrEtjTSR0
新しいNightly入れたがDirectWrite爆速やん
Windows10になって以来GDIではフレーム落ちが鬱陶しかったが
DWではそれが無い分、快適に感じるわ
Windows10になって以来GDIではフレーム落ちが鬱陶しかったが
DWではそれが無い分、快適に感じるわ
2017/12/07(木) 07:09:54.28ID:ZA7Y63230
2つのウィンドウへ開いていて、どちらにも行番号が表示されている状態です。
このとき、片方のウィンドウで :setlocal nonumber とすると、
そのウィンドウの行番号だけが非表示になります。
しかし、:setlocal ninumber ではなく :set nonumber としても
そのウィンドウの行番号だけが非表示になります。
number だけでなく、他のものでも同様です。
例えば wrap でも :set と :setlocal が同じ結果になります。
:set と :setlocal の違いは何でしょうか?
このとき、片方のウィンドウで :setlocal nonumber とすると、
そのウィンドウの行番号だけが非表示になります。
しかし、:setlocal ninumber ではなく :set nonumber としても
そのウィンドウの行番号だけが非表示になります。
number だけでなく、他のものでも同様です。
例えば wrap でも :set と :setlocal が同じ結果になります。
:set と :setlocal の違いは何でしょうか?
2017/12/07(木) 07:25:04.93ID:yNUrvwIy0
その後 :new すると、、
:h local-options
:h local-options
2017/12/08(金) 04:26:24.13ID:BM6nYy010
Laguage server protocol との連携は進んでいますか?
2017/12/08(金) 07:14:52.21ID:ef/e0eR+0
>>660
ありがとうございます。
要するに、:set がすぐさま反映させるのはカレントに対してだけなのですね。
だからぱっと見では :setlocal との違いが分からなかった。
しかし両者の違いは新しくウィンドウやバッファを作った時に現れる。
なぜなら、それらは先ずはグローバルオプションで初期化されるから。
おかげさまで理解できました。
ありがとうございます。
要するに、:set がすぐさま反映させるのはカレントに対してだけなのですね。
だからぱっと見では :setlocal との違いが分からなかった。
しかし両者の違いは新しくウィンドウやバッファを作った時に現れる。
なぜなら、それらは先ずはグローバルオプションで初期化されるから。
おかげさまで理解できました。
2017/12/11(月) 12:13:19.39ID:VvrireRi0
windows10でgvimにdein.vimを導入してプラグインの管理をしようと考えています。
readmeと個人ブログの記事を参考にgithubのリポジトリからcloneし、_gvimrcにもあれこれ書きました。
call dein#install() を実行し、インストールが完了しました。
この時点で各プラグインの機能が使用できるようになりました。
しかし一度gvimを再起動するとそれらが使えなくなっていました。
あれこれ試した結果、call dein#update()を実行すれば使用できるようになることがわかりました。
試しにgvimrcにcall dein#update()を記述し、起動時にアップデートをかけるようにしてみましたが、思った通りにはなりませんでした。
起動直後からプラグインを使用できる状態にすることはできないものでしょうか?
できるなら、どうしたら良いでしょうか
readmeと個人ブログの記事を参考にgithubのリポジトリからcloneし、_gvimrcにもあれこれ書きました。
call dein#install() を実行し、インストールが完了しました。
この時点で各プラグインの機能が使用できるようになりました。
しかし一度gvimを再起動するとそれらが使えなくなっていました。
あれこれ試した結果、call dein#update()を実行すれば使用できるようになることがわかりました。
試しにgvimrcにcall dein#update()を記述し、起動時にアップデートをかけるようにしてみましたが、思った通りにはなりませんでした。
起動直後からプラグインを使用できる状態にすることはできないものでしょうか?
できるなら、どうしたら良いでしょうか
2017/12/13(水) 07:28:34.81ID:M3CDaS1D0
自己解決できました。
失礼しました。
失礼しました。
2017/12/14(木) 00:26:09.78ID:z825bZ+o0
>>665
なんでここにわざわざ書くと良い技術者になれるのでしょうか?
なんでここにわざわざ書くと良い技術者になれるのでしょうか?
2017/12/14(木) 07:56:59.46ID:8QJHZ5QJ0
2017/12/17(日) 09:57:19.09ID:1RCZlm9a0
Laguage server protocol との連携は進んでいないのですか?
2017/12/17(日) 20:03:29.13ID:efLSqkG90
>>664
死ねゴミクズ
死ねゴミクズ
2017/12/27(水) 20:19:06.27ID:pBtN5/XN0
「:view ファイルパス」とすればリードオンリーモードでそのファイルを開きますが、
バッファの内容を編集することはできます。
これをバッファの内容すら編集できなくする方法はありますか?
つまり閲覧やヤンクへのコピーなど、非破壊の操作しかできないようにしたいです。
バッファの内容を編集することはできます。
これをバッファの内容すら編集できなくする方法はありますか?
つまり閲覧やヤンクへのコピーなど、非破壊の操作しかできないようにしたいです。
2017/12/27(水) 21:26:56.05ID:TcBusAuT0
:h -M
2017/12/28(木) 07:09:25.60ID:oqwufRP80
2018/01/03(水) 20:31:44.35ID:Y9AqElVY0
:behave mswin
とすると結構普通のエディタのように使えるね
Windows10 vim 8.0 gVimで試した限りだが、
ノーマルモード、インサートモード問わず、Shift+矢印キーで文字列選択や
Ctrl+Ins、Shift+Insでコビー貼り付けができる
ただし、Ctrl+C、Shift+Vはできなかった
貼り付けもインサートモードで何も選択していない状態だと問題ないが
何か選択した状態だと思わぬ所に貼り付けされてしまう
ノーマルモードだと何も選択していなくても同様の事象
でも使えそうだ
とすると結構普通のエディタのように使えるね
Windows10 vim 8.0 gVimで試した限りだが、
ノーマルモード、インサートモード問わず、Shift+矢印キーで文字列選択や
Ctrl+Ins、Shift+Insでコビー貼り付けができる
ただし、Ctrl+C、Shift+Vはできなかった
貼り付けもインサートモードで何も選択していない状態だと問題ないが
何か選択した状態だと思わぬ所に貼り付けされてしまう
ノーマルモードだと何も選択していなくても同様の事象
でも使えそうだ
2018/01/04(木) 02:56:37.99ID:T6dCv24/0
>>673
VimがVimのキーアサインでない時点で使えないと思うのだが
VimがVimのキーアサインでない時点で使えないと思うのだが
2018/01/04(木) 10:44:41.45ID:Vk7cVsk+0
>>673
Creamは?Vim使う意味なくなるけどね。
Creamは?Vim使う意味なくなるけどね。
2018/01/05(金) 02:10:38.38ID:lKmv/k980
source $VIMRUNTIME/mswin.vim
も入れたら、Ctrl+C, Ctrl+Vも使えたよ。貼り付けも問題なかった
これなら使いやすいし、ノーマルモードもあるからVimらしさもあるね
gVim Easyはインサートモードしかないようだが
Creamはノーマルモードも使えるみたいだね
でもノーマルだと選択の開始はShit+矢印キーではなくなるのかな
ちょっと試してみよう
も入れたら、Ctrl+C, Ctrl+Vも使えたよ。貼り付けも問題なかった
これなら使いやすいし、ノーマルモードもあるからVimらしさもあるね
gVim Easyはインサートモードしかないようだが
Creamはノーマルモードも使えるみたいだね
でもノーマルだと選択の開始はShit+矢印キーではなくなるのかな
ちょっと試してみよう
677629
2018/01/13(土) 02:59:18.20ID:2ghyYC0g0 gx でURL を開くとき、?以降のパラメータが含まれないようです
?以降のパラメータを含めるような設定はありますか?
?以降のパラメータを含めるような設定はありますか?
2018/01/14(日) 20:20:15.18ID:j8cFEhBB0
netrwの話?
:set isfname+=63 "( '?' の10進表記 = 63)
でもグローバルなんだなこのオプション
viWgx とでもして開くほうがいいかもしらん
:set isfname+=63 "( '?' の10進表記 = 63)
でもグローバルなんだなこのオプション
viWgx とでもして開くほうがいいかもしらん
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 にプラグインを置けば、そのドキュメントも利用できたのですが。
標準搭載のパッケージ管理ではドキュメントまでは面倒を見てくれないのでしょうか。
.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 にプラグインを置けば、そのドキュメントも利用できたのですが。
標準搭載のパッケージ管理ではドキュメントまでは面倒を見てくれないのでしょうか。
2018/02/05(月) 00:08:13.90ID:XvjhK2Ri0
:helptags /path/to/surround.txt やったらいけるとか?
2018/02/05(月) 11:28:34.02ID:mk5FwJkP0
Vim スクリプトできたのって1998年なのか
2018/02/06(火) 08:06:00.46ID:3hgvlDCi0
久々にいいオプションを見つけた
set isfname-==
'=' をファイル名の一部として認識させない
これによって設定ファイルの中の
option=/path/to/file
のような局面で <C-x><C-f> 補完を使っていける
set isfname-==
'=' をファイル名の一部として認識させない
これによって設定ファイルの中の
option=/path/to/file
のような局面で <C-x><C-f> 補完を使っていける
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
も含まれてるのですが...
:helptags .vim/pack/pack1/start/vim-surround
としてみましたが、ダメでした。
(surround.txt を引数に入れると、ディレクトリではないと怒られるので )
:set runtimeoath? とすると、そこには
.vim/pack/pack1/start/vim-surround
も含まれてるのですが...
2018/02/06(火) 21:48:13.19ID:+AgQ6OlP0
raspbianにインストールされている標準のvimを使うとC言語など拡張子に合わせてインデントや色分けするので便利でした。
Ubuntuでも同じようにしたいのですが、個別に機能をインスールのではなく補完機能を込み込みにしたvimのパッケージなどってあるんでしょうか?
あとRaspbianのvimはそれ用にカスタマイズされたものなんでしょうか?
Ubuntuでも同じようにしたいのですが、個別に機能をインスールのではなく補完機能を込み込みにしたvimのパッケージなどってあるんでしょうか?
あとRaspbianのvimはそれ用にカスタマイズされたものなんでしょうか?
2018/02/06(火) 22:26:56.02ID:3aQKGlB00
>>684
色んなプラグインとか設定とかが元々入ってる Vim のディストリはいくつかあるよ
spf13, Janus, SpaceVim あたりが有名どころだろうか
イチから自分で探すの面倒ならこういうのもアリなのかもしらん
色んなプラグインとか設定とかが元々入ってる Vim のディストリはいくつかあるよ
spf13, Janus, SpaceVim あたりが有名どころだろうか
イチから自分で探すの面倒ならこういうのもアリなのかもしらん
2018/02/07(水) 02:02:47.73ID:d3pHNNkU0
2018/02/07(水) 05:05:49.75ID:3woY5VBb0
Cのシンタックスハイライトやインデントくらいなら公式のVimに付いてくるはず
UbuntuにデフォルトインストールされているVimはtiny版だと思うから、huge版をインストールし直してやればいい。正確なパッケージ名までは知らんが公式リポにあるはず
UbuntuにデフォルトインストールされているVimはtiny版だと思うから、huge版をインストールし直してやればいい。正確なパッケージ名までは知らんが公式リポにあるはず
2018/02/07(水) 19:09:22.81ID:rav/W75F0
Ubuntu使っているならvim-gtk3を入れとけばいいんじゃないかと思う
689名無しさん@お腹いっぱい。
2018/02/07(水) 22:13:21.41ID:v2CcfQmh0 >>682
早速設定したいいね
早速設定したいいね
2018/02/07(水) 23:40:18.65ID:d3pHNNkU0
gtk3(huge)を入れたんだけど自動インデントされません。
tiny消したりしても変化なし、ハイライトはされてます。
tiny消したりしても変化なし、ハイライトはされてます。
2018/02/08(木) 03:50:31.20ID:z0rRyRu/0
2018/02/08(木) 04:12:40.57ID:eZTWGbQ80
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国側が首相答弁の撤回要求、日本側拒否 [夜のけいちゃん★]
- 中国の局長は「両手をポケット」で対峙 宣伝戦で国民に示す ★3 [蚤の市★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 債券・円・株「トリプル安」に…長期金利1.755%まで上昇、円は対ユーロで史上最安値 [蚤の市★]
- 映画「鬼滅の刃」の興行収入急減、日本行き航空券大量キャンセル…中国メディア報道 [蚤の市★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 日本政府、ネトウヨに媚びるために韓国との関係も悪化させてしまう [603416639]
- 【悲報】SP500今日も暴落で完全に世界恐慌。高市恐慌として全世界で語り継がれそう [686538148]
- 【悲報】高市効果で「1ドル=160円」が相場へwwwwwwwwwwwwwwwwwwwwwwwwwwwww 止まらぬ高市円安💥💥 [871926377]
- 【悲報】日本人錯乱「集団的自衛権行使に賛成。けど自衛隊を戦わせるのは反対」 [237216734]
- 自閉症が「んなっしょい」と連呼するお🏡
- FGOで好きなサーヴァントがアビゲイル、北斎、楊貴妃なんだが
