1行移動
2行以上ジャンプする必要がある場合、
j
または
k
キーを使用して1行に沿って移動するのは非効率的です。 Vimで垂直に移動するには多くの方法があります 。 最も便利なのは、段落ジャンプと画面ジャンプです。 それは、あなたがどれだけ遠く、どのくらい正確に動く必要があるかに依存します。
-
{
-前の段落またはコードブロックの先頭に移動します。
-
}
-次の段落またはコードブロックの最後に移動します。
-
Ctrl+F
-1画面先に進みます。
-
Ctrl+B
-1画面戻ります。
どこに行く必要があるかが正確にわかっている場合は、検索でナビゲーションを使用できます:
/
で前方に検索し、戻る-
?
。
前の場所に戻ることも常に役立ちます。2つの引用符または
gi
を使用すると、テキストを入力した最後の場所に戻ることができます。 必要に応じて、
g;
を使用してテキストが入力されたすべての場所間を移動することもでき
g;
および
g,
単一文字の動き
同様に、
t
キーと
f
キーがある場合、
h
キーと
l
キーを使用して一度に1文字ずつ移動することは、多くの場合時間の無駄です。
-
t<char>
-次の文字が表示されるまで前方に移動します。
-
f<char>
-次の文字が現れるまで前方に移動します。
-
T<char>
-前に出現した文字に戻ります。
-
F<char>
-前に出現した文字を後方に移動します。
キー
w
、
W
、
b
、
B
、
e
および
E
使用して単語を移動することも適切です。 ここでは検索ナビゲーションが便利です。 テキストをコピー、削除、および検索結果の前後に変更できることを忘れないでください。
y/search<Enter>
y?search<Enter>
d/search<Enter>
d?search<Enter>
c/search<Enter>
c?search<Enter>
カーソルの下の単語を検索する
入力やコピー/貼り付けを煩わせずに、
*
または
#
押してください。 これらのホットキーをマスターすると、作業がどれほど速くなるかは驚くべきことです。
削除して貼り付け
挿入モードに移行してテキストを置き換えるためにテキストを削除する必要はありません。
d2wi
c
キーをより速く、より正確に使用し
c
。
c2w
そのため、操作全体がドット(
.
)で繰り返し可能になります。
矢印キーを使用する
Vimでは、矢印キーを使用して通常モードと挿入モードで移動できますが、ナビゲーションに
hjkl
を使用することに慣れている場合は、Vimセッション全体で指がキーボードの中央にあるため、矢印は既に少し不器用に見えますタッチタイピング。 HomeキーとEndキーは似ています。ほとんどのエディターと同様に機能しますが、
^
と
$
同等物
$
近い場合に使用する特別な理由はありません。
したがって、矢印キーを少なくとも一時的に無効にして離すことをお勧めします。
noremap <Up> <nop>
noremap <Down> <nop>
noremap <Left> <nop>
noremap <Right> <nop>
中央キーを使用したブラインドタイピングは、速度を向上させるだけでなく、手首をキーボードの前に置いて移動しすぎないため、気分が良くなり、一部の人がトンネル症候群から身を守るのに役立ちます 。
挿入モードで移動する
中心線でのブラインドタイピングのもう1つの利点は、挿入モードで移動する習慣を取り除くことです。これには通常モードが設計されています。 どこかに移動する必要があるとすぐに、通常モードに切り替え、より効率的に移動します。 また、貼り付け操作をよりアトミックにし、したがって繰り返しに便利になります。
Escを押す
現代のキーボードのエスケープキーは、ビルジョイがviを設計したときのキーボードよりも中央列からはるかに離れています。 通常、Escキーを
Ctrl+[
必要はありません
Ctrl+[
ずっと近く、より便利に、習慣をかなりすばやく変更できます。 オプションとして、Escのオペレーティングシステムでのマッチングを、かなり役に立たないCaps Lockキー、または
jj
などの異常な組み合わせと見なすことができます。 これは少し過激な提案ですが、多くの人にとってうまく機能します。
inoremap jj <Esc>
行の先頭または末尾に移動してから、挿入します
I
と
A
使用します
A
さらに、同じ操作が必要になる可能性のある他の行に対してアクションを繰り返し可能にします。
挿入モードに入り、新しい行を作成します
o
および
O
を使用して、新しい行をそれぞれ下側と上側に作成し、同時に挿入モードに入ります。
挿入モードに入り、テキストを削除します
これはかなり明白な矛盾です。 代わりに、テキストに移動し、適切なモーションまたはテキストオブジェクトで
d
を使用して、テキストを削除します。 繰り返しますが、このアクションは繰り返し可能であり、バックスペースを保持していないことを意味します。 一般に、Vimでキーを押し続けると、おそらくより高速な方法があります。
コマンドまたは検索を繰り返す
コマンドの場合は
@:
、検索の場合はn / Nと入力するだけです。 Vimは最後の検索を忘れません。 これが最後のコマンドまたは検索ではなかったが、間違いなく履歴にある場合は、
q:
または
q/
入力して、リストで見つけてEnterを押します。
代替品
最後の置換の現在の行で繰り返すには
&
を入力します。
g&
入力して、すべての行でそれを繰り返すことができます。
マクロリコール
@@
と入力するだけです。
実際、これらは、プラグインをインストールしたり、キーを大幅に再割り当てしたりせずに、エディターでの作業の速度と全体的な効率を高める一般的な方法のほんの一部です。 Vimのヒントについてはwikiも参照してください。他にも非常に便利な例がいくつかあります。