比pyim快,但是迁移起来没pyim好,因为必须依赖外部的librime
速度根本感觉不到延迟,速度就和我用fcitx-rime差不多。
第一次切换到rime输入法的时候会进行编译,
但是编译的时候遇到了问题,它找不到emacs-module.h
我是gentoo跑emacs
find /usr/include -name 'emacs-module.h'
输出:
/usr/include/emacs-26/emacs-module.h
看了看lib.c的源码应该改成这样再编译:
23c23
> #include <emacs-26/emacs-module.h>
---
< #include <emacs-module.h>
然后重新编译就通过了。
1 个赞
hek14
2
那是因为你安装emacs的时候prefix指定的关系吧
Gentoo 的 emacs ebuild:
227 econf \
228 --program-suffix="-${EMACS_SUFFIX}" \
229 --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
230 --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
231 --localstatedir="${EPREFIX}"/var \
232 --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
是EMACS_SUFFIX在起作用
emacs-module 这个文件确实是一个问题,这个文件好像是在 ./configure 的时候生成的。
在不同的发行版上,这个文件的位置有所不同。
只能通过用户手动解决了,emacs也没有提供pkg-config 什么的
作者被 arch 惯坏了,最开始的版本就一个 gcc 直接编译,啥都能找到。
arch的包管理只安一个版本的Emacs 当然没有问题了。
Gentoo 提供了安多个版本Emacs的方法才放在非标准目录的.
事实上大多数发行都是Arch那种标准目录的。
我一般就是工具应用 emacs, urxvt, inkscape, firefox 之类的只装一套,其它的东西都是 docker。
wanglm
10
可以试试设置rime-emacs-module-header-root
(when (string-match-p "gentoo" operating-system-release)
(setq rime-emacs-module-header-root
(concat "/usr/include/emacs-"
(number-to-string emacs-major-version)
(when (string-match-p "0.50" emacs-version)
"-vcs"))))
1 个赞
lbing
11
今天在这个问题上浪费了不少时间,最后在编译的librime/build下创建了include,把emacs-module.h丢进去才解决的。可以把这个issue加到项目描述里去,免得再有像我这样的小白走弯路