ToDo:
Emacs 30.1に更新したら、japanese/lookupが壊れたぽぃ
M-x lookupで単語検索すると
Looking up `foo'... (検索対象の辞書名...) lookup-dictionary-search-cache-get: Wrong type argument: obarrayp, [nil nil nil nil nil nil nil nil nil nil ...]
で結果が戻ってこない
UIにバインドされている関数lookup-find-patternを追いかけて、入力パターンを受けて実行される部分をscratch buffer上で評価して詳細なエラーログを取得してみた
(lookup-search-pattern (lookup-current-module) "test") C-j Debugger entered--Lisp error: (wrong-type-argument obarrayp [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...]) intern("test" [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...]) lookup-dictionary-search-cache-get(#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options (:alias "readers") :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-query :method regexp :string "test" :pattern "test")) lookup-dictionary-search-internal(#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options (:alias "readers") :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-query :method regexp :string "test" :pattern "test")) #f(compiled-function (query) #<bytecode -0x4b416b1ee2a9b0>)(#s(lookup-query :method regexp :string "test" :pattern "test")) mapcar(#f(compiled-function (query) #<bytecode -0x4b416b1ee2a9b0>) (#s(lookup-query :method regexp :string "test" :pattern "test"))) lookup-dictionary-search-multiple(#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options (:alias "readers") :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") (#s(lookup-query :method regexp :string "test" :pattern "test"))) lookup-dictionary-search(#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options (:alias "readers") :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-query :method default :string "test" :pattern "test")) lookup-search-query(#s(lookup-module :name "scrup" :dictionaries (#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options ... :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/NaturalScienceEtoJ" :options ... :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ") :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ/body") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/NaturalScienceJtoE" :options ... :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE") :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE/body") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "kojien" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kojien") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/readers") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "wachu5" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/wachu5") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "kanjigen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kanjigen") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "gn06ep01" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/gn06ep01") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "jyukugo" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/jyukugo") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "katakana" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/katakana") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "screen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/screen")) :bookmarks nil :priority-alist ((#s(lookup-dictionary :agent ... :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ/body") . t) (#s(lookup-dictionary :agent ... :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") . t) (#s(lookup-dictionary :agent ... :name "screen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/screen") . t) (#s(lookup-dictionary :agent ... :name "katakana" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/katakana") . t) (#s(lookup-dictionary :agent ... :name "jyukugo" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/jyukugo") . t) (#s(lookup-dictionary :agent ... :name "gn06ep01" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/gn06ep01") . t) (#s(lookup-dictionary :agent ... :name "kanjigen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kanjigen") . t) (#s(lookup-dictionary :agent ... :name "wachu5" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/wachu5") . t) (#s(lookup-dictionary :agent ... :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/readers") . t) (#s(lookup-dictionary :agent ... :name "kojien" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kojien") . t) (#s(lookup-dictionary :agent ... :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE/body") . t))) #s(lookup-query :method default :string "test" :pattern "test")) lookup-search-pattern(#s(lookup-module :name "scrup" :dictionaries (#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options ... :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/NaturalScienceEtoJ" :options ... :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ") :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ/body") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/NaturalScienceJtoE" :options ... :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE") :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE/body") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "kojien" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kojien") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/readers") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "wachu5" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/wachu5") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "kanjigen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kanjigen") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "gn06ep01" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/gn06ep01") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "jyukugo" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/jyukugo") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "katakana" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/katakana") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "screen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/screen")) :bookmarks nil :priority-alist ((#s(lookup-dictionary :agent ... :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ/body") . t) (#s(lookup-dictionary :agent ... :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") . t) (#s(lookup-dictionary :agent ... :name "screen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/screen") . t) (#s(lookup-dictionary :agent ... :name "katakana" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/katakana") . t) (#s(lookup-dictionary :agent ... :name "jyukugo" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/jyukugo") . t) (#s(lookup-dictionary :agent ... :name "gn06ep01" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/gn06ep01") . t) (#s(lookup-dictionary :agent ... :name "kanjigen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kanjigen") . t) (#s(lookup-dictionary :agent ... :name "wachu5" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/wachu5") . t) (#s(lookup-dictionary :agent ... :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/readers") . t) (#s(lookup-dictionary :agent ... :name "kojien" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kojien") . t) (#s(lookup-dictionary :agent ... :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE/body") . t))) "test") (progn (lookup-search-pattern (lookup-current-module) "test")) eval((progn (lookup-search-pattern (lookup-current-module) "test")) t) elisp--eval-last-sexp(t) #f(compiled-function () #<bytecode 0x1842a8d95a4a>)() handler-bind-1(#f(compiled-function () #<bytecode 0x1842a8d95a4a>) (error) eval-expression--debug) eval-last-sexp(t) eval-print-last-sexp(nil) funcall-interactively(eval-print-last-sexp nil) call-interactively(eval-print-last-sexp nil nil) command-execute(eval-print-last-sexp)
当然だが、Emacs 29.4上では発生しない…なんだこれ?
なんか、(lookup-current-module)の評価値が、Emacs 29.4環境とEmacs 30.1環境で違うような… .emacs回りの再現性は要確認か?
カテゴリー: Admin | Emacs | EPICS | Fortran | FreeBSD | GCC | hgsubversion | IPv6 | KEKB | LHC | Lisp | LLVM | MADX | Ryzen | SAD | samba | tDiary | unix | WWW | YaSAI | お仕事 | イベント | 出張 | 宴会 | 数学 | 艦これ | 買いもの | 追記 | 雑記