たまにどうしてもLinux上でテキストを修正しないといけない場合がある。
そのたび毎度リファレンス片手に、たどたどしく修正するのをやめようと思った。
入門書などでは新規作成の手順から入るけれど、
個人的にViで必要となる動作の需要は以下の順序になる。
1,既存テキストの確認
2,既存テキストの修正
3,テキストの新規作成
ので、上記の順で、手順を書いていく。
ファイルの確認(読み取り専用)
対象のファイルがある場所まで移動して
view ファイル名
「vi -R」と同義。
読み込み専用でファイルを開く。
Vi慣れてない内は、誤って編集してしまいそうになるので、これが安全。
下記はtestのみ書かれたテキストを開いた状態。
- ファイルを閉じる
:q
:q! //強制終了
誤って修正した場合保存せず閉じたい場合は!をつける
viewコマンドから使われることはないはず。新規や編集の際に使用。
ファイルの編集
vi 既存ファイル名
testと書かれたテキストファイルを開いている状態。
viは開いた直後はコマンドモードになっているため入力できない。
入力するにはi
キーを入力する。
i //入力モード
Esc //元に戻す
セットで覚えておいた方がいい。
入力モードに移行して、左下がINSERTになっているのが確認できる。
入力
入力終わったらコマンドモードに移行(Escキー)
u //やり直す
Ctrl + R //元に戻す
:w //保存
ショートカットキー的な挙動はすべてコマンドモードで、
入力モードに関しては、本当に文字のみの入力という感じだろうか。
編集のときと同じく:qで終了
コマンドモードかつ、半角英数字の入力であれば、左下にコマンドが表記される。
編集して保存せずに:qで閉じようとすると怒られる。
:wで保存するなり、:q!で保存せず終了なりで対応すること。
ファイルの新規作成
vi 新規ファイル名
左下がNewFileとなっているが、基本的に編集と同じように操作してよい(はず)
ファイル名を指定しないと、タイトル画面が表示されたり、
vi新規起動時のタイトル画面はCtrl + L(画面再描写)で消える。
また、新規時にファイル名を指定していないので、
保存する際には引数にファイル名を指定すること。
補足
テキスト量が多い場合、上記のみだと厳しいので。。。
//vi起動中からの行表示
:set num
:set number
コマンド | 挙動 |
---|---|
Ctrl + F | 画面1ページ分進む |
Ctrl + B | 画面1ページ分戻る |
:行番号 | カーソルを指定行に進む |
/文字列 | 検索 |