コマンド体系
大きく以下の3つに分けられる
カーソル移動系
ラインエディタの便利さを提供するexコマンド
テキスト入力系
コマンド
|
内容
|
---|
i
|
カーソルの左に文字を挿入
|
I
|
カーソル行の行頭に文字を挿入
|
a
|
カーソルの右に文字を挿入
|
A
|
カーソル行の行末に文字を挿入
|
o
|
カーソル行の下の行に空行を作って文字を挿入
|
O
|
カーソル行の上の行に空行を作って文字を挿入
|
c系
|
対象文字列を消して文字を挿入(つまり、変更)
|
C
|
カーソル位置から行末までを消して文字を挿入
|
カーソル移動
コマンドモードで、以下のキーを押す
{{ref_image vi_key_dirction.JPG}}
- 最初に数値を入力することにより、(3lなど)移動量を指定できる。
位置移動
Key
|
内容
|
補足
|
---|
0
|
行頭へ
|
|
$
|
行末へ
|
|
|
指定したカラムへ
|
数値を指定して、スペースキー
|
内容を考慮した移動
先頭に数値で、指定数分移動
Key
|
内容
|
補足
|
---|
w
|
一単語次へ
|
特殊記号区切り
|
b
|
一単語前へ
|
特殊記号区切り
|
W
|
一単語次へ
|
空白区切り
|
B
|
一単語前へ
|
空白区切り
|
{
|
一段落次へ
|
空白区切り
|
|一段落前へ
|空白区切り
|-
|%
|対応した括弧へ
|
|-
|`[任意のアルファベット1文字]
|:m alpha でカーソル位置をマーキング
|-
|}
スクロール
先頭に数値で、指定数分移動
Key
|
内容
|
補足
|
---|
H
|
画面上からn行目へ移動
|
デフォルト 0
|
M
|
画面中央へ移動
|
|
L
|
画面下からn行目へ移動
|
デフォルト 0
|
G
|
最終行へ
|
Ctrl+b
|
前ページ
|
|
Ctrl+f
|
次ページ
|
|
Ctrl+u
|
半ページ上
|
|
Ctrl+d
|
半ページ下
|
|
検索
コマンドモードで、"/" もしくは、"?" 押下。最下段で検索後を入力してエンターキー押下
Key
|
内容
|
---|
/
|
後方に向かって検索
|
?
|
前方に向かって検索
|
- 検索後、"n" で同方向に再検索。"N"で逆方向に再検索。
- "*"、"."はメタキャラクタ
文字
|
内容
|
---|
.
|
1文字
|
*
|
前の文字の繰り返し
|
^
|
行頭
|
$
|
行末
|
<
|
単語の先頭
|
>
|
単語の末尾
|
\
|
メタキャラクタのエスケープ
|
[CharSet]
|
CharSetの中の一文字
|
[^CharSet]
|
CharSetに含まれない一文字
|
置換
コマンドモードで、
:%s/oldstr/newstr/g
とする。文字列に "/"が含まれる場合、
:%s;oldstr;newstr;g
のように"/"を別の文字に変更する
削除、移動、コピー、取り消し
コマンドモードで、以下を行う
Key
|
内容
|
補足
|
---|
x
|
カーソルの1文字を削除
|
3xとすると、3文字削除される
|
dd
|
1行削除
|
3ddとすると、3行削除される
|
J
|
次の行と結合
|
|
v
|
範囲選択(文字単位)
|
範囲選択しdで、範囲削除
|
V
|
範囲選択(行単位)
|
範囲選択しdで、範囲削除
|
ctrl+v
|
範囲選択(矩形)
|
範囲選択しdで、範囲削除
|
p
|
ペースト
|
xやddで削除した文字列の貼り付け
|
カットアンドペーストの方法
<blockquote>ctrl+v ~ d で削除した文字列は、バッファに格納される。削除とペーストを組み合わせることでカットアンドペーストを実現</blockquote>
ファイル内容の読み込み
読み込みたい場所にカーソルを移動し、以下
:r filename
保存と終了
Key
|
内容
|
説明
|
---|
w
|
保存
|
ファイル名を指定して保存する場合、:w filename
|
w!
|
ファイル内容を強制保存
|
|
wq
|
ファイル内容を保存して終了
|
|
q!
|
ファイル内容を保存せず終了
|
|
外部コマンドの実行
:!コマンド
設定
タブ幅を変える
:set tabstop=タブ幅
文字コードを指定してファイルを開きなおす
:e ++enc=euc-jp
:set fileencoding=cp932
改行コードを変更する
:set fileformat=改行コードの種類(dos, max, unix)
:se enc?
:se fenc?
多くは、以下の書籍からのメモです。
非常に丁寧、網羅的に説明されていて、助かります。