viには中毒性がある


お久しぶりです。
今日はvi(vim)とはどんなエディタなのかを紹介します。


みなさんはエディタは何を使っていますか?
特にプログラムを書くときのエディタはなんですか?
僕はviを使っています。
(よくviとエディタ戦争で争われるemacsは全然使ったこと無いので、
どちらが良いかは分かりません)


このviというエディタは一般的なエディタとはまったく別物です。
viにはインサートモードとコマンドモードというモードがあります。
インサートモードでは"普通"に文字を書くことができます。


問題はコマンドモードです。
コマンドモードでは特定のキーを押すことにより色々な操作が可能です。
例えば

[h]左に移動(←キーに相当)
[j]下に移動(↓キーに相当)
[k]上に移動(↑キーに相当)
[l]右に移動(→キーに相当)
[dd]1行削除
[x]1文字削除
[yy]1行コピー
[p]貼り付け
[:num]num行目に移動
[:%s/foo/hoge/]fooをhogeに置き換える
[/foo]fooを検索する

([h]はhキーを1回押すという意味、[dd]はdキーを2回押すという意味)
などなどです。
このほかにも大量にあります。
(僕は基本的なものぐらいしか使えてませんが)


hjklでカーソルを移動するというのは面倒くさいように
思われるかもしれませんが、慣れると最高に使いやすいです。
なぜなら、ホームポジションからほとんど手を動かすことなく
カーソルを移動できるからです。
コピー、貼り付け、削除だってそうです。


つまり無駄な手の動きが少なく、すばやく操作できるのです。
慣れると本当、段違いに操作が早くなります。
特にプログラムを書くときにその威力を発揮します。


そしてこのインサートモードと、コマンドモードの切り替えは
インサートモード → コマンドモードは[esc]
コマンドモード → インサートモードは[a]や[i]や[o]などです。


で、viに慣れてくるとメモ帳とかでもついつい
escを押したりhjklで移動しようとしたりします。
viに慣れるとviしか使いたくありません。
viには中毒性があるのです。


ちょっとでもviに興味を持った方はgvim(Windows版)を
ftp://ftp.vim.org/pub/vim/pc/gvim71.exeから落としてみましょう。


ではでは。


■参考
・Vi Wikipedia
http://ja.wikipedia.org/wiki/Vi


・Vim
http://www.vim.org/