« 今日の早川さん | トップページ | [超]WORK HACKS! »

2007年10月14日 (日)

入門xyzzy

Windowsの定番エディタと言えばメモ帳ですが、しょぼい(wので、秀丸やらTerapadを使っている方も多いと思いますし、UNIX/Linuxな人はWindowsでもEmacsかviが使いたいなーと感じてると思います。僕もホームポジションから手を離さなくて良いEmacs(mule)の操作が気持ち良くて好きなので、できればWindowsでもEmacs使いたいと思いつつ使っておりませんでした。と言うのも、そもそもEmacsとWindowsではショートカットのバインディングが合わない(C-cって何?C-sって何?)ので、先入観もあってEmacsの移植版のMeadowとか使いづらいんだろうなーと。で、結局メモ帳つかってました。
で、数年前、先輩に「変なエディタがあるよ」と言われてxyzzyの存在を知りました。Emacsの操作系をほぼ再現しているnativeなWindowsアプリケーションなところがミソです。はじめはそれこそパチモンで表面的にぱくってるだけだろうと思っていましたが、信じられないほど高機能&多機能で、xyzzyという名前さえ読みやすければもっと普及してるじゃないかとさえ思います。

リージョンとクリップボードを明確に区別する姿勢や、Windowsっぽいメニューやツールバーやタグというインタフェースを提供しつつ、その実態はLISP処理系というカッコよさがたまりません。

さて、そこで本書「入門xyzzy」です。

入門と名前にあるので、既に多少xyzzyを使っている人にとっては当たり前のことが書いてあるだけなんだろうと当初はスルーしていたのです(←おなじ過ちを犯している)が、評判を読むとどうやらそうではないらしい。むむ、今度本屋で見かけたら買わねばならないかも・・・で、買いました。本書は4名の著者の共著なのですが、あとがきに「本書の執筆メンバーでさえ、執筆開始時点ですべての標準機能を把握していた人はおらず、・・・」と書かれていました。xyzzyが如何に多機能か、そしてその豊富な機能を如何に本書に詰め込んだかが伺えます。xyzzyについて本を書こうという人たちですら標準機能の全体像を把握していなかったのです!xyzzyについてちょっとしか知らない私においておや。その情報が全部載ってます。すごい。

何より、Common LISPとは何ぞやというところにまで解説が及んでいるので、Emacsは好きだけど、カスタマイズはWebに書かれた設定をコピペするのが関の山って私みたいな人が、次の一歩を踏み出すのにはちょうど良さそうです。

xyzzyとCommon LISPの関係は、excelとVBAの関係に似ていると思いました。xyzzyはテキストエディタに見えますが、その実、テキスト編集用の標準関数がたくさん用意された、Common LISPのインタプリタ処理系なのです。

本書をお勧めする対象は・・・
■xyzzyを知らないけど、Emacs/muleに親しんでる人
Emacs系のエディタが好きで、WindowsでもEmacsしたい人はxyzzyを使いましょう。そして本書で勉強しましょう。デフォルトではEmacsとの微妙な違いが気になるでしょうが、それを修正する方法も載っています。

■xyzzyに触り始めたばかりの人
戸惑うことが多いと思います。本書で解決しましょう。

■xyzzyをしばらく使っている人
執筆者ですら本書を書くまで知らない機能があったのです。わからない、知らない機能がきっとあります。あっと驚く役立つ機能が見つかるかもしれません。

僕が本書で知ったのは、フレーム、キルリング、セレクションリング、ナローイング、セレクションとリージョンの矩形処理の詳細、buffer-menuの操作方法、などなど。とりあえず活用したのは、まだ.xyzzyとか環境変数XYZZYHOMEについて整理をしただけですが^^;

さて、これだけxyzzyを礼賛しておきながら、実際一番長く使ってるのはBecky!のエディタだということに今更ながら気づきました。メールの本文だけxyzzyで書くように連携できないかな。。。と思ったら、やり方ありました。
ここを参考にさせていただきました。
■設定方法
1.becky!のメール作成ウィンドウ→[ツール(T)]→[外部編集ツールの設定(X)...]で、外部設計ツールウィンドウが表示される。
2.外部編集ツールウィンドウ内の、[外部テキストエディタ]欄にxyzzy.exeを指定する。これがxyzzycli.exeだと、起動済みのxyzzyの新バッファとして起動してまうので、下に書くとおりxyzzy→Becky!への反映で困る
■使い方
1.becky!のメール作成ウィンドウを起動する。リプライを書く時など、必要であれば引用をしておく。
2.メール作成ウィンドウ→[ツール(T)]→[外部編集(E)]で、新ウィンドウでxyzzyが起動する。xyzzyのウィンドウには、自動的に、1.でメール作成ウィンドウに書かれていた本文(引用など)が反映される。
3.上記xyzzyで本文を作成し、上書き保存(C-x C-s)し、終了(C-x C-c)する。
4.xyzzyでの編集結果が、1.のメール作成ウィンドウに反映される。
5.メール作成ウィンドウで、メール送信等を行う。

|

« 今日の早川さん | トップページ | [超]WORK HACKS! »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/207693/16751687

この記事へのトラックバック一覧です: 入門xyzzy:

« 今日の早川さん | トップページ | [超]WORK HACKS! »