vi 便利な使い方 コマンド編

複数行のコピー

3yy 3行コピー
:5,7y 5行目~7行目をコピー
ms + me とマークしたあとに、:’s,’ey sの行からmの行までコピー
  コピー開始したい行にカーソルを合わせて、ms とタイプ。終了行で me とタイプする。
  何も表示されないけど、場所が記憶される。

※「y」を「d」に変えると 切取り になる

カーソル位置の 単語選択・行選択

カーソル位置の単語を選択: viw (ヴィジュアルモード+単語選択。複数単語を選択したければ、wを複数回押下)
カーソル行 を選択 :Shift + v

選択状態で、y とするとヤンクさる。

選択した単語で 検索 するときは、ヤンク した状態で、
/ + < ctl – r > + “
とコマンドモードでタイプするとそのまま検索ができる。

レジスタ(yy、dd の履歴)

viでは、自動で名無しレジスタの履歴が残っている。
履歴を確認するコマンド :reg
履歴指定の貼付け “0p
   ”[0-9]p 0-9 の数字を選ぶ

パスを補完してファイルを開く

.vimrc に set wildmenu を設定する
:e 現在のバッファでファイルを開く

.vimrc に filetype plugin indent on を設定する
:Ve とすると左側に エクスプローラ風tree表示となる。

:tabfind パスを書いていくと、tab でパス補完ができる。
ファイルはvimのタブで開く。

DIFF の表示

ターミナルから、vim -d hoge.c fuga.c とコマンド入力するとDIFF表示でファイルが開く。
それぞれのファイルは、ctl + w & w で移動して編集できる。

root権限で開き忘れたファイルを保存

sudoで開き忘れたファイルをsaveするすることができる。
:w !sudo tee % > /dev/null
パスワードを入力するとsaveができている。あとは、:q! で閉じれば良い。

.vimrc に cmap w!! w !sudo tee > /dev/null % を追加することで、:w!! とコマンド入力で覚えなくても大丈夫。

ターミナルを開く

:term
window が分割されて、ターミナルが開く。
ターミナルを開いて、vi <filname>とするとvimでファイル編集ができる。
コマンドの実行もできるので便利。

カーソル位置の移動

行の最後$
行の先頭0
最終行G
先頭行1G
単語単位で後ろへw (Wだとスペースまで)
単語単位で前へb (Bだとスペースまで)

コメント

タイトルとURLをコピーしました