編集の要約なし |
|||
4行目: | 4行目: | ||
==環境とシェル== | ==環境とシェル== | ||
{| class="wikitable" style="vertical-align: top; width: 100%" summary=" | {| class="wikitable" style="vertical-align: top; width: 100%" summary="環境とシェル" | ||
|- | |- | ||
!コマンド | !コマンド | ||
31行目: | 31行目: | ||
==画面分割== | ==画面分割== | ||
{| class="wikitable" style="vertical-align: top; width: 100%" summary="画面分割" | |||
|- | |||
!コマンド | |||
!説明 | |||
|- | |||
|<code>:sp filename</code> | |||
|filename を横分割で開く | |||
|- | |||
|<code>:vsp filename</code> | |||
|filename を縦分割で開く | |||
|- | |||
|<code>[Ctrl] + [W] + j/k/l/h</code> | |||
|下/上/右/左のウィンドウに移動 | |||
|- | |||
|<code>[Ctrl] + [W] + [3+/3-]</code> | |||
|ウィンドウの横軸を3つ広げる/縮める | |||
|- | |||
|<code>[Ctrl] + [W] + [3>/3<]</code> | |||
|ウィンドウの縦軸を3つ広げる/縮める | |||
|- | |||
|} | |||
==テキスト移動== | ==テキスト移動== | ||
{| class="wikitable" style="vertical-align: top; width: 100%" summary="テキスト移動" | |||
|- | |||
!コマンド | |||
!説明 | |||
|- | |||
|<code>h, j, k, l</code> | |||
|左、下、上、右 | |||
|- | |||
|<code>w, W, b, B</code> | |||
|前/後の単語(大文字は大きいジャンプ) | |||
|- | |||
|<code>e, E</code> | |||
|単語の末尾(大文字は大きいジャンプ) | |||
|- | |||
|<code>), (</code> | |||
|次/前の文章へ | |||
|- | |||
|<code>}, {</code> | |||
|次/前の空行で区切られたブロックへ | |||
|- | |||
|<code>%</code> | |||
|括弧の終端へ | |||
|- | |||
|} | |||
==行移動== | ==行移動== |
2019年1月30日 (水) 21:09時点における版
天才ビル・ジョイが作ったエディタ。
環境とシェル
コマンド | 説明 |
---|---|
:set nu
|
行番号表示をオン |
:set hlsearch
|
検索時のハイライト表示をオン |
:sh, ^D
|
シェルを起動、終了 |
:!command
|
コマンドを実行 |
:n,m! command
|
n行目から m行目まで command でフィルタ処理 |
:r !command
|
コマンドを現在のファイルに読み込む |
画面分割
コマンド | 説明 |
---|---|
:sp filename
|
filename を横分割で開く |
:vsp filename
|
filename を縦分割で開く |
[Ctrl] + [W] + j/k/l/h
|
下/上/右/左のウィンドウに移動 |
[Ctrl] + [W] + [3+/3-]
|
ウィンドウの横軸を3つ広げる/縮める |
[Ctrl] + [W] + [3>/3<]
|
ウィンドウの縦軸を3つ広げる/縮める |
テキスト移動
コマンド | 説明 |
---|---|
h, j, k, l
|
左、下、上、右 |
w, W, b, B
|
前/後の単語(大文字は大きいジャンプ) |
e, E
|
単語の末尾(大文字は大きいジャンプ) |
), (
|
次/前の文章へ |
}, {
|
次/前の空行で区切られたブロックへ |
%
|
括弧の終端へ |
行移動
- [Enter] --- 次の行
- 0, ^, $ --- カレント行の先頭/文字先頭/末尾
- - --- 上の行の文字先頭
- H --- Head. 画面の最上行
- M --- Middle. 画面の中央行
- L --- Last. 画面の最下行
- nH, nL --- 上/下から n行目
- z[Enter] --- カーソル位置を画面の一番上に
- z. --- カーソル位置を画面中央に
- z- --- カーソル位置を画面の一番下に
スクロール
- [Ctrl] + [Y], [Ctrl] + [E] --- 1行ずつ上/下にスクロール
- [Ctrl] + [U], [Ctrl] + [D] --- 半画面ずつ上/下にスクロール
- [Ctrl] + [B], [Ctrl] + [F] --- 1画面ずつ上/下にスクロール
検索
- tx --- カレント行内でカーソルより後方にある x の直前にジャンプ
- Tx --- カレント行内でカーソルより前方にある x の直前にジャンプ
- fx --- カレント行内でカーソルより後方にある x にジャンプ
- Fx --- カレント行内でカーソルより前方にある x にジャンプ
- [;], [,] --- カレント行の文字検索を前方/後方に繰り返す
- /pattern --- 前方にパターンを検索
- ?pattern --- 後方にパターンを検索
- * --- カーソル上のテキストを検索
- n, N --- 直近の検索を前方/後方に繰り返す
置換
- :s/old/new/ --- カレント行の最初の old を new に置換
- :s/old/new/g --- カレント行の全ての old を new に置換
- :1,$s/old/new/g, :%s/old/new/g --- ファイル全ての old を new に置換
- :%s/old/new/gc --- ファイル全ての old を逐一確認しながら new に変換
- ~ --- 大文字/小文字に変換
行番号とマークによるジャンプ
- [Ctrl] + [G] --- ファイル名、状態、カレント行番号の表示
- gg --- ファイル先頭にジャンプ
- G --- ファイル末尾にジャンプ
- :n --- n行目にジャンプ
- mx --- 現在位置を x としてマーク
- `x --- x にジャンプ
挿入と変更
- i, a --- カーソルの前/後にテキストを挿入
- I, A --- 行の先頭/末尾にテキストを挿入
- O, o --- カーソルの上/下にテキストを挿入
- r --- 一文字変更
- cw --- 単語変更
- cc --- カレント行を変更
- c + [motion] --- モーションで指定した場所までを変更
- C --- 行末まで変更
- R --- 重ね書き
- s, S --- 1文字/カレント行をテキストに変更
- 3iFOO --- FOO が3回入力。Vim によるテキスト編集はプログラミング
削除とヤンク
- x, X --- 文字を前方・後方に削除
- dw --- 単語を削除
- dd --- カレント行を削除
- D --- 行末までを削除
- d + [motion] --- モーションで指定した場所までを削除
- yw --- 単語のヤンク
- yy, Y --- カレント行のヤンク
- y + [motion] --- モーションで指定した場所までをヤンク
- P, p --- 削除/ヤンクしたテキストをカーソルの前/後にペースト
- "aY --- レジスタa にカレント行を登録
- "aP --- カーソルの前に、レジスタa のテキストをペースト
- :reg --- レジスタ一覧
- [Ctrl] + [R] a --- (挿入モードで)レジスタa をペースト
- [Ctrl] + [R] + --- (挿入モードで)クリップボードをペースト
その他
- . --- 直近の編集コマンドの繰り返し
- v, V --- 文字/行の選択
- ggVG --- ファイル内全てを選択
- u, U --- アンドゥ、カレント行の復元
- [Ctrl] + [R] --- リドゥ
- J --- 2行の連結
exアドレスと活用
- 1,$ (%) --- ファイル内全ての行
- x,y --- x行目から y行目まで
- [0], [.], [$] --- ファイルの先頭/カレント行/最終行
- :3,5d --- 3行目〜5行目を削除
- :.,$d --- カレント行からファイル最終行までを削除
- :3,5m0 --- 3行目〜5行目をファイル先頭に移動
- :3,5m10 --- 3行目〜5行目を10行目に移動
- :3,5co$ --- 3行目〜5行目をファイル最終行にコピー
保存と終了
- [ESC], [Ctrl] + [ --- 挿入モードへ
- :e! --- 一番最初の状態へ戻す
- :w, :w! --- 保存、強制的に保存
- :3,5w newfile --- 3〜5行目を newfile として保存
- :3,5w>>file --- 3〜5行目を file に追記
- ZZ --- 保存して終了
- :q, :q! --- 終了、変更を破棄して終了
- Q --- viモードを終了して exモードに切り替える
- :vi --- viモードに戻る