テキスト編集
ci[囲み文字] 囲み文字の中を消して、編集モードになる。
囲み文字は
tタグ
"ダブルクォーテーション
'シングルクォーテーション
(カッコ
なども使える。
カッコの場合はカッコにカーソルをあわせる必要がある。
cをdにすると削除のみ。
cをyにするとコピー。
検索
* カーソルのある位置の単語を昇順検索(/xxxと同じ動き)
# カーソルのある位置の単語を逆順検索(?xxxと同じ動き)
:noh 検索結果のハイライトを消去
空行削除
:g/^$/d
貼り付け時のインデントずれの対処
vimに貼り付けたときにインデントがずれるのは、自動インデントが有効なためによる。
無効にしてから、貼り付ければよい。
:set autoindent 自動インデント有効
:set noautoindent 自動インデント無効
入力補完
長い名前を持つ変数等を入力するときに積極的に使いたい。
ctrl + n ファイル後方に向けて補完候補を探す
ctrl + p ファイル先頭に向けて補完候補を探す
^M(CR)の入力
たまにしか出てこないから、忘れがち。
ctrl+v ctrl+m
netrw.vim(vimモードでエクスプローラ)
ディレクトリをviすると、viモードでディレクトリ、ファイル操作ができる。
- 1コ上の階層へ移動
enter 選択中のディレクトリへ移動、またはファイルを開く
t 別ウィンドウでファイルまたはディレクトリを開く
D 削除
R 名前変更
s ソート順変更
x ファイル実行
ディレクトリを-``enterで移動して、ファイルをtで開くと快適
行内検索
f[文字] カーソルから行末に向かって文字を検索。
;直前の f[文字]の繰り返し
,直前の f[文字]の繰り返し(逆方向)
cやdと組み合わせると便利
cf[文字]カーソルから文字までを編集
cd[文字]カーソルから文字までを削除
インデント
= インデント整形
ggVGで全選択できるので、全選択状態からの=で整形一発。
変換
ctrl + a 数字に+1
ctrl + x 数字に-1
~ 大文字小文字変換
ビジュアルモード、矩形選択ctrl + vからのコマンド
d 削除
I 選択範囲の冒頭から挿入
A 選択範囲の末尾から挿入
s 選択範囲を削除して挿入
u 小文字変換
U 大文字変換
~ 大文字小文字変換
: 置換(:'<,'>s/[置換前文字]/[置換後文字]/)
挿入
I 行頭から挿入
A 行末から挿入
O 一行上から挿入
カーソル移動
H 画面一番上にカーソル移動
M 画面中央にカーソル移動
L 画面一番下にカーソル移動
文字コード変換
:e ++enc=[文字コード]