【vim】慣れると便利?いろんな操作
問題
vimでできる便利そうな操作教えてください。
答え
Ctrl+^
さっき開いていたファイルを開く。連打すると今とさっきを行ったり来たりする感じになる。
代替ファイルを編集する。たいていの場合、代替ファイルは前に編集したファイルである。これを使うと2つのファイル間を素早く切り替えることができる。これは “:e #” と同じ
数値 Ctrl+^
N番目のファイルを編集(:e #Nと同じ)
[count] 番目の代替ファイルを編集する (コマンド “:e #[count]” と同じ)。[count] が指定されないと、前に編集したファイルを編集する。これを使うと2つ (かそれ以上) のファイル間を素早く行き来できる。
gf
カーソルの下か後ろの名前のファイルを編集する。覚え方: “goto file”。
Ctrl+[
ESCと同じ
SHIFT キーはキーコードを -0x20、CTRL キーはキーコードを -0x40 する機能。
なので[
つまり 0x5b は 0x1b になる。0x1b = ESC。
同様に CTRL-H は H が 0x48 なので 0x08、つまり BS になる。
;(セミコロン)
直前の “f”, “F”, “t”, “T” を繰り返す
,(カンマ)
直前の “f”, “F”, “t”, “T” を逆方向に繰り返す
*
カーソル位置にある単語を下方向に検索
#
カーソル位置にある単語を上方向に検索
%
対応する括弧へ移動
@:
最後のコマンドラインを繰り返す。例えば置換を繰り返すなどできる。
.
直前のコマンドを繰り返す。例えば「インサートモードにしてabcと入力してインサートモード終了」の操作を繰り返すなどできる。
&
直前の “:s” を現在行について繰り返す
~
大文字小文字を変換してカーソルを移動
=
自動インデント
CTRL+O
ジャンプリストを古いほうへ移動
CTRL+I
ジャンプリストを新しいほうへ移動
J(Shift+j)
次の行と結合(英文向け仕様で間にスペースが入る)。
スペースが入らないようにするには gJ 。
(インサートモードで)CTRL+T
インデントをひとつ追加
(インサートモードで)CTRL+D
インデントをひとつ削除
コメント