初心者向け覚えておくと便利なvimコマンド

Web技術
スポンサーリンク

Linux初心者で基本的な操作はできるようになったけどもっと便利に使いたいという方向けに知っておくとより便利に効率よく操作できるvimコマンドを紹介します。

ここで紹介するコマンドが使いこなせるように慣れば脱初心者といってもいいと思います。

vimの操作が初めての方はこちらの記事からご覧ください。

便利なカーソル移動

素早くカーソルを移動するためのコマンドがたくさん用意されています。

これらを覚えれば目的地に最短で到達できますので効率よく作業できます。

単語単位でのカーソル移動

コマンド内容
w前方に単語1つぶん移動する
b後方に単語1つ分移動する
Wスペース区切りで前方に単語1つぶん移動する
Bスペース区切りで後方に単語1つぶん移動する
単語単位のカーソル移動コマンド

行頭/行末への移動

コマンド内容
0行頭に移動する
$行末に移動する
行頭/行末へのカーソル移動コマンド

指定する行への移動

コマンド内容
gg1行目に移動する
G最後の行に移動する
<数字>G<数字>行目に移動する
行指定でのカーソル移動コマンド

カット、コピー、ペースト

一般的なエディタではカット、コピー、ペーストと呼ばれる操作はvimでは呼び方が異なります。

一般的なエディタでの名称vimでの名称
カットデリート(delete)
コピーヤンク(yank)
ペーストプット(put)
vimでのカット、コピーペーストの名称

デリート(delete)

デリートするにはxもありますが、ここではdを紹介します。

dコマンドはどこまで削除するかを指定して使用します。

例えば、カーソル位置から行末まで削除したいということであればd$としますし、単語一つを削除したい場合はdwと指定します。

さまざまなデリート範囲の指定方法がありますので表にまとめます。

コマンド内容
d$行末までデリート
d0行頭までデリート
x, dl1文字をデリート
dw単語1つをデリート
ddカーソル位置の行をデリート
dgg最初の行までをデリート
dG最後の行までをデリート
さまざまなデリート例

ヤンク(yank)

削除するのではなく、コピーしたい場合はyを使います。

yもdと同じようにどこまでを対象範囲とするかを指定して使います。

コマンド内容
y$行末までヤンク
y0行頭までヤンク
yl1文字をヤンク
yw単語1つをヤンク
yyカーソル位置の行をヤンク
ygg最初の行までをヤンク
yG最後の行までをヤンク
さまざまなデリート例

プット(put)

dでデリートした文字列やyでヤンクした文字列は、プットするためのコマンドであるpを利用して貼り付けることができます。

例えば、ddでカーソル位置の一行を削除して貼り付けたい行までカーソルを移動し、pを利用して貼り付けすることができます。

元に戻す(アンドゥ)とやり直し(リドゥ)

誤って捜査してしまった場合に元に戻す方法があります。

例えば、dでデリートするつもりではなかった文字を削除してしまった場合などです。

直前の編集捜査を取り消して前の状態に戻るにはuを使います。

元に戻すことをアンドゥと言います。

アンドゥを取り消したい場合はCtrl + rでリドゥします。

検索と置換

検索

vimではテキストの文字列検索ができます。

文字を検索するには/を押します。

/を押すと最下行に/が表示されます。

/に続けて検索したい文字列を入力していきます。

例えば、「DocumentRoot」という文字列を検索したい場合は下記のように入力します

/DocumentRoot

/による検索は現在のカーソル位置より後に出てくる文字列から検索していきます。

検索結果が複数ある場合にはnを押すと次の検索結果に移動することができます。

逆に、前の検索結果に移動したい場合はNを入力します。

/の代わりに?で検索する方法もありますが、こちらはカーソルの上に検索をかけていきます。

コマンド内容
/<文字列>下方向に<文字列>を検索する
?<文字列>上方向に<文字列を検索する
n次の検索結果に移動する
N前の検索結果に移動する
vimの検索結果

置換

vimには文字列を置換する機能も備わっています。

ある文字列を別の文字列に置き換えたい場合は以下のように指定します。

%s/<置換元の文字列>/<置換後の文字列>/g

:を押すと再稼業にコマンド入力モードになります。

:に続いてこのコマンドを入力するとファイル中の全ての置換元文字列が<置換後の文字列>で指定した文字列に置き換わります。

初心者向け覚えておくと便利なvimコマンドまとめ

vimの便利なコマンドを紹介してきました。

ここで紹介したコマンドを覚えるだけでも十分効率よくvim操作ができるのではないでしょうか?

初めは覚えるのが大変かもしれませんが、その都度調べながら徐々に慣れていってください。

ちなみに僕はコーディングの勉強をVScodeなどを使わずにあえてvimを使うことで習得しました。

皆さんもぜひvimの操作を取得してください。

コメント

タイトルとURLをコピーしました