viエディタの勧め
株式会社テイクーワンT.Kです。
今回はLinux環境でテキストファイルをコマンドライン上で編集できるのに、皆が使いたがらない不人気のviエディタについて。(不人気はあくまでも私の周りだけですが)
何故、不人気なの?
テキスト編集するにはコマンドモードと入力モードの切り替えが必要で、メモ帳やSAKURAエディタのように編集できなくて使いづらい。
何故、使いづらい?
コマンドを知らないとモード切り替えが分からなくて編集できない。
おまけに小文字と大文字で処理内容が異なる。
その為、FTP等でローカルへファイルをダウンロードしてSAKURAエディタ等で編集し、再度アップロード。
この繰り返しでいつまで経ってもviエディタを使わない。
だから一向にコマンドも覚えないという悪循環。
本当に使いづらいのか?
いえいえ、非常に便利ですよ。
私も初めてviエディタでソース開発をした時は、編集中にせっかく入力した内容が取り消されたりとかして「使いづらい」の一言でした。
しかし、開発している環境ではSAKURAエディタの導入も許可されておらず、viエディタしかなかったのです。
1日目より2日目、2日目より3日目と日ごとに慣れていき、1週間経つ頃には入力内容が取り消されたというような失敗はなくなりました。
その時から今日まで非常に有効活用できており、SAKURAエディタ等が無くてもviエディタだけでも不自由なく開発できています。
まずは1週間集中
使用するコマンドを編集に必要な最低限に絞り、とりあえず1週間辛抱してviエディタのみで編集して体(指)に染み込ませる。
挿入、変更、削除、行コピー、行削除、取消の基本コマンドで大丈夫。
【挿入】
新規ファイルを開いた時(何もないテキストに文字を挿入する為)、以下のどちらかをまずは覚える。
- i:カーソルの前に文字を挿入
- a:カーソルの後に文字を挿入
上記それぞれコマンドの後、Enter押下すると改行できる。
入力が終わればコマンドモードへ切り替え。
- Esc:コマンドモードへ
【変更】
文字を変更する場合は以下を覚える。
- r:カーソル上の1文字を変更(1文字入力後に自動でコマンドモードに切り替え)
- R:複数文字を変更。(Esc押下まで変更)
【削除】
文字を削除する場合は以下を覚える。
- x:カーソル上の1文字を削除
- nx:カーソル上からn文字分を削除
(nは削除したい文字数。5xなら5文字削除。削除後にpで削除した文字を挿入可能。)
【行コピー】【行削除】
行ごとコピーする場合
- yy:カーソル上の1行をコピー
- nyy:カーソル上から下へn行をコピー(nはコピーしたい行数)
- p:カーソルの下の行へ挿入(大文字はカーソルの上の行へ挿入)
行ごと削除する場合
- dd:カーソル上の1行を削除
- ndd:カーソル上の1行を削除(nは削除したい行数)
【取消】
コマンドの取消
- u:前回のコマンドの取消
その先は怖いものなし
ここまでのコマンドがミスなく使えるようになれば、もう怖いものなし。
あとは、今回説明しきれないその他のコマンドも覚えていくと、各段と効率よく作業できるはずです。
例えば、画面の分割コマンド「:sp」「:vs」を使って、画面を分割して左右上下に比較したりと幅が広がります。
まずは1週間でコマンドモードと入力モードの切り替えに慣れましょう。