かずおの開発ブログ(主にRuby)

日々の開発のことを色々書きます。

vimの基本コマンド

モードについて

ノーマルモード(esc) : 他のモードの移動もとになるモード

挿入モード (i)

ビジュアルモード(v)

コマンドモード(:)

ファイルの保存読み込み

:w ファイル名 : 名前をつけてファイルを保存

:q :終了

:q!: 強制終了

:e ファイル名 :他のファイルを開く

移動系(ノーマルモード)

hjkl:左下上右

gj:一行下に移動

gl:一行上に移動

gg: 先頭に戻る

G: お尻にいく

control+f :1画面下に移動

control+b:1画面上に移動

w:単語単位で後ろに移動

b:単語単位で前に移動

^:行頭に移動

$:行末に移動

f→行きたい単語の頭文字:その単語に移動

(とか{の上で% : 対応する括弧に移動

ビジュアルモードについて

v:Viaualモード(文字単位) shift+v:Visual Lineモード(行単位) control+v: Visual Blockモード(矩形単位)

応用

gg+v+G:テキスト全選択

カット、コピー、ペースト

カット x:文字単位 dd:行単位 数字+d:数字分行削除

コピー y:文字単位 yy:行単位 数字+y:数字分行コピー

ペースト p

※中途半端な量やりたい場合はビジュアルモードで選択する必要

検索

/+検索文字列:検索 n:下方向に検索 N:上方向に検索 *:今カーソルのある位置の単語を下方向に検索 '#':今カーソルのある位置の単語を上方向に検索

置換

:%s:置換前文字列/置換後文字列/g(c) : 文字列を置換(cをつけると確認を求める)

undo redo

u: Undo(一個戻る) CTRL+r :Redo(一個進む) .:直前の操作を繰り返し

ウィンドウの分割

:sp:ウィンドウを分割(水平方向) :vs:ウィンドウを分割(縦方向) :close:ウィンドウを閉じる :CTRL+w+w:ウィンドウを移動

タブを使う

:tabnew : 新しいtabを作成 :tabe + ファイル名: タブを作ってファイルを開く :gt : タブ間を移動 :tabclose : タブを閉じる :tabdo :全てのタブに対して実行

便利な機能

=:インデントをそろえる(行単位) CTRL+n: CTRL+v→矩形選択→shift+i→なんか打ってenter:矩形選択してまとめて置換

便利な設定

:set number(no number) :行番号を表示 :syntax on(off) : プログラムを色づけ :set tabstop = num: numにタブ数を設定 :set ignorecase(noignorecase) : 検索時に大文字を小文字を区別する