liberime 做了比较大的调整,有问题的同学及时反馈

  1. liberime.so -> liberime-core.so
  2. liberime-config.el 的所有内容已经挪到 liberime.el 了, 大家以后用 (require 'liberime) 就可以了
  3. liberime 加载的时候,尽可能不会报错,如果 liberime-core 不存在,会弹出一个buffer 提示一些有用信息,
  4. liberime 加载的时候,不会问用户是否编译 liberime-core, 用户需要自己解决 liberime-core 编译的问题。
  5. 如果使用 msys2-build 安装依赖之后, liberime-build 就可以在 windows msys2 上运行了。
4 个赞

使用 quelpa 的用户,记得更新 quelpa 设置, 不然可能出现 liberime.el 不存在的问题

最新版不会自动 build 了,可以在 use-package:config 里加入下面的代码

  (unless (file-exists-p (liberime-get-module-file))
    (liberime-build))

又更新了,判断语句要改成下面这样:

  (unless (file-exists-p (concat (liberime-get-library-directory)
                                 "build/liberime-core"
                                 module-file-suffix))
    (liberime-build))
1 个赞

或许我应该添加一个选项,让用户设置是否自动编译,如果依赖已经安装好,自动编译问题也不大。

设置这个选项和加一行判断编译的语句,没多大区别。在 readme 里加上说明也行。

A newbie of liberime here. I’m trying to switch to pyim + liberime, but when i type some pinyin, the candidates is always empty, for example if i type hehe, minibuffer shows [hehe |]: 1.hehe (1/1).

My configuration about input method is:

(require 'pyim)
(setq pyim-page-length 9 pyim-page-style 'one-line pyim-page-tooltip 'minibuffer
      pyim-punctuation-translate-p '(yes) default-input-method "pyim")

(when (file-exists-p "~/.emacs.d/liberime/build/liberime-core.so")
  (add-to-list 'load-path (expand-file-name "~/.emacs.d/liberime"))
  (require 'liberime)
  (setq pyim-default-scheme 'rime-quanpin))

And liberime shows following message at startup:

Loading /home/mark/.emacs.d/liberime/build/liberime-core.so (module)...done
Liberime: start with shared dir "/home/xxx/.emacs.d/rime/", user dir: "/home/xxx/.emacs.d/rime/"

~/.emacs.d/rime/default.custom.yaml:

patch:
  menu:
    page_size: 100
  schema_list:
    - schema: luna_pinyin_simp

~/.emacs.d/rime/installation.yaml:

distribution_code_name: "emacs-rime"
distribution_name: Rime
distribution_version: 0.1.0
install_time: "Sun Mar  8 17:50:53 2020"
installation_id: "f1b8bb99-1943-4132-bf32-d46874f0e66b"
rime_version: 1.5.3

When i’m trying to call liberime-get-schema-list, this function report (rimeerr 1 "Get schema list form librime failed."). If there are some things to be done with librime? I directly install it via pacman.

rime-data suggest install

1 个赞

好了,现在好了。

我觉得应该给一下自行设置iberime-core.so路径的变量

不管旧版还是新版,第一次启动pyim然后输入中文,第一个字都会出现 “掉字” 的现象,第二次输入就好了。

不知道是不是已知问题,还是我手速太快了?

好像没碰到过

是不是在rime后台还没启动呢

怎么测试?

或者提前启动的配置? 我试一下

发现了一个非常完美的光标位置计算方式(可能实现不优,但是思路对了)

rime-fix

这个确定所有的方案都应该没有问题,但是不知道Windows上面有没有什么特别的情况。

请问这是什么字体?

GNU Unifont

1 个赞

嗯,说实话,我看不懂这个代码,似乎是使用了c语言的特殊技巧 。。。

换个机械硬盘可能会遇到,不过我不是掉字,而是掉拼音。新版好像没问题。

很简单,就是用c的strlen算字符串的长度。cursor pos给的是相对于这种计算方法的位置。所以librime在fcitx和ibus上面都没有问题。

我对curse计算那块没仔细研究过,这个可以用来截取输入吗,比如把mihao截取出去,剩下ma