tumashu / pyim

一个 emacs 中文输入法,支持全拼,双拼,五笔,仓颉和Rime,pyim 是 GNU elpa 包。
891 stars 93 forks source link

进入pyim输入时出现 wrong-type-argument: hash-table-p:Quit错误 #434

Closed lptl closed 2 years ago

lptl commented 2 years ago

toggle-debug-on-error之后backtrace记录如下:

Debugger entered--entering a function: #f(compiled-function () #<bytecode 0x1582f46d6331>)() async-handle-result(#f(compiled-function (_) #<bytecode 0x1582f471b8a9>) (async-signal (wrong-type-argument hash-table-p Quit:)) #<buffer *emacs*<2>>) async-when-done(#<process emacs<1>> "finished\n")

使用pyim很久了,第一次出现这个错误,进入pyim后准备输入时报这个错。重启emacs再使用pyim依然报错。

tumashu commented 2 years ago

不好判断,可以先检查一下词库缓存是不是损坏,在.emacs.d/pyim/dcache 目录下

在 2022-02-25 17:18:21,OPa @.***> 写道:

toggle-debug-on-error之后backtrace记录如下:

Debugger entered--entering a function:

f(compiled-function () #<bytecode 0x1582f46d6331>)()

async-handle-result(#f(compiled-function (_) #<bytecode 0x1582f471b8a9>) (async-signal (wrong-type-argument hash-table-p Quit:)) #<buffer emacs<2>>) async-when-done(#<process emacs<1>> "finished\n")

使用pyim很久了,第一次出现这个错误,进入pyim后准备输入时报这个错。重启emacs再使用pyim依然报错。

— Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android. You are receiving this because you are subscribed to this thread.Message ID: @.***>

lptl commented 2 years ago

删除dcache目录之后重启emacs是一样的报错,之前dcache目录内容如下 image

tumashu commented 2 years ago

把pyim和emacs-async 重装一遍试试

tumashu commented 2 years ago

另外词库缓存中有个人词库缓存和词频缓存,最好不要删除

lptl commented 2 years ago

重新安装async和pyim也是一样的报错。 这是pyim相关配置

(require 'pyim)
(require 'pyim-basedict)
(pyim-basedict-enable)
(setq default-input-method "pyim")
(global-set-key "\C-f" 'toggle-input-method)

async还有被magit-todos使用,但是我删除magit-todos也是一样的报错。

tumashu commented 2 years ago

看不出什么问题,你可以试试 emacs -Q, 看能不能重现这个问题。

lptl commented 2 years ago

emacs -q 启动没有问题,应该是我个人配置的问题。