【Linux】viでつい忘れる置換の書式

viでのテキストの置換はマウスを使わずにできるため、慣れると非常に素早く行うことができます。
しかし、しばらく使っていないと「あれ、置換の書式どうだっけ?」となりませんか?
viのコマンドは履歴が追えるので履歴を見てなんとかなったりするのですが、
念のため忘れないように残しておきます。

まずは基本。今いる行だけの置換

全行の置換

cオプションをつけると確認しながら置換

置換文字列に「/」が入る場合は区切り文字を適当に変えます。

【Linux】viでESCキーを別のキーに割り当て

viを使っているとESCキーを頻繁に押すことになりますが、
ESCキーは最も遠い位置にあるので他のキーに置き換えたいところです。

viの個人設定ファイルである

にキーマップを追加するだけです。

上記の例では Ctrl + j がESCキーの代わりになります。
新しいサーバーなどでは最初に設定しておきたいですね。

【Linux】viのマーク機能

viで画面分割とともに便利なのがマーク機能です。
開発していると、「この行をブックマークしておきたい」ということは必ず出てきます。

マークを登録するコマンドは「m」、マークへ移動するコマンドは「`」です。
使い方は、「m」あとに小文字のa~z、大文字のAからZのいずれかを打つことで
そのアルファベットで「マークをした」ことになります。
例えば

と打てば、カーソルの位置に「a」がマークされたことになります。
(実際には見えませんが)

そしてマークした位置に移動するには、

と打てば「a」のマークをつけた位置に移動できます。

こんな感じでa~z、A~Zと、アルファベットの数だけマークを付けることができ、
同じマークをもう一度使うと位置は上書きされます。

マークの一覧表示やマークの削除などもありますが、上記の2つだけ覚えておけば十分だと思います。

【Linux】viで画面分割

開発していると、1つのファイルを分割表示して編集したいときが必ずあります。
viにも画面分割機能があります。もちろんキーボード操作だけでできます。

で、縦に分割

で、横に分割します。
分割した画面間の移動は、

viのカーソル移動キーがそれぞれの方向に対応していることがわかります。

分割を終了するには

でどちらかの画面を閉じればOKです。