@kyanny's blog

私は天才ではありません。ただ、人より長く一つの事と付き合っていただけです - アインシュタイン

下手の横好き エディタ編

や、タイトルとか特に深い意味はなくて、ただ最近なにかっていうとエディタを使いやすくするためにごにょごにょやってるばっかりではてダに書いてないなーと思ったので、生きてます宣言というか。

で、エディタなんですが、大きく三つに分けて捉えてて。

  • Vi 系列( Vim など)
  • Emacs 系列( Meadow, xyzzy など)
  • その他(秀丸など)

こういう分類なのは、見てわかるとおり、どういうキーバインドかが鍵になってるわけです。 Emacs ないし Vi をわざわざ Windows で使おうというのは、プログラミング支援が強力とかいう理由じゃなくて、キーバインドに慣れてきたから(矢印キーで移動してらんない)。

自分がメインで使ってるのが Windows 環境で、そこでいかに高性能で使い心地の良いエディタを選ぶか、っていうのを試しているのが楽しくて楽しくて。試行錯誤の結果うまくいったりするともう脳内麻薬でまくりみたいな。

自分のエディタ遍歴は、プログラムを書き始めてからでいうと、 Windows 付属の notepad が二ヶ月か三ヶ月*1、それから先輩の勧めで ViVi を半年弱使って、そこから gVim Kaoriya 版を一年半くらい。その間、 Meadow に何度もチャレンジして、うまく設定できずに挫折を繰り返してきました。去年の夏ごろに Meadow2 を Netinstaller で入れてからは、しばらく Meadow をメインで使い、たまに Vim や xyzzy と併用という形をとっています。起動することがあるのは、 gVim Meadow2 xyzzy の三つだけで、他のエディタは基本的にインストールすらしていません。

この三つはどれも高性能で使い勝手もよく、甲乙つけがたいんですが、それぞれちょっとずつ不満な点もあって。

  • Vim
    • Emacsen のキーバインドに慣れると ESC で通常モードに戻るのが面倒
    • gnuserv のような挙動を再現できていない(ウィンドウを何枚も開かないようにする)*2
  • Meadow
    • cperl-mode のシンタックスハイライトが Vim のそれに比べて物足りない。 print "$hoge moemoe"; とかやったときに、Vim は $hoge だけ色分けしてくれるし、 use stirct; とかスペルミスしてるとハイライトされずにすぐわかる。 cperl-mode では両方ともだめ。
    • 起動が遅い。全体的に動作が重い。
  • xyzzy
    • Meadow に比べて情報量が少ない。便利そうな拡張はたくさんありそうだけどイマイチどこからたどっていけばいいかつかみづらい。

で、シンタックスハイライトの素晴らしさから Vim への想いを断ち切れず、しかしもう指は Emacs を忘れられない・・・という、いわば両手に花で嬉し困った状態が続いていたんですが、 Meadow のカスタマイズをひとつするたびに、また NTEmacs だとか他のものの情報を仕入れたりするたびに、 xyzzy のよさを再確認する、みたいなことが多くなってきました。

サーバマシンにログインして PuTTY からごにょごにょやってるときは Vim を起動してるんですが、サーバには X 環境は入ってないし syntax は無効になってるんだけど気にせず作業してるので、実は自分が思っているより必要とはしてなかったのかも?とか考えたり。なまじ Windows の色数の多いデスクトップで起動するからきれいな色分けが気になるってだけなのかなあ、とか。

自分はミーハーなので、 Vim にしろ Meadow にしろ、使い始めた理由は「そのほうがカッコよさそうだから」だったんですが、全然使いこなせてないくせに「俺は○○使いだぜ」みたいなニセプライドに依存するのはちょっとやめる方向でいこうかなあとか。来月で 26 だし。 25 で「俺は○○使いだぜ」なんて思っちゃってるのは十分やヴぁいとは思いますがw

でまあ、「 cperl-mode じゃ不満だから俺がいつか cperl+-mode でも作ってやるぜ!」とかいう方向にモチベーションをあげていって elisp を極めていくっていう希望というか妄想も全然捨ててないんですが、そんなことばっかやってて肝心の Perl のコードを一行も書いてない、みたいな事態はよくないし本末転倒っぽいよね、とも思っていて。なので、ちょっとこう、「安定して使える」ところまでもっていって、プログラミングならプログラミングに気持ちを集中させていきたいなあと。わき道それすぎってことですハイ。


だらだら長ったらしく書きましたが、「エディタのカスタマイズめっちゃ楽しい!今日は xyzzy がスゲーと思った!」っていう、これぞ日記ってやつです。「はてなダイアリー」の面目躍如です。 Vi も Emacs も奥が深いのでなかなか飽きがきませんが、もし飽きたら今は萌ディタが一番アツイらしいのでそれに手を出してみようかなと思います。

あーあとホント些細なことだけど些細だからこそ気になるのが xyzzy で一点あった。 Redo が Meadow だと C-/ の逆向き、みたいな扱いになってて、 Undo していきすぎたら C-g C-/ って打つのにこれまた指が慣れてしまったので、 xyzzy の Redo がよくわからない。デフォルトの C-_ だか Shift 一緒押しだかは打ちづらいし、 emacskey.l にさらに Meadow っぽいキーバインドにするやつも入れてるので、余計によくわかんないというか。 Undo/Redo のときに一文字ずつ巻き戻るのはむしろこっちのほうが便利(ちょっとかったるいけど)

とまあ、こんなことばっかやってます。早く環境整えて、「環境がイマイチ気に入らないからコードを書くきがでない」なんて言い訳を自分自身できないような状況にもっていきたい。

*1:「プログラムというのはメモ帳で書けないといけないもの」だと勝手に思い込んでいて、先輩に笑われました

*2:これはたぶん設定次第でできて、自分の力量不足が原因のはず。。