2021/01/10(日) [n年前の日記]
#1 [emacs] Emacsを設定中
Windows10 x64 20H2上で、Emacs 26.3 x64 を動かせるように設定中。
普段使っている xyzzy は色々なパッケージがWeb上から無くなってしまっているようで、今後どうなるか怖いなと。まだ Emacs あたりを使っていたほうが安心できるかも、と思えてきたので、ひとまず Emacs が動く状態にしておこうかなと。
OSが吹き飛ぶ前までは Emacs 26.3 x64 を動かせていたので、そこまでは復旧(?)できたけど。現行版の Emacs 27.1 を動かそうとしたら、設定ファイル init.el 内でエラーが発生して初期化処理が止まってしまった。
一つは、process-kill-without-query という関数が無い、てな感じのエラー。ググったところ、27.1 では完全に廃止されてしまったらしい…。
_[Emacs] process-kill-without-query が obsolete になっていたので work-around | ゴルディアスの涙目
どこで呼ばれているのか、 ~/.emacs.d/ 以下の *.el に対して grep してみたら gnuserv.el の中で呼ばれていた。
gnuserv というのは、Emacs系エディタでファイルを開こうとした際に、既に Emacs が起動してるならその Emacs で開くようにする仕組み、という説明で合ってるのかどうかわからんけど、たぶんそんな感じ。Windows用のEmacs系エディタとして Mule だの Meadow だのが使われていたような時期に利用されていたらしい。gnuserv.el のタイムスタンプを見たら 1998/02/26 になっていた。20年以上前のパッケージらしい…。
gnuserv (gnuclient) と似たようなツール?として、emacsclient だの emacsclientw だのがあるらしい。Emacs 27.1 のバイナリにも emacsclient.exe、emacsclientw.exe が同梱されていた。とりあえず、そちらを使えないか試してみる。
gnuserv.el を呼ばないようにしたら別のエラーが出てきた。rx なる form がどうとか出ている…。
runemacs.exe --debug-init と打ってみたら、どうも lua-mode でエラーが出てるっぽいような…。
_The mode breaks with newer emacs: Unknown rx form ‘symbol’ - Issue #155 - immerrr/lua-mode
「最新のパッケージをインストールせよ」と書いてあったけど、それをやってみても改善しない。が、lua-mode.elc を削除したら改善したという書き込みがあったので試してみたところ、このエラーは出なくなった。
lua-mode.el をバイトコンパイルしたら直るのかなと試してみたけど、それをしてしまうと、Emacs の起動時に、またエラーが出る。どういうことだろう…。
普段使っている xyzzy は色々なパッケージがWeb上から無くなってしまっているようで、今後どうなるか怖いなと。まだ Emacs あたりを使っていたほうが安心できるかも、と思えてきたので、ひとまず Emacs が動く状態にしておこうかなと。
OSが吹き飛ぶ前までは Emacs 26.3 x64 を動かせていたので、そこまでは復旧(?)できたけど。現行版の Emacs 27.1 を動かそうとしたら、設定ファイル init.el 内でエラーが発生して初期化処理が止まってしまった。
一つは、process-kill-without-query という関数が無い、てな感じのエラー。ググったところ、27.1 では完全に廃止されてしまったらしい…。
_[Emacs] process-kill-without-query が obsolete になっていたので work-around | ゴルディアスの涙目
どこで呼ばれているのか、 ~/.emacs.d/ 以下の *.el に対して grep してみたら gnuserv.el の中で呼ばれていた。
gnuserv というのは、Emacs系エディタでファイルを開こうとした際に、既に Emacs が起動してるならその Emacs で開くようにする仕組み、という説明で合ってるのかどうかわからんけど、たぶんそんな感じ。Windows用のEmacs系エディタとして Mule だの Meadow だのが使われていたような時期に利用されていたらしい。gnuserv.el のタイムスタンプを見たら 1998/02/26 になっていた。20年以上前のパッケージらしい…。
gnuserv (gnuclient) と似たようなツール?として、emacsclient だの emacsclientw だのがあるらしい。Emacs 27.1 のバイナリにも emacsclient.exe、emacsclientw.exe が同梱されていた。とりあえず、そちらを使えないか試してみる。
gnuserv.el を呼ばないようにしたら別のエラーが出てきた。rx なる form がどうとか出ている…。
runemacs.exe --debug-init と打ってみたら、どうも lua-mode でエラーが出てるっぽいような…。
_The mode breaks with newer emacs: Unknown rx form ‘symbol’ - Issue #155 - immerrr/lua-mode
「最新のパッケージをインストールせよ」と書いてあったけど、それをやってみても改善しない。が、lua-mode.elc を削除したら改善したという書き込みがあったので試してみたところ、このエラーは出なくなった。
lua-mode.el をバイトコンパイルしたら直るのかなと試してみたけど、それをしてしまうと、Emacs の起動時に、またエラーが出る。どういうことだろう…。
[ ツッコむ ]
以上、1 日分です。