LoginSignup
2
3

More than 5 years have passed since last update.

Vim学習メモ (IP)

Last updated at Posted at 2016-04-12

よく参考にするサイト

今日から少しずつsublimeからvimへと移行していく際にググったことや勉強になったことなどを自分のモチベーションが続くまで書き続けていこうと思います。

VOe71EA.png

aside from the fact that motivation and demotivation are two sides of the same coin.

basics

  1. /[word] or ?[word]で単語検索
  2. iでテキスト編集開始
  3. :でエディットモード閉じる

Insert mode: hit i to initiate

Normal mode: what you hit the escape key to get to

  1. ggでカーソルを一番上に持っていく *equivalent of command + ↑
  2. shift + gで一番下へ *equivalent of command + ↓
  3. wでカーソルを次の単語に持っていく
  4. bで一単語戻る
  5. control + fで画面単位で下へ
  6. control + bで画面単位で上へ
  7. ^で行の始まりへ
  8. $で行末へ
  9. f + 1st letter of word to get toで行きたい単語の始まりへ
  10. ↑の候補が複数ある場合は;を押して次に行ける
  11. %で対応する括弧まで飛ぶ
  12. shift + vで行ごと選択
  13. control + vで自由に選択
  14. :undolistで今まで編集履歴確認
  15. ctrl + rctrl + zの反対。= redo
  16. xでカーソル上の文字をカット
  17. ddでカーソルがある行をまるごとカット
  18. [arbitrary num]ddで消したい行数だけカット
  19. (カットしたもしくはコピーしたものを)pで貼り付け
  20. yyでカーソルがある行をまるごとコピー
  21. [num]yyで指定した行数分だけコピー
  22. /[word to look up for]で単語検索
  23. 単語検索後nで下へ(下にある候補へ)Nで上へ
  24. *でカーソルがある位置の単語を検索(下方向)
  25. #でカーソルがある位置の単語を検索(上方向)
  26. :s/[word]/[word to replace with]でカーソルがある行の指定した単語/文字を書き換え
  27. :s/[word]/[w to replace with]/gでカーソルがある行の指定した物全てを書き換え
  28. :%s/[w]/[wrw]/gでファイル上の単語全てを書き換え
  29. :sv <file name>でsplit layout (vertically)
  30. :tabnewで新しいタブを作成
  31. :tabe [file name]で指定したスクリプトを新たなタブとして開く
  32. .でひとつ前に行った処理をもう一度
  33. ctrl+nで入力候補を出す
  34. :%s/foo/bar/g"スクリプトないすべてのfoobar`に変換
  35. :%s/foo/bar/gc"スクリプトないすべてのfoobarに変換(w/ confirmation)変えたいfooの数 != スクリプト内全てのfoo`のときとかに便利。
  36. ciwで現在選択している単語を消してそのままInsert Modeへ。
  37. ddでカーソルのある行を削除。
  38. Dで同じ行でカーソル以降の単語を全て削除。

tricks

  1. スクリプト内のコード全選択: gg + shift v + shift g
  2. 全選択してインデントを直す: gg + shift+v + shift+g + =
  3. 選択箇所を一気に編集: ctrl + vで挿入/編集箇所を選択しshit + iを押して編集をしてesc

To comment out/uncomment blocks in Vim

to comment out

  1. ESC
  2. CTRL + V (visual block mode)
  3. ↓と↑でライン選択
  4. SHIFT + i
  5. #
  6. ESC

to uncomment

  1. ESC
  2. CTRL + V
  3. ↓と↑でライン選択 or ←と→(w/ SHIFT)を使ってより広範囲に。
  4. d or x
  5. ESC

split windows/multiple windows

  • 横分割: CTRL + W, S *upper case s
  • 縦分割: CTRL + W, v *lower case v
  • 画面移動: CTRL + W, CTRL + W

vimrc

  1. vi ~/.vimrcでvimのファイルを開いてここで色々ショートカットキーの調整etcが行える
  2. set numberを追加すればライン番号が反映される
  3. 例えばpythonを頻繁に使う人はau FileType python setでpythonのファイルを専用のキーを設定出来る。
  4. vimに移行した途端に謎のTabError: inconsistent use of tabs and spaces in indentationが出てきた場合はこちら
  5. タブをctrl tabで回れるようにしたい場合はこちら

おすすめplug-ins

  1. Vundle
  2. NERD Tree

ref

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3