menu
書いてる野郎
orebike@gmail.com
Vimでは通常は選択とその選択されたものに対する操作が一体化している。 なので
やりたいこと→やりたい範囲
という操作体系になっている。DWならば削除→1単語という感じ
選択だけやるにはビジュアルモードというのを使う。 このモードを使えば「選択」を先にできるのでVimでも
やりたい範囲→やりたいこと
という操作ができるようになる。
つまりごく普通のエディタではShift+カーソルでやる操作。
全部visualのvなので覚えやすい。
vimでは、ノーマルモード時 v(小文字のv)でビジュアルモードに入る。
そこでカーソルを移動させると、選択モードに入った位置の場所から、カーソルを移動させた場所までが範囲選択される。
ノーマルモード時 V(大文字のブイ)で行単位選択のビジュアルモードに入る。
そこでカーソルを移動させると、選択モードに入った位置の行から、カーソルを移動させた行までが範囲選択される。
行の構造を無視して選択したい場合。例えば
aabbb ccbbb bbbbb ddbbb
みたいな場合に全部の行の前2文字だけ選択したい場合
ノーマルモード時 ctrl+vで矩形選択のビジュアルモードに入る。
行選択のモードで10行目から開始して、20行目まで選択したとする。 ここまで来た時点で9行目も選択範囲に加えたくなった場合に選択基準位置をoで開始位置にカーソルを移動しkで現在選択している行は保ったまま上方向に拡大することができる。
oをもう一回押すとまた反対側に移動できる。
矩形選択の場合はoで対角線の反対側Oで水平方向に反対側に移動する。
ノーマルモード時に
gv
で前回選択していた範囲が再び選択状態になる。
全選択は
ggVG
こうなる。ggで先頭行に移動、Vでビジュアルモード行選択、Gで最終行に移動ということで結果的に全部を選択できる。
vit
vip