vimを学習するため、vimtutorをやってみたので学んだことを記載していきます。
vimの特徴はマウスを使わずにキーボード操作のみで内容を記述していくことです。
この文章はvscodeでvimを使って書いてみました。
vimには色々なコマンドがありますが多すぎて最初から全部覚えるのは不可能なので、ここではこの文章を書く際に使用したコマンドを順々に書いていこうと思います。
カーソルの移動
キーボードのH ,J ,K ,Lキーで行います。
Hキーは左に、Jキーは下に、Kキーは上に、Lキーは右に移動します。
矢印キーでも移動可能ですが、速い操作をするならキーボードのホームポジションに近いこれらのキーを使うのが良さそうでした。
文字の削除
xキーを押すとカーソルの位置の文字が削除されます。
また、dキーを2回押すとカーソルの行全体が削除されます。
行の追加
oキーを押すとカーソルの次の行に新しい行が追加されます。
また、
Oキーを押すとカーソルの前の行に新しい行が追加されます。
「ゼロ」ではなく、「大文字のオー」です。(shift+o)
文字の挿入
iキーを押すとカーソルの位置に文字を挿入できます。
また、
aキーを押すとカーソルの次の位置に文字を挿入できます。
例えば、
ありがとうござます。という文章があるとして、
ありがとうございます。という文章に直したい場合は、
「ま」にカーソルを合わせてiを押すか、「ざ」にカーソルを合わせてaを押すといった操作で修正できるようになります。
モードについて
この文字の挿入ができる状態のことをインサートモードといって、この状態になっていないと文字の挿入ができません。
そのためには、iかaを押してモードを切り替える必要があるということになります。
ちなみに何もしていない状態をノーマルモードといいます。
escキーを押すことでどのようなモードからでも、ノーマルモードに戻ることができます。
この状態だと文字の入力ができないので、上に書いたH,J,K,Lキーでカーソルの移動ができるようになります。
(インサートモードでH ,J ,K ,Lキーを押すと文字が入力されてしまう。移動はできない。)
コピーとペースト
yyというように、yキーを2回押すとカーソルの位置の行がコピーされます。
(vimではコピーのことをヤンクというので、yキーでヤンクというのは覚えやすいと思いました)
pキーを押すとカーソルの位置にコピーした行がペーストされます。
この文章を書いている時は全然使わなかったですけど、実際にコードなどを書くときは使うことが多くなるかと思います。
やり直し
uキーを押すと一つ前の操作を取り消すことができます。
間違って削除した際などにuキーを押すことでやり直すことができます。
ファイルの保存
:を押すとコマンドモードになります。
続けて、wqと入力するとファイルを保存して終了することができます。
(wはwriteのwで保存、qはquitのqで終了を意味しています。)
検索
/を押すと検索モードになります。
検索したい文字列を入力すると、その文字列が見つかります。
nキーを押すと次の検索結果に移動します。
まとめ
vimtutorをやってみることで基本的な操作を一通りやってみることができました。
この文章を書き始めた時点では、文字の入力をしたいのにノーマルモードのままだったり、カーソルを移動したいのにインサートモードだったりと苦戦しましたが、ここまで書いてると結構慣れてきて少しは楽しいと感じられるようになりました。
基本操作は他にもありますが、本記事では使用したコマンドを中心に書きました。
vimを使いこなすためには、実際に使ってみることが一番だと思うので、まずはvimtutorをやってみることをおすすめします。
vimtutorはターミナルを起動してvimtutorと入力して実行することで始めることができます。