xyzzy QandA

カスタマイズ

カスタマイズコードを常時使用するにはどうしたら良いですか?

管理番号 15
最終更新 2003/05/27 23:24:04
初期化ファイルに記述し,設定を反映させておいて下さい。
関連項目
Top

初期化ファイルとはなんですか?

管理番号 16
最終更新 2003/05/27 23:38:23
初期化ファイルとは,特別な設定をすることなく xyzzy が評価してくれるフ
ァイルです。

xyzzy の初期化ファイルには,.xyzzy (先頭にドットが付いてます) と 
siteinit.l の二種類があります。どちらも,インストールした時点では存在
しませんので,自分で作成する必要があります。

初期化ファイルは,以下の場所に作成してください。

  ~/.xyzzy
  $XYZZY/site-lisp/siteinit.l

"~/" は,xyzzy のホームディレクトリ,"$XYZZY" は,xyzzy をインストール
したディレクトリです。
Top

.xyzzy と siteinit.l の違いは?

管理番号 17
最終更新 2003/06/12 18:12:12
[.xyzzy の特長]
・xyzzy 起動時に評価されます。
・設定を反映させるには,xyzzy を再起動させます。
・エラーが発生しても xyzzy は起動します。

[siteinit.l の特長]
・ダンプファイル作成時のみ評価されます。
・設定を反映させるためのは,ダンプファイルを作成しなおす必要があります。
・バイトコンパイルすることができます。
・.xyzzy より高速です。
・エラーが発生すると xyzzy は起動に失敗します。

今後あまり書き換えないコードは,siteinit.l に記述した方が効率がいいか
もしれません。どちらか悩ましい場合は,.xyzzy に記述しておけば良いと思
います。
関連項目
Top

マルチユーザな環境の PC で,初期化ファイルをユーザー毎に使い分けるにはどうしたら良いでしょう?

管理番号 127
最終更新 2003/06/21 23:00:19
マルチユーザーな環境で使用する場合は,siteinit.l に全ユーザ共通の設定
を,.xyzzy に各ユーザ毎の設定を記述することになります。

.xyzzy を使い分けるためには,以下のような設定によりユーザ毎にホームデ
ィレクトリを指定し,そのディレクトリに .xyzzy を置く必要があります。

Windows NT 系の OS では,環境変数 XYZZYHOME をユーザー環境変数に設定し,
各ユーザ毎に異なるディレクトリを指定します。

Windows 9X 系の OS ではユーザー毎に異なる XYZZYHOME の値を持つことはで
きないので,$XYZZY/usr/(ユーザ名)/(OS名)/xyzzy.ini で指定することに
なります。例えばホームディレクトリを P:/home/piyo に設定する場合は,以
下のような記述を追加します。

  [init]
  homeDir="P:/home/piyo"

この方法は,NT 系の OS でも使用することができます。また,xyzzy.ini で
設定されたホームディレクトリは,環境変数 XYZZYHOME より優先されます。
関連項目
Top

バイトコンパイルってなんですか?

管理番号 18
最終更新 2003/06/12 18:25:59
"バイトコンパイルは実行速度を (たいていの場合) 速くするための方法" (by 
亀井さん)です。

テキストで書かれた lisp コード(*.l)をバイトコンパイルするには, M-x 
byte-compile-file からファイル名を指定し Enter するか,ファイラで選択し
て "B" します。これにより,バイトコンパイルされたファイル(*.lc)が作成さ
れます。

テキストで書かれたコードよりもバイトコンパイルされたファイルの方を読み
込むことで実行速度が(たいていの場合)速くなるみたいです。
Top

メモ帳で .xyzzy というファイル名のファイルが作れないんですけど…。

管理番号 19
最終更新 2003/06/12 18:33:13
メモ帳でセーブするときに,".xyzzy" というようにダブルクォートで囲んで
ください。
Top

siteinit.l に書いたカスタマイズコードが反映されないのですが…。

管理番号 20
最終更新 2003/06/12 18:42:02
siteinit.l の内容を反映させるには,以下の手順で行ないます。

  1. siteinit.l をバイトコンパイルして siteinit.lc を生成します。(推奨)
  2. xyzzy を終了します。
  3. Shift + Ctrl を押しながら xyzzy を起動します。

Shift + Ctrl を押しながら xyzzy を起動することにより,ダンプファイルが
再生成されます。

Shift + Ctrl を押しながら xyzzy を起動するかわりにダンプファイルを削除
してから xyzzy を起動しても良いのですが,siteinit.l 評価時にエラーが発
生すると,xyzzy が起動しなくなるので注意が必要です。Shift + Ctrl を押
しながら xyzzy を起動すると,エラーが発生しても元のダンプファイルに戻
してくれるようなので,こちらのほうが安全です。

ちなみに .xyzzy の内容は xyzzy を再起動すれば反映されます。
関連項目
Top

siteinit.l は,バイトコンパイルしないといけないのですか?

管理番号 83
最終更新 2003/06/28 14:20:35
必須ではありませんが,推奨(たぶん)と思います。

バイトコンパイルしないで使う場合は,siteinit.lc を削除しておいてくださ
い。
Top

「予期しないEOFを検出しました」といわれ,xyzzy が起動しなくなってしまいました。

管理番号 21
最終更新 2003/06/15 15:30:12

おそらく siteinit.l 中の記述に,括弧が対応していない個所があります。ダ
ンプファイルが存在しないのを確認した後,以下の手順で復旧させてください。

  1. $XYZZY/site-lisp/siteinit.lc を削除する。(もしあれば)
  2. xyzzy 以外のテキストエディタで,siteinit.l を修正する。
  3. xyzzy を起動する。

または,

  1. siteinit.lc を削除する。
  2. siteinit.l を別の名前にしておく。(siteinit.l.bak とか)
  3. xyzzy を起動する。
  4. siteinit.l を元の名前に戻し,修正する。
  5. 設定を反映させる。

でも良いと思います。
Top

xyzzy の拡張ライブラリには,どんなものがありますか?

管理番号 90 (拡張機能)
最終更新 2003/06/17 01:20:32
Extended xyzzy lisp library を参照ください。
  → http://hie.s64.xrea.com/xyzzy/extlib/
Top

xyzzy の拡張ライブラリを簡単に導入したいのですが…。

管理番号 91 (拡張機能)
最終更新 2003/06/17 01:24:20
Masashi Hattori さんの NetInstaller を導入することにより,最新
のパッケージを簡単に取得することができます。
  → http://www.mirai.ne.jp/%7Egyo/

また,オートロード機能を使うことにより,初期化ファイルの設定を
することなく拡張ライブラリの機能を使うことができるようになりま
す。
Top