Web@Youtility
~Web開発支援サイト~
本HPは
http://webyoutility.web.fc2.com/に移設しました!(現状7割)
viコマンド一覧 |
|
ジャンプコマンド |
文字指向のジャンプ |
h,j,k,l |
右、下、上、右(または←、↓、↑、→)
|
テキスト指向のジャンプ |
w,W,b,B |
前/後の単語 |
e,E |
単語の末尾 |
),( |
次/前の文の先頭 |
},{ |
次/前の段落の先頭 |
]],[[ |
次/前のセクションの先頭 |
行指向のジャンプ |
0,$ |
カレント行の先頭/末尾 |
^ |
カレント行の先頭の(空白以外の)末尾 |
+,- |
次/前の行の先頭の文字 |
n| |
カレント行のn文字目 |
H |
画面の最上行 |
M |
画面の中央行 |
L |
画面の最下行 |
nH |
上からn行目の行 |
nL |
下からn行目の行 |
画面指向のジャンプ |
CTRL-F,CTRL-B |
次/前の画面にスクロール |
CTRL-D,CTRL-U |
上/下に半画面分スクロール |
CTRL-E,CTRL-Y |
ウインドウの上/下にもう一行表示 |
z RETURN |
カーソルのある行を画面の一番上に表示 |
z. |
カーソルのある行を画面の中央に表示 |
z- |
カーソルのある行を画面の一番下に表示 |
検索 |
/pattern |
パターンを順方向に検索 |
?pattern |
パターンを逆方向に検索 |
n,N |
最後の検索を、同じ/反対の方向で繰り返す |
/,? |
直前の検索を、順方向/逆方向に繰り返す |
fx |
カレント行内の、カーソル位置よりうしろにあるxにジャンプ |
Fx |
カレント行内の、カーソル位置より前にあるxにジャンプ |
tx |
カレント行内の、カーソル位置よりうしろにあるxの直前の文字にジャンプ |
Tx |
カレント行内の、カーソル位置より前にあるxの直前の文字にジャンプ |
; |
直前のカレント行検索を繰り返す |
, |
直前のカレント行検索を反対方向で繰り返す |
行番号によるジャンプ |
CTRL-G |
カレント行の行番号表示 |
nG |
行番号nにジャンプ |
G |
ファイルの最終行にジャンプ |
:n |
行番号nにジャンプ |
位置のマーク |
mx |
現在位置をxとしてマーク(マークは ' と a-z です。) |
'x |
xにジャンプ |
'' |
直前のマークまたは文脈に戻る |
`x |
マークxを含む行の先頭にジャンプ |
`` |
直前のマークを含む行の先頭に戻る |
編集コマンド |
挿入 |
i,a |
カーソルの前/後にテキストを挿入 |
I,A |
行の先頭/末尾にテキストを挿入 |
o,O |
カーソルの下/上にテキスト入力用の新しい行をオープン |
変更 |
r |
次にタイプする文字に置き換える |
~ |
大文字小文字の変換 |
cm |
ジャンプコマンドmで指定されるテキストブロックを変更 |
cc |
カレント行を変更 |
C |
行末まで変更 |
R |
文字列を重ね書きする |
s |
文字をテキストで置き換える |
S |
カレント行をテキストで置き換える |
削除、移動 |
x |
文字の削除 |
X |
カーソルの前にある文字の削除 |
dm |
ジャンプコマンドmで指定されるテキストブロックを削除 |
dd |
カレント行の削除 |
D |
行末まで削除 |
p,P |
削除したテキストをカーソルの後/前に挿入 |
"nP |
カーソルのあとに、削除バッファ番号nのテキストを挿入 |
ヤンク(コピー) |
ym |
ジャンプコマンドmで指定されるテキストブロックのヤンク(コピー) |
yy,Y |
カレント行のヤンク |
"ayy |
aというバッファにカレント行のヤンク |
p,P |
ヤンクしたテキストをカーソルの後/前に挿入 |
"aP |
カーソルの前に、バッファaのテキストを挿入 |
その他のコマンド |
. |
最後の編集コマンドの繰り返し |
u,U |
最後の編集の取消し(アンドゥ)/カレント行の復元 |
J |
2行の連結 |
CTRL-L,CTRL-R |
画面の書き出し |
exコマンドを使った場合 |
:d |
行の削除 |
:m |
行の移動 |
:coまたは:t |
行のコピー |
:.,$d |
カレント行からファイルの最終行までの削除 |
:30,60m. |
カレント行のあとに30潤オ60行目を移動 |
:.,/pattern/co$ |
カレント行からパターンを含んだ行までをファイルの末尾にコピー |
コマンドラインオプション |
vi file |
viをファイルに対して起動 |
vi file1 file2 |
viを指定のファイルに対して順番に起動 |
view file |
viをファイルに対して読み出し専用モードで起動 |
vi -R file |
viをファイルに対して読み出し専用モードで起動 |
vi -r file |
システムクラッシュ後、fileと最近の編集内容を復元 |
vi + file |
起動時にfileの最終行からオープン |
vi +n file |
起動時にfileのn行目からオープン |
vi +/pattern file |
起動時にfileのパターン位置からオープン |
ex file |
コマンドラインからexをfileに対して起動 |
その他のexコマンド |
: |
viからexを起動 |
:sh |
シェルの起動 |
^D |
シェルからエディタに復帰 |
:!command |
commandというUNIXコマンドを実行 |
:r newfile |
現在のファイルにnewfileの内容を読み込む |
:r !command |
commandの出力を現在のファイルに読み込む |
略記 |
:map x sequence |
xというキー入力を、sequenceというコマンドシーケンスとして定義 |
:unmap x |
xのマッピング取消し |
:map! x sequence |
xを、入力モードで呼び出される、sequenceというコマンドシーケンスとして定義 |
:unmap! x |
xの入力モードマッピングの取消し |
:ad addr phrase |
phraseをaddrに略記する定義。addrを入力モードでタイプすると、指定の語句に展開される |
:unab addr |
略記の取消し |
オプション設定 |
:set option |
optionの有効化 |
:set option=value |
optionにvalueを代入 |
:set no option |
optionの無効化 |
:set |
ユーザーが値をセットしたオプションの表示 |
:set all |
すべてのオプションの現在の設定値を一覧表示 |
:set option? |
optionの値の表示 |
終了コマンド |
|
ZZ |
ファイルを書き込んで終了 |
:x |
ファイルを書き込んで終了 |
:wq |
ファイルを書き込んで終了 |
:w |
ファイルの書き込み |
:w! |
(強制的な)ファイルの書き込み |
:30,60w newfile |
30潤オ60行目をnewfileとして書き込む |
:30,60w>>file |
30潤オ60行目をfileに追加して書き込む |
:w %.new |
fileという名前のカレントバッファをfile.newとして書き込む |
:q |
ファイルの編集を終了 |
:q! |
ファイルの編集を終了(全ての変更を無効にする) |
Q |
viを終了してexを起動 |
:e file2 |
viを終了せずにfile2を編集 |
:n |
次のファイルを編集 |
:e! |
現在のファイルを、最後に書き込んだ時点の内容に戻す |
:e# |
もう一方のファイルの編集 |