「viとは」でviがどんなものか少しつかめたと思います。
次はviでテキストファイルを編集する上で知っておくべき基本的な操作方法を説明します。
1. コマンドモードと挿入モード
viには「コマンドモード」と「挿入モード」の二つのモードがあります。
コマンドモードでは、文字列検索、カーソルの移動、コピー&ペーストなどを行います。
一方挿入モードではファイルへの文字列挿入を行います。
この二つのモードの行き来は以下のようになります。
- コマンドモード ➡︎ 挿入モード
- i (カーソルの手前に挿入される)
- a (カーソルの後ろに挿入される)
- 挿入モード ➡︎ コマンドモード
- ESCキー
ちなみにviを起動したらコマンドモードから始まります。
2. 文字の挿入
iやaを押して挿入モードになったらそこからのキー入力はそのままテキストファイルに挿入されます。
たとえばコマンドモードの状態で「abc」と入力するとbcが挿入されます。
3. カーソルの移動
カーソルの移動が素早く柔軟に行えるのもviの大きな長所の一つです。
以下にカーソルの移動方法一覧を示します。
入力キー | 意味 |
---|---|
p |
一つ上の行に移動 pの前に数字を入れるとその数字の分だけ上の行に移動する |
j |
一つしたの行に移動 jの前に数字を入れるとその数字の分だけ上の行に移動する |
h |
一つ左の文字に移動 hの前に数字を入れるとその数字の分だけ上の行に移動する |
l |
一つ右の文字に移動 lの前に数字を入れるとその数字の分だけ上の行に移動する |
G | 最後の行に移動 |
数字G | 数字で指定した行に移動 |
0 | 行の先頭に移動 |
^ | 行の最初の文字に移動 |
$ | 行の最後に移動 |
w | 次のwordに移動する。 |
Ctrl-u | 半画面上に戻る |
Ctrl-d | 半画面下に進む |
4. コピーと切り取り
コピーや切り取りもコマンドモードで行います。
入力キー | 意味 |
---|---|
x |
1文字切り取り(削除)。 xの前に数字を入れるとその数分の文字数が切り取られる。 |
dd |
1行丸ごと切り取り(削除)。 ddの前に数字を入れるとその数分の行が切り取られる。 |
yy |
1行丸ごとコピー。 yyの前に数字を入れるとその数分の行がコピーされます。 |
6. 貼り付け
貼り付け方法は以下の二種類あります。
入力キー | 意味 |
---|---|
p | 文字の貼り付けならカーソルのある文字の右側に、行の貼り付けならカーソルのある行の次の行に貼り付けられます。 |
P | 文字の貼り付けならカーソルのえる文字の左側に、行の貼り付けならカーソルのある行の手前の行に貼り付けられます。 |
7. 文字列の検索
文字列検索も簡単です。
•/検索文字列
/(スラッシュ)の後に検索したい文字列を入れるだけで検索できます。
たとえば「/abc」と入れて、エンターキーを押せばabcという文字列がある場所まで移動します。
続けてエンターキーを押すと次のabcに移動します。
検索は今ある位置から下に進みますが、SHIFTを押しながらエンターキーを押すと上に向かって検索できます。
9. 文字列の置換
置換の方法はいくつかあります。
入力キー | 意味 |
---|---|
r |
カーソルがある文字を別の文字に変更できます。 たとえばmという文字にカーソルがある状態で「rj」とすれば、mがjに変わります。 |
cw |
一つの文字列を別の文字列に置き換えます。 例えば「abc efg hijk lll」という文章があった場合にeのところにカーソルがある状態で「cwjejeje」と入力し、最後にESCキーを押すと、efgという文字列がjejejeにかわります。 |
/