doom emacs中使用pyim-wubidict出现SPC或数字选字时:"No code found for s%"

.doom.d/packages.el设置如下: (package! pyim-wbdict) .doom.d/config.el设置如下:

(setq pyim-default-scheme 'wubi)
(pyim-wbdict-v86-enable) 
(pyim-isearch-mode 1)

如果用 SPC 或是数字键,选字就会出现如下如下情况: pyim 出现错误:(error "No code found for 输入字符"),开启 debug-on-error 后可以了解详细情况。

如果是四码唯一时自动上屏则没有问题。

开启debug-on-error后如下: image

升级pyim试试

pyim是才装的,pyim-wubidict也是才装的,doom也是几天内装的。pyim 以及 ace-pinyin 等都是doom emacs自带的,好像是通过 straight 安装的。我用doom upgrade升级后还是一样的问题。

解决问题了,直接把.emacs.d\.local\straight\build-27.2\pyim内的删掉,从git上把最新的拉下来放里面就能正常使用了。

谢谢作者大大。如果可以的话,建议可以和emacs-smart-input-source一样,切换输入法后改变光标颜色。很多时候输入后才发现输入法状态不对,即使有点石成金,将编码变换成中文,但也是很麻烦的,中间多了几个流程:

1、 输入一串字符;

2、 发现输入法状态不对;

3、 想输入中文输入法是英文,思考是直接backspace backspace… 还是点石成金;

   想输入英文输入法是中文,在五笔等输入法超过四码,自动上屏,又只有回退。

这其中多了几个思考过程,带来了极不流畅的的体验,如果在输入之前就知道输入法状态,能减少几个思考、分支判断、回退。

提交个issue吧,有时间我研究研究,我现在用pyim的当时比较严格,只有在汉字后面才能输入中文,所以很少遇到米这种纠结

你说的是不是这个功能?

谢谢,vim切换输入法老难题了。和sis两个方向,sis用系统输入法能保持输入习惯,pyim内建不影响和依赖系统输入法,作为不依赖词库的形码,换电脑不需要再装输入法,改码表,改输入法配置,也能保持统一。两种方案都很棒。

而且在安卓的termux-app里面用emacs,用pyim切换输入法也更方便。

pyim, emacs-rime, sis 是 emacs 的三个输入法方案,都值得尝试尝试,然后选择适合自己的

你好,我设置了(setq pyim-indicator-cursor-color '("orange" "red")),然后中文状态显示 orange,英文状态显示灰色。请问要怎么设置才能显示两种颜色呢。

应该就是这么设置的

但是好像不起效果,原本应该是orange red,现在是orange 默认的灰色,不知道是不是和evil冲突。

因为我需要设置cursor type来区别insertnormal,设置了:

(setq evil-insert-state-cursor '((bar . 3)  "red")
      evil-normal-state-cursor '(box "lime green"))

如果我加入了以上两行,会出现三种颜色,insert:中文red,英文默认的灰。normal,lime green。

现在注释掉了,insert state的光标还是bar,原本都是box,但是颜色没有了。

我想知道在你的电脑上没有没有evil,能不能显示正常,是不是我的插件冲突。

如果有其他用 doom 的也可交流。

我觉得你可以在 normal 模式关闭 pyim 的自动光标颜色,毕竟你的normal 永远是英文。insert 状态 让pyim 来管理颜色。

如果按以上设置,pyim 就是不管理 normal 的颜色,会造成三种颜色。

那三种颜色其实就是你想要的了。至于为什么读到灰色,你得看看pyim 的实现了。我不使用evil 和doom,没法测试你的情况。另外,你可以试试,清空下历史,重启emacs试试看。

我只想要两种颜色,我希望用cursor type来区分insertnormal,用cursor color来区分`中英文输入状态。

作者大大,对于你的五笔码表,我觉得有一些问题:

https://github.com/tumashu/pyim-wbdict/issues/9

我提供了两个码表,但由于不懂 elisp,没有修改配置,如果你觉得还行,可以合并一下:

https://github.com/tyoul29/pyim-wbdict/tree/master

你可以试试 (setq pyim-indicator-use-post-command-hook nil) 你只要两种颜色,为什么还要设置“ lime green”