如果不深度定制使用pyim的话,升级也问题不大,不过可能会有bug,因为重构替换了好几十次,难免有一些犄角旮旯的功能出bug
这次重构,主要是简化内部逻辑,功能和原来没有变化
支持 动态调整待选字的顺序 这个功能么?我的一直是不调整的呀。
如果再支持自动上屏就好了,研究了下不知道怎么搞!
五笔有自动上屏功能
很好用的输入法,配合 exwm-xim 的话,不用再装别的输入法了。
不过是不是没办法向 minibuffer 输入中文?
可以的,minibuffer也可以
喔,对,我设置了 minibuffer 行数固定为1,这样就看不到候选。。。
我意识到可以让 pyim 在 minibuffer 输入时,将候选显示在 mode-line (如果存在),eldoc 是这样设计的(eldoc-minibuffer-message
)。
我仿照你的代码写了一段input-method-function
,不过有地方不明白,想请教一下。下面的代码,普通 buffer 是没问题的,但 exwm 的 buffer 的 minibuffer 显示不出任何东西。我看你的代码似乎并没有做什么特殊处理?
(lambda (key)
(if (or buffer-read-only
overriding-terminal-local-map
overriding-local-map)
(list key)
(let ((message-log-max nil)
(yank-list (funcall make-yank-list (window-width))))
(cond ((string= (buffer-name) " *temp*") ;; exwm-xim
(message "%s" (char-to-string key))) ;; show nothing in minibuffer
(t (message "%s" (char-to-string key)))))
(list key)))
原因在于我这里flymake--mode-line-format
会报错wrong-type-argument hash-table-p nil
,然而我开启toggle-debug-on-error
又捕捉不到。。。不知怎么 pyim 不会受影响。。。还是不能依赖 minibuffer 显示。