前/次の行の最後の空白以外の文字に移動しますか?


10

前/次の行の最初の空白以外の文字に移動するための-および<C-M>ノーマルモードキーが好きです。

前/次の行の最後の空白以外の文字に移動するための対応するキーはありますか?

回答:


13

g_カーソルを現在の行の最後の空白以外の文字に移動します。Vimから:help g_

g_          To the last non-blank character of the line and
            [count - 1] lines downward |inclusive|. {not in Vi}

残念ながら、前/次の行の空白以外の文字に移動する必要がある唯一のオプションはkg_jg_それぞれ、またはカウントを使用して下に移動することです。

ただし、簡単なものにマッピングするのは簡単です。

nnoremap <F3> kg_
nnoremap <F4> jg_

1
また2g_、次の行の最後の空白以外の文字に移動する場合にも機能することに注意してください。ただし、これは前の行では使用できません。の利点2g_は、次のように繰り返すことができるということです.
EvergreenTree

1
のような動作g_は、では再現できません.。一般に、バッファの状態を変更するものだけを繰り返すことができます。
tommcdo 2015年

ただし、演​​算子と組み合わせると繰り返しが機能します。多分それはあなたが言っていたものです
tommcdo '17年

ああ、モーションが再現できないことに気づきませんでした。私は物事を言う前にドキュメントを見る必要があります。
EvergreenTree

0

前/次の行の次の非空白文字を意味する場合(垂直に行くことによって)、次に試してください:

map <C-k> :call search('\%' . virtcol('.') . 'v\S', 'bW')<CR>
map <C-j> :call search('\%' . virtcol('.') . 'v\S', 'wW')<CR>
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.