xyzzy のバックアップ差分(No.4)



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

(書きかけ。というか頓挫したので大幅書き直し予定。)
&size(20){WindowsユーザーのためのEmacs入門};

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

Meadowは、Windows向けのEmacsクローンのひとつ。

#contents

*インストール [#b90c5dd8]
*なぜEmacsを使うのか [#ja1ba94c]

+ ここからダウンロード
--http://www.meadowy.org/meadow/
--Netinstall安定版のsetup-ja.exeをダウンロードする
--ダウンロードしたファイルを適当なフォルダに放り込む
--これはインストーラーを起動するだけで、これが本体をダウンロードする
+ダウンロードしたsetup-ja.exeを起動すると、ウィザードがスタートする
+ウィザードの最後で、install.exeを起動し(ややこしい)
--Meadowのコマンドラインで、作業用ディレクトリを指定する(例:\home)
--これで、Meadow起動用のショートカットアイコンが作成される
+それからさらにImageMagickをインストールする
+初期設定
--初期設定のためには、テキストエディタの操作を覚えなくちゃならない。
--だけどまだMeadowの操作を覚えていない。
--そんな場合は、既存のエディタで設定ファイル(.emacs)を作っても良いかも。
--設定ファイルができるまでは、日本語の表示や入力がおかしい。
カッコ良さそうだから:-) そんなところから始めるのが良いんじゃないでしょうか。

*困ったところ [#k953bc03]
-インストールウィザードだけでは、インストールが完了しない。
-メニューが日本語にならないのはナゼ? = 仕様
-そのままでは、日本語変換から入力できないゾ。 = 初期設定が必要
-コピペで文字化け = 初期設定が必要
あと、Emacsを覚えれば、Windows以外の環境でも良く似たエディタを見つけやすくなるでしょう。

*チュートリアルを読もう[#z5fd95d3]
*どれを選ぶか。どのように学習するか [#f3699b8b]

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

Emacsは、Windowsが生まれる前から、マウスを使わずに効率よくテキストを編集するツールとして高い評価を得てきた。だから操作の基本は、キーボードショートカット。オーバーラップ式のマルチウィンドウでさえない。マウスは、あんまり使わなくてもいいが、慣れているところは使ったほうがラクだと思う。
今回私は、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」を解凍する
+これだけ。スタートメニューに登録したり、関連付けはしてくれないので、自分でヤル。

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

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

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

+「Help」-「Emacs Tutorial(Choose language) 」
+エディタ下部に、"ja"と入力
以下は、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);

**アドバイス [#o85aaf14]

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

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

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

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

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

**Xyzzyを便利に使うヒント [#y389612a]

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

*操作一覧 [#m45a74eb]

-操作の中心はマウスではなく、キーボードショートカット
-Cキーは、Ctrlキー(を押しながら)
-Mキーは、Altキー(を押しながら)。または、Escキー(を押してから)
-複数のショートカットを組み合わせて使う場合は、画面下部の行に途中経過を表示
-この画面下部の行をエコーエリアとかミニバッファと呼ぶ(ことがある)
-Xyzzyは、チュートリアルの記述と一部動作が異なる

**起動 [#f029d8ca]
-スタートメニューから呼び出したり、ショートカットアイコンをダブルクリックしたり。
-ただし、デフォルトで開かれたウィンドウは、まっさらなテキスト編集領域ではない。
--これはそのままでは保存できない。
--Meadowなどでは、これをそのままで保存できない。
--テキストを作成し始める前に、テキストファイル名を指定する。

**ファイル [#yca8110b]
-ファイルを開くまたは新規作成 「C-x」-「C-f」-(ファイル名)
--新規作成する場合も、最初にファイル名を指定している。
--新規作成する場合も、最初にファイル名を指定する。''(Xyzzyは不要)''
-上書き保存する「C-x」-「C-s」
-指定したバッファを保存 「C-x」-「s」-(ファイル名)

 ミニバッファでは、上下矢印キーで履歴を表示する。
 ファイル名(あるいはウィンドウ名とかバッファ名)は、一番下のモードラインに表示されている。

**終了 [#m693d684]
-「C-x」-「C-c」

**ウィンドウとバッファ [#od6cae5d]
-バッファをひとつにする 「C-x」「1」
-バッファを切り替える 「C-x」-「C-f」-(ファイル名) 
-バッファをひとつにする 「C-x」-「1」
-次のバッファに切り替える 「C-x」-「o」
-バッファを指定して切り替える 「C-x」-「C-f」-(ファイル名) 
--つまり、ファイルを開くのと同じ
--あるいは、「C-x」-「b」-(バッファ名)
-開いているバッファの一覧を表示 「C-x」-「C-b」 Buffer

 Emacsは、テキストファイルなどをバッファという単位で記憶している。
 バッファは、ウィンドウの中に複数に区切って表示できる。
 でも、最初は1つだけ。

**キャンセル [#ld029d89]
-アンドゥ 「C-x u」または「C-_」(つまり、Ctrl+Shift+(バックスラッシュ))
-アンドゥ 「C-x u」または「C-_」(つまり、Ctrl+Shift+(バックスラッシュ)) ''Xyzzyは、C-\''
--ツールバーのアンドゥボタンも使える(なんて分かりやすい)。
--前置引数も使える
--再入できないモノも元に戻せる。
--''Xyzzyは、C-_でやり直し''
-操作のキャンセル「C-g」
-使用不可コマンド 確認行が表示されたら「スペース」or「n」

**移動 [#ydf4ba8f]
-ページ
--次ページ 「C-v」
--前ページ 「M-v」
-文字
--次の文字 「C-f」 Foward
--前の文字 「C-b」 Back
-単語
--次の単語 「M-f」 Foward
--前の単語 「M-b」 Back
-行
--次の行 「C-n」 Next
--前の行 「C-p」 Prev
--行頭 「C-a」 Ahead
--行末 「C-e」 End
-段落
--文頭 「M-a」 Ahead
--文末 「M-e」 End
--文頭 「M-a」 Ahead ''(Xyzzyは動作せず)''
--文末 「M-e」 End ''(Xyzzyは動作せず)''
-ファイル
--先頭 「M-<」(つまり「Alt+Shift+,」)
--末尾 「M->」(つまり「Alt+Shift+.」)

 「PgUp」や「PgDn」、矢印キーも使用可。スクロールバーやマウスホイールも有り。
 でもホームポジションから遠い。

**挿入 [#f3c26504]
 普通のテキストエディタと同様。
 前置引数が使えます。

**削除 [#q274abdb]

-文字
--カーソル前の文字を削除 「Backspace」
--カーソル位置の文字を削除 「C-d」または「Delete」 Delete
-単語
--カーソル前の単語を削除 「M-Backspace」
--カーソル位置の単語を削除 「M-d」
-行
--カーソル位置から行末までを削除 「C-k」 Kill
-段落
--カーソル位置から段落末までを削除 「M-k」 Kill
--カーソル位置から段落末までを削除 「M-k」 Kill ''(Xyzzyは動作せず)''
-範囲を指定して削除
--マウスでドラッグして、「Delete」
--範囲の先頭で「C-@」あるいは「C-(Spc)」、範囲の末尾で「C-w」

 消去(kill)と削除(delete)の違いに注意。
 deleteしたものは、再挿入できない(アンドゥで戻るけど)。
 消去(kill)したものを、再挿入することを再入(ヤンク:Yanking)と呼ぶ。

**再入(ヤンク?) [#ib26d0ab]
-最後に消去したモノを再挿入 「C-y」
-以前に消去したモノを再挿入 「C-y」-「M-y」
-前置引数で「M-y」の記録を移動できる
--例:「C-y」-「M-y」-「M-y」-「M-y」-「C-u」-「3」-「M-y」最後を3つとばす
--例:「C-y」-「M-y」-「M-y」-「M-y」-「C-u」-「-2」-「M-y」最後から2つさかのぼる

**コマンドの拡張 [#u721ad05]
-「C-x」-「(コマンドキー)」
--例:「C-x」-「C-f」-(ファイル名)
-「M-x」-「(コマンド名)」
--例:「M-x」-「replace-string」-(検索語)-(置換語)
--このとき、ミニバッファにカーソルが移動する
-ミニバッファから抜け出す 「Esc」「Esc」

**そのほか [#f9951bc2]
-ヘルプ 「C-h」 ''(Xyzzyは動作せず 「ヘルプ」-「キー割り当て一覧」を参照)''
-画面の書き直し 「C-l」 (カーソル位置が画面中央に来る)
-数値入力 「C-u」-「(数値)」または「M-(数値)」
-数値入力 「C-u」-「(数値)」または「M-(数値)」「Esc-(数値)」が便利
--前置引数、つまりこの後の操作を複数回繰り返す
--例:「C-u」-「3」-「C-n」3行次へ移動する
--例:「C-u」-「3」-「C-b」3文字前へ移動する
--例:「C-u」-「3」-「*」***を入力

*参考リンク [#e380e906]

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

** Xyzzy [#o59658b9]

-xyzzyオフィシャル
--http://www.jsdlab.co.jp/~kamei/
-xyzzy page
--http://www.jsdlab.co.jp/~kei/xyzzy/
-xyzzy wiki
--http://xyzzy.s53.xrea.com/wiki

** 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
-Emacsクイックリファレンス
--http://www.unixuser.org/~euske/doc/emacsref/
-Emacs-wikipedia
--http://ja.wikipedia.org/wiki/Emacs
-xyzzyオフィシャル
--http://www.jsdlab.co.jp/~kamei/
-xyzzy page
--http://www.jsdlab.co.jp/~kei/xyzzy/
-xyzzy wiki
--http://xyzzy.s53.xrea.com/wiki/


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