主に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/07/15(土) 22:13:44.91ID:psGrxCEI0
2017/07/24(月) 13:12:17.55ID:KR9jNO/A0
Vim で端末機能が動くようになった。https://mattn.kaoriya.net/software/vim/20170724011404.htm
554名無しさん@お腹いっぱい。
2017/07/24(月) 21:43:17.42ID:NWRLG6OS0 いーらないw
2017/07/24(月) 21:45:50.73ID:8/nT5S970
そうなると何が嬉しいの?
2017/07/24(月) 21:50:36.45ID:ThXMFjbk0
Emacsに勝つために
2017/07/24(月) 22:37:34.67ID:ia4KQpgh0
訳のわからんプラグインが減る
2017/07/27(木) 21:36:04.13ID:BH8cTlN30
どうしようも無いことだけど、ウィンドウ関係のverticalの概念になかなか慣れない。
:vert split とか :vertical resize +5 とか。
これ、ウィンドウが並ぶ方向じゃなくて、境界線の方向なんだよね。
:vert split とか :vertical resize +5 とか。
これ、ウィンドウが並ぶ方向じゃなくて、境界線の方向なんだよね。
2017/07/28(金) 02:20:23.95ID:wKT4wg4K0
刃物でぶった斬るイメージで唱えて
2017/07/28(金) 03:07:26.36ID:PotsMINk0
天頂裂断《ヴァーティカル・スプリット》
2017/07/28(金) 05:55:14.85ID:rJgmZEk30
:terminal
2017/07/28(金) 09:07:56.24ID:oZBJkmUM0
tmuxとvimではスプリットの方向が違うのよね
vimに慣れてると、tmuxのスプリットの方が気持ち悪く感じる(´・ω・`)
vimに慣れてると、tmuxのスプリットの方が気持ち悪く感じる(´・ω・`)
2017/07/29(土) 21:40:27.04ID:41jnZkkG0
DirectWrite有効時に描画が重いのって画面更新しきらない内に垂直同期待ちしてるからなんじゃね?
無効時の軽さはフレームスキップしてる分のように見える
無効時の軽さはフレームスキップしてる分のように見える
2017/08/01(火) 15:23:18.50ID:9bAmpScg0
俺達は日常的に1/60秒を超える操作を繰り返していた…のか…?
2017/08/02(水) 05:51:26.51ID:/ESOm91P0
瞬速打鍵《ヴァーティカル・シンク・スプリント》の使い手であったか
2017/08/02(水) 23:15:30.89ID:AN/nKZA20
NodeJSを主に書いているんですが他のファイルを呼び出すパスを書く時に、相対パスを予測変換で表示してくれるプラグインないですか。
2017/08/03(木) 07:19:41.96ID:6bw6edB+0
2017/08/03(木) 08:18:50.31ID:3PohL9bt0
禿げは今関係ないだろ!
2017/08/03(木) 16:22:38.37ID:c8Tc4iwZ0
高知県四万十市の地名・半家の可能性に賭けろ
570名無しさん@お腹いっぱい。
2017/08/13(日) 12:19:33.93ID:PqGSx6uE0 terminalが使えるVimってどこでダウンロードできますか
2017/08/13(日) 12:39:32.92ID:x0zQvx4E0
git
2017/08/13(日) 13:06:16.43ID:kH8yYg6c0
現時点ではコンパイル時に有効にしないとターミナルは使えない
使いたいなら自分でビルドするしかない
使いたいなら自分でビルドするしかない
2017/08/13(日) 21:35:07.02ID:tWHkVCZb0
めんどくさ
2017/08/22(火) 21:49:47.40ID:YAxqLv5N0
ビジュアルモードでのキーストローク a( による括弧の選択について質問です。
ビジュアルモード時、下記の3行のテキストのそれぞれ行頭にカーソルがある状態で
a( をストロークすると、3行目で行った場合のみ結果が他の場合と違います。
(())
(a())
(\())
1行目と2行目では、どちらも外側の括弧とその内部を選択します。
しかし3行目では、最初の開き括弧から1つ目の閉じ括弧までが選択されます。
バックスラッシュが影響しているように思えるのですが、これは仕様でしょうか。
3行目でも他と同じように外側の括弧を選択するにはどうすれば良いでしょうか。
ちなみに、3行目の行頭にカーソルがある時、その括弧に対応する閉じ括弧、
つまり2つ目の閉じ括弧が一時的にハイライトされます (もちろん1つ目の開き括弧も)。
これは望んだ通りの挙動です。
しかし、そこで % をストロークすると、1つ目の閉じ括弧にジャンプします。
これは a( の挙動と同様です。
またこれらの望まない挙動は丸括弧に限りません。
% でジャンプできるペア全てに当てはまります。
ビジュアルモード時、下記の3行のテキストのそれぞれ行頭にカーソルがある状態で
a( をストロークすると、3行目で行った場合のみ結果が他の場合と違います。
(())
(a())
(\())
1行目と2行目では、どちらも外側の括弧とその内部を選択します。
しかし3行目では、最初の開き括弧から1つ目の閉じ括弧までが選択されます。
バックスラッシュが影響しているように思えるのですが、これは仕様でしょうか。
3行目でも他と同じように外側の括弧を選択するにはどうすれば良いでしょうか。
ちなみに、3行目の行頭にカーソルがある時、その括弧に対応する閉じ括弧、
つまり2つ目の閉じ括弧が一時的にハイライトされます (もちろん1つ目の開き括弧も)。
これは望んだ通りの挙動です。
しかし、そこで % をストロークすると、1つ目の閉じ括弧にジャンプします。
これは a( の挙動と同様です。
またこれらの望まない挙動は丸括弧に限りません。
% でジャンプできるペア全てに当てはまります。
575名無しさん@お腹いっぱい。
2017/08/22(火) 23:10:08.20ID:/8ECgwOr0 >ビジュアルモード時、下記の3行のテキストのそれぞれ行頭にカーソルがある状態で
ビジュアルモードで矩形選択してる状態?
aじゃなくてAを押さないと編集できないよ
ビジュアルモードで矩形選択してる状態?
aじゃなくてAを押さないと編集できないよ
576名無しさん@お腹いっぱい。
2017/08/22(火) 23:17:28.40ID:/8ECgwOr0 つうか仕様かどうかを2ちゃんで聞いてる時点で(ry
githubのメイン垢で聞くのが恥ずかしいなら捨て垢でも取得してgithub.com/vim-jp/issues/issuesで聞いてきなよ
githubのメイン垢で聞くのが恥ずかしいなら捨て垢でも取得してgithub.com/vim-jp/issues/issuesで聞いてきなよ
577名無しさん@お腹いっぱい。
2017/08/22(火) 23:26:13.09ID:/8ECgwOr0 syntaxのほうは再現できないけど%の方は再現したから報告してきてね
ここで書き込んでも誰も作業しないよ
ここで書き込んでも誰も作業しないよ
2017/08/23(水) 00:01:06.06ID:HbPzOOof0
>>575
言い方が悪かったです。
1行目の行頭にカーソルを移してビジュアルモードに入り a( をストロークします。
次に、一旦ビジュアルモードを抜けてから今度は2行目の行頭にカーソルを移し、
もう一度ビジュアルモードに入って a( をストロークします。
3行目でも2行目と同様の事を行います。
この時、3行目で行った結果が1行目や2行目で行った結果と違う、という話です。
言い方が悪かったです。
1行目の行頭にカーソルを移してビジュアルモードに入り a( をストロークします。
次に、一旦ビジュアルモードを抜けてから今度は2行目の行頭にカーソルを移し、
もう一度ビジュアルモードに入って a( をストロークします。
3行目でも2行目と同様の事を行います。
この時、3行目で行った結果が1行目や2行目で行った結果と違う、という話です。
579名無しさん@お腹いっぱい。
2017/08/23(水) 00:07:43.61ID:p+wGVSmH0 >1行目の行頭にカーソルを移してビジュアルモードに入り a( をストロークします。
↑の時点でインサートモードにいるのに
↓ではビジュアルモードに入ってたことになる
>次に、一旦ビジュアルモードを抜けてから今度は2行目の行頭にカーソルを移し、
丁寧に説明してください
と言うかここで説明しても僕は作業はしませんよ
↑の時点でインサートモードにいるのに
↓ではビジュアルモードに入ってたことになる
>次に、一旦ビジュアルモードを抜けてから今度は2行目の行頭にカーソルを移し、
丁寧に説明してください
と言うかここで説明しても僕は作業はしませんよ
580名無しさん@お腹いっぱい。
2017/08/23(水) 00:08:44.04ID:p+wGVSmH0 バグの可能性があるならちゃんとvim-jpで報告してください
英語が出来るならvim_useで質問してもいいでしょう
英語が出来るならvim_useで質問してもいいでしょう
581名無しさん@お腹いっぱい。
2017/08/23(水) 00:18:36.31ID:p+wGVSmH0 ああごめんごめんインサートモードは関係なかったわ
酔ってて眠いし頭が回らないわ
酔ってて眠いし頭が回らないわ
2017/08/23(水) 13:48:52.82ID:Am8whGXo0
>>580
分かりました。
分かりました。
2017/08/24(木) 07:44:55.33ID:ozepJtGY0
カーソル位置はそのままで、指定した行番号の行を削除したいです。
たとえば、5行目にいながら20行目を削除する、などです。
:20d は使えません。
なぜなら、削除と同時にカーソルが移動してしまうからです。
(当然、カーソルより前の行を消した結果カーソル位置が1行上に移動するのはOKです)
プラグインを使わずに、デフォルトの機能だけで可能でしょうか。
たとえば、5行目にいながら20行目を削除する、などです。
:20d は使えません。
なぜなら、削除と同時にカーソルが移動してしまうからです。
(当然、カーソルより前の行を消した結果カーソル位置が1行上に移動するのはOKです)
プラグインを使わずに、デフォルトの機能だけで可能でしょうか。
2017/08/24(木) 08:36:29.25ID:DkQEIMAn0
>>583
そのあとC-oじゃ駄目なの?
そのあとC-oじゃ駄目なの?
2017/08/24(木) 10:38:03.45ID:ozepJtGY0
2017/08/24(木) 14:19:20.19ID:mj+Ngkxe0
>>585
C-oとC-i便利よ。後g;
C-oとC-i便利よ。後g;
587名無しさん@お腹いっぱい。
2017/08/28(月) 06:15:07.03ID:u5OnoTLa0 sudoで起動したときに設定を反映させる方法を教えてください。
2017/08/28(月) 06:45:49.71ID:sySKr/iK0
2017/08/29(火) 20:44:34.25ID:SqsQltVx0
>>587
自ユーザで使ってる .vimrc などを /root にもコピーすれば?
自ユーザで使ってる .vimrc などを /root にもコピーすれば?
2017/09/02(土) 21:09:55.29ID:8bAG7ppU0
書籍 Pro Vim に次のようなコマンドが紹介されていました。
(正確には違いますが、質問の本質に無関係な部分は省略、改変しています)
:let c=0 | g/^/let c=c+1 | s/^/\=c/
各行の頭に1から順に番号を挿入するものです。
これは3つの同格なコマンド let、g、s がパイプで繋がっているのではなく、
1つ目のパイプで let と g が繋がっており、2つ目のパイプで繋がった let と s が、
g が実行する一塊のコマンドを構成している、 という認識でよろしいでしょうか。
(正確には違いますが、質問の本質に無関係な部分は省略、改変しています)
:let c=0 | g/^/let c=c+1 | s/^/\=c/
各行の頭に1から順に番号を挿入するものです。
これは3つの同格なコマンド let、g、s がパイプで繋がっているのではなく、
1つ目のパイプで let と g が繋がっており、2つ目のパイプで繋がった let と s が、
g が実行する一塊のコマンドを構成している、 という認識でよろしいでしょうか。
2017/09/02(土) 21:25:16.10ID:wsrUjl/f0
いや、|を区切りに順番に実行してるだけ
2017/09/02(土) 21:39:42.36ID:wsrUjl/f0
…じゃなかった、二つ目の|は :g のコマンド部に含まれることになる(ので、一行ごとに let c=c+1 | s/^/\=c が実行される)
だから多分おっしゃってる通りです
言いたかったのは、シェルでいうパイプみたいな入出力機能は無いよってこと
だから多分おっしゃってる通りです
言いたかったのは、シェルでいうパイプみたいな入出力機能は無いよってこと
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
フットペダルの出番ですね!?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国の局長は「両手をポケット」で対峙 宣伝戦で国民に示す ★3 [蚤の市★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 中国側が首相答弁の撤回要求、日本側拒否 [夜のけいちゃん★]
- 映画「鬼滅の刃」の興行収入急減、日本行き航空券大量キャンセル…中国メディア報道 [蚤の市★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 「タワマン天国」に飛びつく若者…SNSに転がる「成功体験」に続けるのか 湾岸エリアの業者が語った現実 [蚤の市★]
- 【悲報】おこめ券、9.5億円配布分のうち2.4億が経費、うちJAが1億円中抜き🤗高市ありがとう [359965264]
- AV女優さん「時間停止物」のAVを完全否定してネット騒然。お前らの夢が1つ潰える [152212454]
- 【悲報】高市有事で日本に同調する国、1つも現れないwwwwwwwwwwwwwww [603416639]
- 自閉症が「んなっしょい」と連呼するお🏡
- ブラックフライデーでダークソウル買って初プレイしてみようかなと思うけどどうかな
- 【雑談】暇人集会所part19
