标签:lisp com and struct str 现在 download make 三方
在 Emacs 中使用外部输入法,最大的问题是在切换 evil 的模式的时候,对输入来说会有延迟,因为需要手工将输入法切换到对应的英文模式,才能正常使用快捷键。
但是如果使用的是 Emacs 自己的输入功能,则不需要做这些同步,只需要从 insert 模式中退出即可,这种操作对 Emacs 来说真的是太方便了。
经过几次尝试之后,一点点测试出了配置过程中出现的问题,现在整理如下。
因为本人使用的是 Mac 系统,所以需要先安装一些工具。
brew install cmake git boost
这三个工具是编译 liberime 用的,本来想从 GitHub 上下载,但是有问题,所以决定自己编译一份,这里测试了一下,只使用 CommandLineTools 是不行的,需要安全安装 xcode 才可以。
git clone --recursive https://github.com/rime/librime.git
cd librime
make xcode/thirdparty
make xcode
编译这个是依赖于 librime 文件的,需要先将依赖引进来。
git clone git@github.com:merrickluo/liberime.git
export RIME_PATH=~/DEV/librime
make liberime
如果不想自己编译的话,也可以直接下载我编译好的文件,但是需要把文件存放到一个指定的路径下。
下载路径:liberime.so
在增加配置之前,先检查一下 Emacs 是否支持 module-load
如果不支持,请优先安装支持的版本,建议使用 emacs-mac 中的版本。
(use-package pyim
:demand t
:diminish pyim-isearch-mode
:init
(setq default-input-method "pyim"
pyim-title "ㄓ"
pyim-default-scheme 'rime
pyim-page-length 7
pyim-page-tooltip 'proframe)
:config
(setq-default pyim-english-input-switch-functions
'(pyim-probe-dynamic-english
pyim-probe-evil-normal-mode
pyim-probe-program-mode
pyim-probe-org-structure-template))
(setq-default pyim-punctuation-half-width-functions
'(pyim-probe-punctuation-line-beginning
pyim-probe-punctuation-after-punctuation))
(pyim-isearch-mode t)
:bind ("M-j" . pyim-convert-string-at-point))
(use-package liberime
:load-path (lambda () (expand-file-name "rime" user-emacs-directory))
:custom
(rime_share_data_dir "/Library/Input Methods/Squirrel.app/Contents/SharedSupport/")
(rime_user_data_dir (expand-file-name "rime" user-emacs-directory))
:init
(module-load (expand-file-name "liberime.so" user-emacs-directory))
:config
;; 配置同步文件夹
(liberime-start rime_share_data_dir rime_user_data_dir)
(liberime-select-schema "wubi86"))
(use-package posframe)
(provide 'modules-pyim)
重启 Emacs 就可以使用 pyim 替代原有的输入法了。
标签:lisp com and struct str 现在 download make 三方
原文地址:https://www.cnblogs.com/banshiliuli1990/p/12202308.html