1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

SpacemacsでClojureファイルを開いた時の (wrong-type-argument stringp package-desc)を直す

Posted at

Clojureファイルを開く度にエラー

Spacemacs on Emacs26.3 on Ubuntu18.04LTS on WSL2 on Windows10.cljファイルを開いた時、毎回このエラーが起こる。

File mode specification error: (wrong-type-argument stringp package-desc)

どこに実害があったかわからなかったが、 File mode specification errorは大体どこかの機能に支障をきたしているので直したい。

パッケージの再コンパイルで解決

clj-refactorに関するドンピシャissueがあった。なるほどrefactor…

cf. Wrong type argument: stringp, package-desc

そして解決方法もいくつか提示されていた。注目したのはこれ (Emacs26なので)

Rebuilding all packages after upgrading from 25->26 helped to solve a similar error with a different package, thanks all and especially @kaushalmodi !
I did:
M-: (byte-recompile-directory package-user-dir nil 'force)
see: stackoverflow.com/a/24735377/531439

cf. https://github.com/clojure-emacs/clj-refactor.el/issues/369#issuecomment-388326195

Spacemacsの本体はEmacsなので、当然実行できる。

M-:は、WSL2なら Alt + :
その場で式を入力して実行できるみたい。

M-: (eval-expression)は、ミニバッファーを使って式を読み取り、それを評価します(式を評価する前に、カレントバッファーは、式をタイプするためのミニバッファーではなく、M-:をタイプしたときカレントだったバッファーに切り替わります)。

cf. https://ayatakesi.github.io/emacs/24.5/Lisp-Eval.html

書かれていた通り (byte-recompile-directory package-user-dir nil 'force)を評価すると、再コンパイルが始まる。あとは待っていれば終わるので、Spacemacsを再起動する。

.cljファイルを開いてもエラーが出なくなった :tada:

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?