Vi/vimでカーソルを相対的な行数だけ移動する方法はありますか?削除するコードのブロックの下にカーソルが10行あるとします。相対的な順序で行番号が表示されている場合、「ジャンプ10行コマンド」を使用するとそこに移動できます。
または、絶対行番号を表示してxggに行く方が良いでしょう。xは行番号です。
はい、もちろん方法があります。 j
およびk
は1行上下に移動するため、10j
および10k
上下に10行移動します。あなたはそれの前に数字を置くことにより、任意の動きを繰り返すことができます。
set relativenumber
これがあなたが多くのことをする場合-絶対数の代わりに現在の行に相対的な行番号を印刷することでカウントを節約するのに役立ちます。
10行上下に移動すると、タスクや他のオプションに適さない場合があります。他の動きを考慮してください:
Ctrlf、 Ctrlb 前後のページ。
}、 { 1段落ずつ前後に移動します。
次の行をvimrcファイルに追加することにより、10j
をキーにバインドするルール、たとえばJ
を10行下に移動するルールを作成できます:map <S-j> 10j
ただし、既存の便利なJ
コマンドを上書きすることになります(2行を結合します)。 10j
/10k
の適切に配置された未使用のキーの組み合わせを見つけるのは難しいかもしれないので、私が言及した既存の動きを使用することをお勧めします。
?someword
を実行すると表示されるWordに戻り、/someword
を実行すると表示されるWordに移動できることも知りたい場合があります。これらは、10行上または下に移動してからカーソルを正確な位置に再配置するよりも高速です。問題の行の単純な検索文字列を考えることができない場合は、あなたが言ったようにいつでも行番号に行くことができます(xgg
)。
私はvimをいじっていたと気づいた - あなたを上に移動し、 + 下に移動するため、次のことができます。
10-
または使用できます k あなたはおそらく慣れているので hjkl カーソルの動き。