vimと言われると大体の人が、
「移動からもう難しい・・・」とか
「コマンド覚えられない・・・」とか
「わけワカンねぇ!使いにくい!」とか
で、vimを始めることを諦めていたり
途中で諦めてしまう人が多いかと思います
そんなあなたに、
vim歴5年の私が使っているコマンドのご紹介を行い
これさえ覚えておけばvimなんて使えるんだ!
という知識やコマンドをご紹介します
使わないと覚えられないですからね!!!
私は無駄に歴だけ積み重ねています!!!
前提
まずこの記事の前提として、
vimの持ちうる便利機能の全てを紹介するものではないです
(私本人が知らないから書けないだけなんですが)
今回ご紹介する機能は氷山の一角よりも少ないものです・・・
なので各セクションにて紹介する機能はほんの一部だと思ってください
モードについて
まず知っておきたいvimの最低限の知識としてモード
というものが存在します
この概念が他のエディタと違って入りにくさを助長しているんじゃないかと思っています
モードの詳細に関しては後述しますが、
- ノーマル
- 入力
- コマンド
- ビジュアル
というモードが存在し
このモードを駆使してテキストを入力したりしていくわけです
このモードがあるからこそキーボードのみで作業ができるようになるのですね
キーボードのみで作業を行うことが作業効率を上げる一因となっています
やる前はそのメリットがよくわからないと思いますが
できるようになってくるとものすごく大きなメリットであると感じられますよ!
ノーマルモード
通常状態ってやつですね
読んで字のごとくvimでファイルを開いた時などはこのモードから始まります
このモードでできることは
- 移動
- 各モードへの移行
って感じですかね
各モードへ移行するのもこのモードからなので
逆に各モードからこのモードへ戻ってくる必要があります
その時に使うのが
Esc
ですね!
とりあえずこのキーを押しておけばノーマルモードです!
わけわかんなくなっちゃったらとりあえずEscです!
入力モード
文字を入力するためのモードですね!
ノーマルモードでカーソルを移動して、入力したいところに合わせたら
i もしくは a
で入力モードへ入れます
ちなみに
i はカーソルの左
a はカーソルの右
へ入力を始められる状態になります
正直自分はiキーを使うことがほとんどで
たまにaキーを使うイメージです
iかa押しときゃ入力モードに入れるって思っておけばおk
コマンドラインモード
見た感じはノーマルモードに似ているのですが
コマンドを利用するためのモードです
編集しているファイルを保存したりする時に使います
:
を押すことで画面下部にて特定コマンドを入力できます
一番使うのが
ファイルの保存
:w
ファイルを閉じる
:q
ですかね
他にもvimの設定ができたり、新しいファイルが開けたり
様々なコマンドを利用できますが、
一旦は上記を覚えておけばファイルを保存して閉じれるのでおk
ビジュアルモード
vim以外で言うマウスで文字列をドラッグする選択ってやつができるモードです
ビジュアルモードに入るには
v
です
ビジュアルモードでカーソルの移動を行えば選択を行うことが出来ます
ちなみに、
Ctrl+v
で矩形選択が可能です!
矩形選択後にテキストを入力する際には、
I(大文字のiなのでShift+iですね)
A
で入力可能です!
入力される方向は通常の入力と同じく、
Iで左
Aで右
ですね!
移動とコピペ
プログラムとかファイルの編集って移動してコピペすりゃどうにかなるでしょう!(投げやり)
移動
移動はもうご存知かもしれませんがhjkl
で移動します!
h : ←
j : ↓
k : ↑
l : →
コピペ
コピペはビジュアルモードで選択した状態で
y
でコピー(vimではヤンクと言いますね)
任意の場所へ移動して
p
でペーストできます!
1行丸々コピーする場合は、ノーマルモードで任意の行で
yy
と入力すれば1行コピーできます!
プラグインに関して
vimを他のIDEなどと同じように(近しい感じで)使うためには
素の状態では少し厳しいです
ファイルツリーもないですし
そういう時にvimにはプラグインがあります!
いろんな機能を追加していくことができるんですよね!
詳細については別記事にてまとめられればと思いますが
気になる人はググってみればたくさんプラグイン出てくるので
ぜひ検索してみてくださいませ
.vimrcについて
プラグインの導入時にも触るかと思いますが、
vimの設定をいじることで使いやすく出来ます
ゲームでいうキーコンフィグを好きなように変更したりする感じ
これは他の設定ファイルと変わらずテキストファイルみたいなものなので
vimmerの方はgitに上げておいて、
自分がいつも使っているvimをどこでも利用できるようにしてたり
ちょっと前の設定に戻したいなーって時に活用したりされているみたいです
作り方やオススメの設定などは検索してみてね!!
まとめ
正直vimの全てを覚える必要はないと思います
ExcelでもWordでも覚えきれないほどの機能が搭載されているにも関わらず
既知の機能のみでも十分利用できているのと同じですね
もちろん前述のソフトウェアでも言えることですが、
搭載されている機能を全て使いこなせばより効率的だったりより素敵な成果物が出せたりするのと同じく
vimに搭載されている機能を使いこなせば使いこなすほど開発が捗ることは間違いないです
入りはまずはハードルを下げて使いながら慣れていくことが大切ですので
使いながら新しい機能・コマンドに手を出していきましょう!
使っていて不便に思った場合は対応している機能ないかなーと調べてみると
大体は対応している機能が存在して解決されるでしょう!
最後にもう一度言っておきますが、
vimはもっともっとたくさんの機能があります
使っている間に「こうできないかなー」「こんな機能ないかなー」と思うことがあれば
是非とも検索してみてください!大体あるので!!
何かおすすめの機能や素敵なコマンドなどがあれば私にも教えてくださいませーー!!