vimについて学習したので、復習を兼ねてまとめます。
#vimとは
Unix系のエディタ。通常のエディタと違い、いくつかのモードがある。
● ノーマルモード:カーソルの移動やテキストの削除、コピー、ペーストなどの簡単な指示を行う。
● 入力モード:実際にテキストを入力する。(『i』を打つとなり、『ESCキー』を打つと(ノーマルモードに戻る。)
● コマンドモード」:ファイルを開いたり、検索や置換などの様々な指示を行う。(『:』を打つとなり、『ESCキー』を押すとノーマルモードに戻る。)
● ビジュアルモード」:テキストを選択するだけのモード。(『v』を打つとなり、『ESCキー』でノーマルモードに戻る。)
#ファイルの保存、読み込み
キー | 動作 |
---|---|
:q | 終了 |
:w | 保存 |
:wq | 保存して終了 |
:w 新しいファイル名 | 名前をつけて保存 |
:q! | 変更点を無視して強制的に終了 |
:e 開きたいファイル名 | 他のファイルを開く |
#移動
キー | 動作 |
---|---|
gg | ファイル先頭に行く |
G | ファイル末尾に行く |
control+f | 一画面下に移動 |
control+b | 一画面上に移動 |
w | 単語単位で移動 |
b | 単語単位で戻る |
^ | 行頭へ移動 |
$ | 行末へ移動 |
#範囲選択
キー | 動作 |
---|---|
v | 文字単位で選択 |
V | 行単位で選択 |
control+v | 矩形選択 |
gg+V+G | テキスト全体選択 |
#カット、コピー、貼り付け
キー | 動作 |
---|---|
x | 一文字単位で削除 |
dd | 行単位で削除 |
消したい行数の値dd | 入力した値の行数分削除 |
p | カットしたものを貼り付ける |
yy | コピー |
#検索
キー | 動作 |
---|---|
/検索語 | 検索語のところへ移動 |
(検索語が複数ある場合)n | 下方向に検索 |
検索語が複数ある場合)N | 上方向に検索 |
* | カーソルがある位置の単語を下方向に検索 |
# | カーソルがある位置の単語を上方向に検索 |
#置換
キー | 動作 |
---|---|
:s/元の単語/変更後の単語/ | 一文字だけ変更(カーソルがある行に有効) |
:s/元の文字/変更後の文字/g | 複数の文字を変更(カーソルがある行に有効) |
:%s/元の文字/変更後の文字/g | 複数の文字を変更(ファイル全体に有効) |
:%s/元の文字/変更後の文字/gc | 複数の文字を変更(ファイル全体に有効)の前に確認コメントが表示される |
#操作の取り消し
キー | 動作 |
---|---|
u | 行った操作を取り消す(何度でも戻れる) |
control+r | uの動作のやり直し |
#ウィンドウの分割
キー | 動作 |
---|---|
:sp | ウィンドウを縦方向に分割 |
:vs | ウィンドウを横方向に分割 |
control+w+w | 次のウィンドウに移動 |
control+w+p | 前のウィンドウに移動 |
:close | ウィンドウを閉じる |
#タブを使う
キー | 動作 |
---|---|
:tabnew | 新しいタブを開く |
:tabe 開きたいタブ名 | 指定したタブを開く |
:gt | タブの移動 |
:tabclose | タブを閉じる |
(vimを起動時)vim -p | タブを全て開く |
:tabdo %s/元の単語/変更後の単語/g | 開いている全てのタグにおいて置換をする |
#直前の操作を繰り返す
キー | 動作 |
---|---|
. | 直前の操作を繰り返す |
#インデント
キー | 動作 |
---|---|
= | カーソルのある行をインデントする |
全選択後(gg+V+G)= | 全ての行をインデントする |
#補完機能
キー | 動作 |
---|---|
control+n | 関数をもう一回使う |
#コマンドモードで使える便利な設定
キー | 動作 |
---|---|
:set number | 行番号を表示 |
:set nonaumber | 行番号を消す |
:syntax on | コードの色分け |
:syntax off | 色を消す |
:set tabstop=規定したい文字数 | タブの文字数を規定する |
:set ignorecase | 大文字小文字の区別をせずに検索 |
:set noignorecase | 元に戻る |