アフィリエイト広告を利用しています

2022年12月05日

Emacs: emacsclient が動かない問題

Emacs30 にアップデートしてから emacsclient が動かなくなった.

実行すると

$ emacsclient foo
Waiting for Emacs...
*ERROR*: Wrong number of arguments: #, 5

というエラーが出て Emacs 側のバッファーが開かない.

これはとても困るので調べた.

上記のエラーを検索すると, 2020 年にすでに報告されていて, 解決方法も server-switch-buffer: Adjust advice for emacs 28 で提示されている.

server-switch-buffer--with-editor-server-window-alist という関数は with-editor.el という Emacs Lisp ファイル内で定義されている.
そして, 自分の Emacs 環境では with-editor.el というファイルは

(1) \$HOME/.emacs.d/elpa/with-editor-20190715.2007/with-editor.el
(2) \$HOME/.emacs.d/elpa/with-editor-20201030.1232/with-editor.el
(3) \$HOME/.emacs.d/elpa/with-editor-20220608.1017/with-editor.el

の 3 種類存在する. 上記のサイトで提示されたパッチが適用されているのは (2), (3) で, 古い (1) には適用されていない.

ところが, Emacs は (1) の古い with-editor.el を呼びに行っていて, その結果上記の emacsclient のエラーが発生している.
なぜ古い方のファイルを参照するのか, 理由はわからない.

それで, 次の作業を行った.
パッチが適用されている (2), (3) の with-editor パッケージを残して, 古い (1) を削除する.
native lisp のキャッシュも削除する.

$ cd ~/.emacs.d/elpa
$ rm -rf with-editor-20190715.2007
$ cd ~/.emacs.d/eln-cache
$ rm -rf *


これで Emacs を起動し直したところ, emacsclient が正常に動作するようになった.
この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

この記事へのトラックバックURL
https://fanblogs.jp/tb/11736411

この記事へのトラックバック
ファン
検索
<< 2024年09月 >>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          
最新記事
最新コメント
眼科の定期検査 〜 散歩 by コトタマ (02/15)
眼科の定期検査 by 三文字寄れば文殊のヒフミヨ (09/21)
本を読んで過ごす by 底彦 (12/13)
本を読んで過ごす by ねこ (12/12)
数学の計算をする by 底彦 (12/04)
タグクラウド
カテゴリアーカイブ
仕事(59)
社会復帰(22)
(43)
コンピューター(211)
(1414)
借金(8)
勉強(12)
(12)
数学(97)
運動(8)
日常生活(1384)
(203)
健康(36)
読書(20)
プロフィール

ブログランキング・にほんブログ村へ
にほんブログ村
にほんブログ村 メンタルヘルスブログ うつ病(鬱病)へ
にほんブログ村
にほんブログ村 科学ブログ 数学へ
にほんブログ村
にほんブログ村 IT技術ブログ プログラム・プログラマーへ
にほんブログ村