2005-12-09 [長年日記]

[Haskell] Haskell mode for xyzzy

以前導入しようとしたときには、xyzzy使いならば必ず見たことがあるであろう「名前が衝突するのでexportできません」というエラーメッセージで導入できませんでした。

あまりこのあたりのことがわかっていないのでいい加減なのですが、.xyzzyやsiteinit.lを評価する時点では、現在のパッケージはuserで、editorパッケージが(use-package)されているような雰囲気がします。ということは、

(push '("\\.hs$" . hs-mode) *auto-mode-alist*)
(autoload 'hs-mode "hs-mode" t)

だと、userパッケージにhs-modeというシンボルを定義した挙句、hs-mode.lがロードされるときにeditorパッケージ内でhs-modeというシンボルを定義しようとするとエラーになってしまいそうです。そこで、

(push '("\\.hs$" . editor::hs-mode) *auto-mode-alist*)
(autoload 'editor::hs-mode "hs-mode" t)

のようにして、editor::hs-modeを直接参照するように変更したらエラーにならずにロードできるようになりました。本当に理解があっているかどうかは謎ですが、とりあえず動いているしいいかということで。


トップ «前の日記(2005-12-08) 最新 次の日記(2005-12-10)»