gyren
1
一直在 Emacs 里用 pyim 的 quanpin ,近期系统输入法改用 fcitx5-rime,所以也想将 Emacs 的输入法改为 rime ,确保用户词库一致(也解决一下 pyim 加载词库会顿 Emacs 几秒时间的状况)。使用过程都很正常愉快,但是在退出 Emacs 时会一直停住,这个时候按 C-g 就可以退出。如果不启用 pyim ,Emacs 也能正常退出。
把 pyim 换成 emacs-rime 也是以上情况,使用 emacs -Q 单独加载 emacs-rime 后也是这样。
大家有遇到过吗,有什么解决办法没有。
有关信息如下:
- 操作系统: Arch Linux;
- Emacs 版本:GNU Emacs 29.3 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.41, cairo version 1.18.0);
- liberime v0.0.6-30-gcc9eb98;
- emacs-rime v1.0.5-18-gd8c0a99;
- pyim v5.3.3
试一下 (setq confirm-kill-processes nil)
我帮你 @ 一下 emacs-rime 的作者 @DogLooksGood
gyren
6
emacs -Q
启动后加载以下内容:
(add-to-list 'load-path "~/.config/emacs/lib/rime")
(add-to-list 'load-path "~/.config/emacs/lib/dash")
(setq rime-user-data-dir "~/.config/emacs/rime/")
(setq default-input-method "rime")
(require 'rime)
再按 C-\ 切换输入法,然后 C-x C-c 退出 Emacs ,光标就开始转圈圈
SPQR
7
退出之前先M-x toggle-debug-on-quit
这样再 C-g的时候会弹出backtrace,看看能不能找到什么有用的信息
我这儿是退出的时候segmentation fault了
1 个赞
gyren
9
也是直接就退出 Emacs 了,没有 backtrace ,也没有其他信息。
会不会不是 Emacs 的问题,而是跟 liberime 或者 librime 有关系呀。
elx123
11
原因应该是librime 这个库调用glog的时候出现并发问题, 我是手动编译librime 同时关闭了glog这个选项,就不会出现这些问题了
gyren
12
感谢!我用 pyim ,改成 (add-hook 'kill-emacs-hook #'liberime-finalize)))
可行。
gyren
13
更底层的就不探究了 ,以上就作为一个变通的解决方法了。
elx123
14
我这边crash 都是提示glog 被多次初始化, 一怒之下,我直接手动编译,关闭了glog ,现在非常稳定