pubDate: 2024-03-04
author: sakakibara
白状しよう。ノーマルモードが一番大事だ。 故に、インサートモードの機能的について言及することは少ない。
インサートモードへ移行するには基本的にi
を押すが、他にもいくつかの方法がある。
command | description |
---|---|
i | カーソルの位置にインサート |
I | 行の先頭にインサート |
a | カーソルの次の位置にインサート |
A | 行の末尾にインサート |
o | 次の行にインサート |
O | 前の行にインサート |
s | カーソルの位置の文字を削除しインサート |
S | 行を削除しインサート |
c{motion} | {motion}のテキストを削除してインサート |
C | カーソルから行末まで削除してインサート |
インサートモードからノーマルモードへ移行するにはESC
やCtrl+[
を押す。
インサートモード中にコピーした文字をペーストするためにいったんノーマルモードに移行するのは面倒だ。 実はノーマルモードに移行せずにレジスタを利用することができる。
インサートモード中でCtrl+r
を押せばよいのだ。
この動画ではCtrl+r "
を押すことで無名レジスタの内容(yiw
でコピーした単語)がペーストされている。
インサートモード中ではCtrl+r{register}
を押すと、指定したレジスタの文字が入力される。
いちいちノーマルモードにもどっているならそれはあまり効率的ではない。これからはCtrl+r
を使おう。
また、意外と便利なのがExpress register
だ。
割り算は整数で閉じているが、その他の加減乗除については浮動小数点数で閉じている。
以下はインサートモードの奥義である。
Ctrl+o
を押すことで、インサートモードを一瞬置き去りにし、ノーマルモードのコマンドを実行し、再びインサートモードに戻ることができる。
ただし、一振りだけだ。
この一瞬の状態を ノーマルインサートモード と呼ぶ。
通常、ここには{motion}かd
やy
, p
などのコマンドを入力する。
使いこなすには、インサートモードよりも、むしろノーマルモードに熟練している必要がある。