ツイート
シェア
LINEで送る
B! はてぶでブックマーク
Pocketでブックマーク
RSSフィード

Linux vim, 効率的にカーソルを移動する。コマンドモードで素早く動かす。

programing image

ボクは、viコマンドから数えると15年以上使っているのに、なぜかカーソル移動操作のショートカットキーを忘れてしまいます。

ということで、vimエディターのコマンドモードのいろいろなカーソル移動をまとめました。

これだけ使えれば、はたから見るとVimを使いこなしているように見えます。(そんなことないけど)

細かい移動

キー移動先
h左 1文字前
l右 1文字後
j下 次の行
k上 前の行

おそらく一番使うショートカットです。これだけですべてのカーソル移動ができますが、効率的かといえば疑問です。

これは、キーボードの基本操作の右手のホームポジションが関係しています。右手のホームポジションは、人差し指が『j』キーですよね?

右手がホームポジションにある状態で、人差し指・人差し指・中指・薬指でそれぞれ左(h)・下(j)・上(k)・右(l)へ移動させます。

『カーソルキーまで右手を手首ごと移動させなくてもいいでしょ?』ということらしいです。

行の移動

キー移動先
gg先頭行
G最終行
:0(ゼロ)先頭行
:$最終行

コマンドモードを使った指定行のジャンプ

Escキーを押して使うコマンドモードでも行ジャンプできます。

指定行へジャンプ

:(数字)

最終行へジャンプ

:$

gg, Gじゃなくても同じことができます。

最大効率を求めるならgg, Gを覚えたほうがよいですが、最小限の知識で操作したい場合は、:1, :$ を使ってもよいでしょう。

僕はコマンドモードを使うことが多いです。

単語単位の移動

キー移動先
w次の単語
b前の単語
^行の先頭テキスト

英文のときはシンプルです。単語ごとに半角スペースが入るので、その半角スペースの次の文字へジャンプします。

記号は半角スペースで区切られていなくても1単語です。

日本語のときはちょっと違って、単語ごとにスペースで区切ることはありません。漢字、ひらがな、カタカナの種類ごとに単語として認識します。

ですので、日本語でこのショートカットを使うと、助詞(て・に・は・を・や)も一単語になるので、ちょっとイラっとします。

『^』は、ソースコードなどインデントがあるテキストで、インデントを除いた先頭に移動します。

前の投稿
Linux vim, コピペのインデントのずれを直す。Vimエディタの設定。
Linux grep, 再帰的にファイル内を検索する。パターンマッチも使える。
次の投稿
コメントを残す

*