役立つvimコマンド集

投稿者: | 2013-01-25

自分でも後から参照できるようにまとめておきます。vimは慣れるまでちょっと大変ですけど、慣れると便利なエディタですよね。様々なコマンドがあるわけですが、ここでは便利でかつ使用頻度の高いものをメモしておこうと思います。
なお、この記事は随時更新しています。「これは便利だから追加して」というものがあればお知らせいただければと思います。

ノーマルモード、移動モード(escキーで切り替え)

h ← 左へ移動
l → 右へ移動
k ↑ 上へ移動
j ↓ 下へ移動
[行番号] gg 指定した[行番号]へ移動
gg 先頭に移動
G 最後に移動
CTRL+f 画面先へ移動
CTRL+b 画面先へ戻る
w 単語ごとに前へ移動
b 単語ごとに後ろへ移動
^ 行頭へ移動
$ 行末へ移動
f(を押した後に目的の文字列) 目的のアルファベットへ移動
; 次へ移動
% 対になる{, } へジャンプ

x 1文字ずつ削除(切り取り)
dd 行ごと削除(切り取り)
10→dd 0行削除(切り取り)
p ペースト
yy ヤンク(=コピー)
10→yy 10行ヤンク
s 1文字削除してインサートモード

d f(を押した後に目的の文字列)目的の文字列までを削除

/[文字列] 文字列の検索
/[文字列]¥c 文字列を大文字小文字の区別なしで検索(”¥”は環境によりバックスラッシュ”\”と同じ意味になる)
n 次を検索
N 前を検索
* 現在選択している文字列と同じ文字列を下方向に検索
# 現在選択している文字列と同じ文字列を上方向に検索
u アンドゥ
CTRL+r リドゥ

cit タグ内の文字列を削除してインサートモードに切り替え
cat タグ全体の文字列を削除してインサートモードに切り替え
ci” ダブルクオーテーション(“)内の文字列を削除してインサートモードに切り替え

 


インサートモード(iキーでインサートモードに切り替え)

(変数名・関数名の入力途中で)CTRL+n 該当する変数名・関数名を表示、補完
I 選択行の最初に移動してインサートモードに切り替え
A 選択行の後ろに移動してインサートモードに切り替え
o 1行挿入してインサートモードに切り替え
cc 選択行をすべて削除してインサートモードに切り替え
cw 選択単語を削除してインサートモードに切り替え


ビジュアルモード

v 選択モード
V 行単位での選択
CTRL+V 短形選択
(短形選択時に)I 挿入モード→[文字列] 選択肢た行全体に[文字列]を挿入
gg→V→G テキスト全体を選択(ggでテキストの先頭へ移動、Vで行単位の選択、Gでテキストの最後へ移動)
3dd 3行消す(切り取り)
. “.”を押すと直前のコマンドを実行、直前の動作を繰り返す
= インデントを揃える
gg→V→G→= 全体のインデントを揃える
※~/.vimrc ファイルの設定変更の必要があるかもしれません。ページ下部「その他」を参照してください。

コマンドモード(:キーでコマンドモードに切り替え)

:q 終了
:w 保存
:wq 保存して終了
:q! 保存せずに終了
:w [新しいファイル名] 名前を付けて保存
:e [ファイル名] [ファイル名]で指定した別のファイルを開く
:s/[文字列1]/[文字列2] 選択行内の[文字列1]を検索して[文字列2]に置換
:%s [文字列1]/[文字列2]/g ファイル全体の[文字列1]を検索、すべてを[文字列2]に置換([g]がすべてを対象にする、という意味になる)
※s はsubstitute(置換)の略。
:sp ウィンドウを上下に分割(splitの略)
CTRL+w+w ウィンドウの切り替え
:vs ウィンドウを左右に分割
:close 閉じる
:tabnew タブを開く
:tabe [ファイル名] [ファイル名]をタブで開く
gt タブ間の移動(Go to next Tab?)
:tabclose タブを閉じる
:tabdo %s/[文字列1][文字列2]/g タブで開いているファイル中のすべての[文字列1]を[文字列2]に変換
(ターミナル起動時に)
vim -p [ファイル名1] [ファイル名2] [ファイル名]を指定して複数ファイルをタブ表示で開く

:syntax on コードを色分け
:syntax off コードの色分けを消す
:set number 行番号を表示
:set nonumber 行番号を非表示
:set tabstop=[数字] タブの空白数の設定(通常は4とか8)
:set ignorecase 文字列検索時に、大文字小文字の区別を無視する
:set noignorecase 解除

その他

ターミナル起動時
vimtutor //vimのチュートリアルをしてくれる
vim ~/.vimrc vimの設定ファイルの編集(.vimrcファイルがない場合は新規作成)
syntax on
filetype indent on
を記述。ファイルが色分けされる&ノーマルモード時に”=”キーを押すとインデントを自動で揃えてくれる機能が付く

メモ的に記述したのでわかりにくい部分、誤解を招くような部分もあるかと思いますがご了承ください。

[参考]
Vimの使い方
Vim コマンド 覚書 — Key:雑学事典
名無しのvim使いへようこそ。 — 名無しのvim使い

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です