例えば,ペアプロしていて,ちょっと打たせてくださいとか言って,エディタがVimで全然打てない,ということがよくあったので,最低限使えるようになろうと思った.
チュートリアルを読んだ.以下,そのメモ.
ファイル読み書き
| :w ファイル名 | 指定したファイル名で保存 |
| :r ファイル名 | 指定したファイルをカーソルの位置に挿入する(これ使うことあるんだろうか) |
入力
| i | 入力 |
| A | 行末に移動して入力 |
| o | 下の行で挿入モードになる |
| O | 上の行で挿入モードになる |
| a | カーソルの次に挿入する |
モード
| ESC | ノーマルモード |
| i | 挿入 |
| v | 選択 |
コピー,ペースト
| y | コピー |
| p | ペースト |
| d | 切り取り |
カーソル移動系
| hjkl | 一文字移動 |
| w | 次の単語の先頭 |
| e | 次の単語の最後 |
| $ | 行末 |
| C-g | カーソルの位置を表示する(下にいろいろ出る) |
| 数字 G | n行目に移動する |
| gg | ファイルの最初に移動 |
| G | ファイルの最後に移動 |
| % | 対応する括弧に移動 |
削除
| x | C-d |
| dd | 一行削除 |
d+移動でその方向に消える
| de | M-d |
| dw | M-d C-d |
| dh | C-h |
| dj | なんかたくさん消える |
| dk | なんかたくさん消える |
| dl | C-d |
| d$ | C-k |
繰り返し
先に数字を打つ
やりなおし
| u | やりなおし |
| U | 1行やりなおし |
| C-r | やりなおしのやりなおし |
どのくらいやりなおしてるか,下にいろいろ出る
置き換え
| r | 一文字上書き |
| R | 入力しただけ上書きする |
| c+いろいろ | いろいろ置き換え(d+いろいろと同じ感じ |
| cw | 単語を置き換え |
検索
| / | 次を検索(C-s) |
| ? | 前を検索(C-r) |
| n | 検索中に次を検索 |
| N | 検索中に前を検索 |
| C-o | 元いた場所に戻る |
| C-i | 戻る前の場所に戻る |
(インクリメンタルに検索されるわけではない)
置換
| :s/before/after | 行内で最初に見つかったものを置換 |
| :s/before/after/g | 行内を全て置換 |
| :s/before/after/c | 行で最初に見つかったものを対話的に置換 |
| :s/before/after/gc | 行内を全て対話的に置換 |
| :556,576s/before/after/g | 556行目から576行目まで全て置換 |
| :556,576s/before/after/c | 556行目から576行目まで行の最初に見つかったものを対話的に置換(最初に見つかったものだけy/n/とか言われるので,実用的でないと思う) |
| :556,576s/before/after/gc | 556行目から576行目まで全て対話的に置換 |
| :%s/before/after/g | ファイル内を全て置換 |
選択中に:sすると選択範囲だけできる
外部コマンドの実行
! ls ~ とか
Enterで終わる
検索をignore caseにする
:set ic
:set なんたら でいろいろ設定できる
ヘルプ
:h なんたら
まとめ
ファイルの編集くらいはできるようになったと思う.
Vimperatorと同じだと思えば容易に覚えられそう.