Vimは早い!
と、よく言われますが、コマンドでの移動や操作に慣れればの話ですよね。。。
僕はまだ簡単なカーソル移動しかできないので、全く恩恵を感じません。
感じる土俵にすら立っていないのかもしれないですね。
今のLinuxPCで開発やら勉強やらやるのに、エディタが必要だなぁと思っていましたが、今使っている会社PCのAtomはめっちゃ重いし、遅いとやる気が削ぎれていくので、この際Vimに乗り換えることにしました。
とりあえず、使いそうなコマンドをメモっていきます。
Vimコマンド
基本カーソル移動
- k 上移動
- l 右移動
- h 左移動
- j 下移動
- w 次の単語
- b 前の単語
- f(文字) カーソルがある行の(文字)に移動
- F(文字) カーソルがある行の(文字)に移動(逆向き)
- 0 行頭
- ^ 行頭
- $ 行末
- % 対応するカッコに移動
- ctrl + u 半画面上
- ctrl + d 半画面下
- zz カーソルが画面中央になるようにスクロール
- ctrl + o 古いカーソル位置に戻る
- ctrl + i 新しいカーソル位置に進む
モード変更
- i 挿入モード
- esc ノーマルモード
- : コマンドモード
- v ビジュアルモード
- ctrl + v ビジュアルモード(矩形)
- o 新しい行を追加し挿入モード
- R 上書きモード
単語補完
- ctrl + p 前方検索の単語補完
行移動
- gg 最初の行
- 88G 88行目
- G 最終行
- H 画面上の最初の行(Home)
- M 画面上の中央の行(Middle)
- L 画面上の最後の行(Last)
ファイル操作
検索と置換
- ・ カーソル下の単語を検索
- '#' カーソル下の単語を検索(上方向に検索)
↑
マークダウンになってしまうためシングルクォートでかこんだ - :%s/hage/hoge/g 単語の置換(hageをhogeへ置換) %はファイル全体を表す
編集
- . 直前の変更を繰り返す
- u Undo
- ctrl + r Redo
ウィンドウ
- :vsplit 画面を左右に分割する
- : filename いまいるウィンドウにファイルを開く
- :e test*.cc ワイルドカードを指定してファイルを開く
- ctrl + wh 左のウィンドウへ
- ctrl + wl 右のウィンドウへ
コピー&ペースト
- yy いまいる行をコピー
- p カーソルの場所にペースト
- yy5p 現在の行をコピーし、下に5行追加する
- gv 直前の選択範囲を再選択
とまあ書いてみましたが、使ってみないと覚えないですよね。。。。
ちょっと所要で簡単なRailsアプリを作らないといけなくなったので、その時に使いながら勉強していきます。
参考
https://qiita.com/hide/items/5bfe5b322872c61a6896
ただ列挙しただけというね!
さっさと覚えてvimmerになります。