xyzzy のバックアップの現在との差分(No.14)



  • 追加された行はこの色です。
  • 削除された行はこの色です。
[[FrontPage]]

&size(20){WindowsユーザーのためのEmacs入門(xyzzyによる)};
#title("WindowsユーザーのためのEmacs入門(xyzzyによる)")

Unix系のすごいプログラマの多くの人がEmacs(イーマックス)というテキストエディタ(というか統合デスクトップ環境)を使っているらしい。前からずっとモノにしたいと思って、何度か挫折しているんだけど、それを今回こそ何とかしてみようという記録です。昨夜、使い始めたばかりなんだけどね。
Unix系のすごいプログラマの多くの人がEmacs(イーマックス)というテキストエディタ(というか統合デスクトップ環境)を使っているらしい。前からずっとモノにしたいと思って、何度か挫折しているんだけど、それを今回こそ何とかしてみようという記録です。

追記:結局、数年にわたって、xyzzyを使っていますが、いまだ最小限のキーボードショットカットとマウスが中心です。

#contents

*なぜEmacsを使うのか [#ja1ba94c]

カッコ良さそうだから:-) そんなところから始めるのが良いんじゃないでしょうか。

あと、Emacsを覚えれば、Windows以外の環境でも良く似たエディタを見つけやすくなるんじゃないかと。

*どれを選ぶか。どのように学習するか [#f3699b8b]

Emacsには、いくつか種類がある。だから、使いやすいものを選ぶのが吉。

今回私は、xyzzyを使用した。これは、亀井哲弥さんが開発したWindows向けのEmacsクローンのひとつ。メニューは日本語化されているし、配布ファイルを解凍するだけで、すぐに使い始めることができる。最初はMeadowを使おうとしたけれど、エディタとして使い始めるまで時間がかかってしまったので路線を変更しました。
今回私は、xyzzyを使用しました。これは、亀井哲弥さんが開発したWindows向けのEmacsクローンのひとつ。メニューは日本語化されているし、配布ファイルを解凍するだけで、すぐに使い始めることができます。最初はMeadowを使おうとしたけれど、エディタとして使い始めるまで時間がかかってしまった(チュートリアルを終わらせても、まだ日本語入力できなかった)ので路線を変更しました。

一方で、xyzzyにはチュートリアルが付属していません。そこで、このページからEmacsのオフィシャルチュートリアルにアクセスできるようにしておきますんで読んでみてください。

それから、すでにWindowsで何かテキストエディタを使用しているなら、そのうちの良く使っている機能をリストアップしておくといいかも。そして、Emacsの対応機能を確認しておく(私の場合、意外と少なかった)。そこさえ押さえれば案外移行しやすい(かも)。

*インストール [#b90c5dd8]

+オフィシャルサイトから「Xyzzy version 0.2.2.235」をダウンロード
--http://www.jsdlab.co.jp/~kamei/
+ダウンロードした「xyzzy-0.2.2.235.lzh」を解凍する
+[[xyzzy - カスタマイズ可能で軽快な Windows 用テキストエディタ:http://xyzzy-022.github.com/]]からダウンロード
+ダウンロードしたファイルを解凍する
+これだけ。スタートメニューに登録したり、関連付けはしてくれないので、自分でヤル。

*チュートリアルを読もう[#z5fd95d3]

さて起動したら、最初にチュートリアルをやる。

私の場合、全部読むのに4時間ほどかかりました。
メモを取ったり、実験しながらだけど、それなりに集中力が必要になる。
その気になったときに、一気にやるのが良いんじゃないだろか。

以下は、Meadow2.10.8に付属していたチュートリアルの日本語版。オリジナルは文字コードが「iso-2022-jp」だったので、シフトJIS版も用意しました。これをエディタに読み込んで、読みながら操作してみよう。

Xyzzyでは、Emacsと少々異なるショートカットキーがあるので、注意しよう。

**Emacsチュートリアル [#m304a129]

iso-2022-jp版

&ref(meadow_TUTORIAL.ja.txt);

sjis版

&ref(meadow_TUTORIAL.ja_sjis.txt);

-[[tutorial_1]]
-[[tutorial_2]]
-[[tutorial_3]]
-[[tutorial_4]]

**アドバイス [#o85aaf14]

Emacsはテキストエディタなんだけど、Windowsの操作体系からするとかなり独特。だから、最初の練習が肝心。楽器の弾き方を覚えるようなもんだろうか。身につけるまでは大変だけど、身体が覚えてしまえば、自由に音楽を生み出せるようになる(はず)。

Emacsは、Windowsが生まれる前から、効率よくテキストを編集するツールとして高い評価を得てきた。だから操作の基本は、キーボードショートカット。オーバーラップ式のマルチウィンドウでさえない。これは当時マウスがほとんど普及していなかったため。

Emacsは、キーボードショートカットを使いこなすと、どんどん効率が上がっていく(らしい)。まあ、使えるところはマウスを使ってラクしたほうがいいけどね。

チュートリアルでは、ごく当たり前のことも説明している。文字の入力や削除方法とか、ページの右端まで入力したら、どのように行が折り返すとか。これは当時、ワードプロセッサも一般的でなかったため。

一方で、定番のWindows用テキストエディタとは、コンセプトが異なる機能も多数。

だから、こういうクラシカルなところは、気にとめないで素直な気持ちでザクザク読もう。

* Windowsユーザーのためのヒント [#y389612a]

とはいえ、あんまりにも独特すぎると、やっぱり使いにくい。すでにコンピュータもテキストエディタもありふれたものなんだから、その流儀には合わせないと、効率が落ちすぎる。そこで、Windowsっぽく使うための設定変更のヒント。
Emacsは、今となっては、あんまりにも独特すぎる。たぶん、パソコンが普及していなくて、ほとんdの人がワープロもテキストエディタも初めてという時代には、平気だったのだろうけど、21世紀には学習コストが高くて、やっぱり使いにくい。すでにコンピュータもテキストエディタもありふれたものなんだから、その流儀には合わせないと、効率が相当落ちます。そこで、Windowsっぽく使うための設定変更のヒント。

**ツールバー [#r6878f99]

「表示」-「ツールバー」-「標準」で表示される。

**キー割り当て一覧 [#dcb1240b]
「ヘルプ」-「キー割り当て一覧」で表示される。
-[[キー割り当て一覧>xyzzy/key_map]]

**ドラッグ&ドロップで編集する [#o07d6bdc]

共通設定を変更する

+「ツール」-「共通設定」
+「さまざま」タブを選択
+"D&D編集する"をオンにする

** キー割り当てを変更する [#td911e7f]
Windowsの標準キー割り当てを利用するためには(コピペとか)、キーバインドを変更する必要がある。そのための設定ファイルが容易されているので、それを使えばいい。ただし、オリジナルの設定と重なっているところがあり、それが使えなくなる場合があるので注意が必要です。たとえば、winkey.lでは、範囲選択中に「C-c」「C-x」が使えません。
Windowsの標準キー割り当てを利用するためには(コピペとか)、キーバインドを変更する必要があります。そのための設定ファイルが用意されているので、それを使えばいい。ただし、オリジナルの設定と重なっているところがあり、それが使えなくなる場合があるので注意しましょう。たとえば、winkey.lという設定ファイルでは、範囲選択中に「C-c」「C-x」が使えません。

-.xyzzyファイルの作成
++xyzzyの空ファイルを「.xyzzy」というファイル名で保存する。
++保存先は、とりあえず、xyzzy.exeと同じ場所。
-環境変数を設定する
++マイコンピュータを右クリック->「プロパティ」
++「詳細設定」タブ->「環境設定」ボタンをクリック
++「詳細設定」タブ->「環境変数」ボタンをクリック
++「ユーザー環境変数」の「新規」ボタンをクリック
---変数名:XYZZYHOME
---変数値:(.xyzzyファイルを置いてある場所 例:C:\Documents and Settings\(user)\My Documents\_tools\xyzzy)
-「.xyzzy」ファイルに次行のどちらかを記述する

 (load-library "winkey")  #コピペとアンドウ

 (load-library "gates")  #全部Windows風

-再起動する
-参考 xyzzy wiki - quick tour
--[[.xyzzyファイルを作り、環境変数を設定する:http://xyzzy.s53.xrea.com/wiki/index.php?QuickTour%2F%C3%D6%A4%AD%BE%EC%BD%EA%A4%F2%B7%E8%A4%E1%A4%EB]]
--[[キーバインド:http://xyzzy.s53.xrea.com/wiki/index.php?QuickTour%2F%A5%AD%A1%BC%A5%D0%A5%A4%A5%F3%A5%C9]]
--[[キー割り当て一覧>xyzzy/key_map]]
--新しいキーバインドを調べるには、次のファイルを参照

 xyzzy.exeのあるフォルダ内の、$XYZZY/lisp/winkey.l または $XYZZY/lisp/Gates.l

*基本操作の一覧 [#m45a74eb]
** Emacsの編集キー割り当て [#p0b0a47c]

|機能|Windows|Emacs|
|切り取り|C-x|C-Space -> C-w|
|コピー|C-c|C-Space -> Alt-w|
|貼り付け|C-v|C-y(直後にAlt-yで履歴を貼り付け)|
|やり直し|C-z||

マウスでドラッグすれば、その範囲をコピーしたり削除できるんだけど、スクロールすると範囲が消えてしまいます(xyzzyの場合)。そこで、広い範囲の選択/切り取りは、次のようにEmacsの機能を使います。

+切り取り範囲の先頭で、C-Space(マーク)
+切り取り範囲の最後で、C-w(切り取り)
+挿入先で、C-y(貼り付け)

**マウスホイールの画面スクロール時、セレクション解除を防止 [#kcbad96a]

-[[tips/マウスホイールで画面をスクロールさせてもセレクションを解除されないようにする - XyzzyWiki:http://xyzzy.s53.xrea.com/wiki/?tips%2F%A5%DE%A5%A6%A5%B9%A5%DB%A5%A4%A1%BC%A5%EB%A4%C7%B2%E8%CC%CC%A4%F2%A5%B9%A5%AF%A5%ED%A1%BC%A5%EB%A4%B5%A4%BB%A4%C6%A4%E2%A5%BB%A5%EC%A5%AF%A5%B7%A5%E7%A5%F3%A4%F2%B2%F2%BD%FC%A4%B5%A4%EC%A4%CA%A4%A4%A4%E8%A4%A6%A4%CB%A4%B9%A4%EB]] うおー、便利だ。

** Markdown対応と文字コード [#g0b56ace]

-[[Markdown 関連 - かきかたえんぴつ:http://empitsu.hatenablog.com/entry/2013/02/13/213205]]

*チュートリアルを読もう[#z5fd95d3]

さて起動したら、最初にチュートリアルをやります。

私の場合、全部読むのに4時間ほどかかりました。
メモを取ったり、実験しながらなので、それなりに集中力が必要になる。
その気になったときに、一気にやるのが良いでしょう。

以下は、Meadow2.10.8に付属していたチュートリアルの日本語版。オリジナルは文字コードが「iso-2022-jp」だったので、シフトJIS版も用意しました。これをエディタに読み込んで、読みながら操作してみましょう。

Xyzzyでは、Emacsと少々異なるショートカットキーがあるので、注意しましょう。

**Emacsチュートリアル [#m304a129]

iso-2022-jp版

&ref(meadow_TUTORIAL.ja.txt);

sjis版

&ref(meadow_TUTORIAL.ja_sjis.txt);

-[[tutorial_1]]
-[[tutorial_2]]
-[[tutorial_3]]
-[[tutorial_4]]

**アドバイス [#o85aaf14]

Emacsはテキストエディタなんだけど、Windowsの操作体系からするとかなり独特。だから、最初の練習が肝心。楽器の弾き方を覚えるようなもんだろうか。身につけるまでは大変だけど、身体が覚えてしまえば、自由に音楽を生み出せるようになる(はず)。

Emacsは、Windowsが生まれる前から、効率よくテキストを編集するツールとして高い評価を得てきました。だから操作の基本は、キーボードショートカット。オーバーラップ式のマルチウィンドウでさえありません。これは当時マウスがほとんど普及していなかったため。

Emacsは、キーボードショートカットを使いこなすと、どんどん効率が上がっていく(らしい)。まあ、使えるところはマウスを使ってラクしたほうがいいけどね。

チュートリアルでは、ごく当たり前のことも説明しています。文字の入力や削除方法とか、ページの右端まで入力したら、どのように行が折り返すとか。これは当時、ワードプロセッサも一般的でなかったため。

一方で、定番のWindows用テキストエディタとは、コンセプトが異なる機能も多数。

だから、こういうクラシカルなところは、気にとめないで素直な気持ちでザクザク読みましょう。

**基本操作の一覧 [#m45a74eb]

チュートリアルを読みながらまとめた、基本操作のリファレンス。

[[リファレンス>xyzzy_reference]]

*参考リンク [#e380e906]

ちょっと調べるといろいろ出てきます。

** Xyzzy [#o59658b9]

-xyzzyオフィシャル
-[[xyzzy - カスタマイズ可能で軽快な Windows 用テキストエディタ:http://xyzzy-022.github.com/]]
-オリジナル版開発者の亀井さんのサイト
--http://www.jsdlab.co.jp/~kamei/
-xyzzy page
--http://www.jsdlab.co.jp/~kei/xyzzy/
-xyzzy wiki
--http://xyzzy.s53.xrea.com/wiki
-xyzzy lisp プログラミング
--http://homepage2.nifty.com/coin/xyzzy_lisp_prog/index.html
-xyzzy FAQ
--http://www.netlaputa.ne.jp/~henmi/lisp/xyzzy/

** Emacs [#h413face]

-Emacs-wikipedia
--http://ja.wikipedia.org/wiki/Emacs
-Emacsクイックリファレンス
--http://www.unixuser.org/~euske/doc/emacsref/
-初心者向けHowto
--http://www.linux.or.jp/JF/JFdocs/Emacs-Beginner-HOWTO.txt

**Meadow [#i81cac22]

-Meadowオフィシャル
--http://www.meadowy.org/meadow/
-Meadow FAQ
--http://www.bookshelf.jp/texi/meadow-faq/meadow-faq.html
-Meadow設定メモ
--http://niwaken.s6.xrea.com/tips/meadow.html


トップ   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS