Windows 系统 emacs-rime 安装后无法使用

项目地址 :point_right: emacs-rime
Windows 已安装 librime :point_down:

这是我个人的配置 :point_down:

(use-package rime
  :custom
  (default-input-method "rime")
  (rime-librime-root "C:\\Users\\Jack\\AppData\\Roaming\\.emacs.d\\librime\\dist")
  )
(setq default-input-method "rime")
(global-set-key (kbd "C-\\") 'toggle-input-method)

路径内容如下 :point_down:


尝试过将路径更换为 :point_down: 但依然无法使用
但 rime 依然无法使用,使用函数 toggle-input-method 也不行

使用函数 toggle-input-method 后 :point_down:

Emacs左下角通知栏多出了个 m 字符,

我认为已经调用了输入法,但是调用的不是 rime,

问题怎么解决??求解 :pray: :pray:

@DogLooksGood

M-x rime-deploy 就可以了吧,我之前也遇到过。另外系统输入法要切换成 rime,然后emacs里面先调用 toggle-input-method,左下角出现M图标后运行 M-x rime-deploy

Hello!!
我的不行,不知道怎么回事,能看下你对 rime 的配置吗?

建议参考安装指南中使用 msys 的方法安装,比较容易。

配置没有啥特别的,可以去我的 github上看: emacs.d/init-tools.el at develop · zilongshanren/emacs.d · GitHub

用你的也不行,唉呀我滴妈呀
我无法确定问题出在哪
我在使用 pyim 的时候也是无法使用,是使用了一次 pyim 金手指 功能才调用出pyim输入法,之后 使用 toggle-input-method 函数就恢复正常
我也怀疑 rime 也是一样,就是不知道还有什么函数可以直接把 rime 输入法调用出来

1 个赞

不确定是不是 scoop 安装的 librime 有问题

可以看一下我的 rime 配置: .emacs.d/init-chinese.el at master · xhcoding/.emacs.d (github.com)

lib 目录下的 librime.dll 拷贝到 emacs.exe 同级目录,rime--module-path 设置到 lib 目录下的 librime-emacs.dll

确认 emacs-rime 的动态模块编译成功

编译成功的话,插件的构建目录下会有 librime-emacs.so 构建目录如果用 melpa 的话是 $HOME/.emacs.d/elpa/插件/ 或用 straight 的话是 $HOME/.emacs.d/straight/build/插件/

确认启动了正确的输入法

M-x set-input-method rime

确认正确的进行了部署

M-x rime-deploy

1 个赞

依然不行,我决定放弃了 :cold_face:

可以参考下我这个 Blog,我在 Windows 下安装过,只要 emacs 27 以上都可以。 scoop 那个 librime 我也试过,也一直没成功。

1 个赞

好的,最后一次折腾 :joy:

记得第一次编译 emacs-rime.dll 要在 mingw64 的环境下启动emacs。 这点很重要。 我博客中推荐配置的最后那个 im-cursor-chg可以去掉, 是我用来自动改变光标颜色的。 需要的话,可以在这里下载:

  (with-eval-after-load 'rime
    (require 'im-cursor-chg)
    (cursor-chg-mode 1))

额,这三步检查都通过,但是打不出字?还是哪步没过?结论只是不行的话,爱莫能助了。。。

过几天测试再回复,最近忙 :joy:

正在按照Blog中的方法进行设置,用scoop安装的msys2,目前已经进行到

ln -s /mingw64/share/opencc/* /mingw64/share/rime-data/opencc

运行成功这一步, 不过我是通过在PowerShell 中输入 msys2直接进入的终端环境,另外在msys2里面通过pacman -S emacs安装了emacs-27.2版本,可以在msys2的shell里面启动emacs,但启动的emacs是原生配置。现在有两个问题,一是不清楚这里面得emacs配置文件该在哪里设置,msys2的bashrc所在HOME是否就是window下的“C:\Users\dbv771\AppData\Roaming\”目录?二是

pacboy -S librime:x librime-data:x emacs:x toolchain:x

这一句是什么意思?安装rime运行环境?执行了这一句以后是否需要在windows里额外再安装rime输入法?

emacs-rime 是依赖 librime,那个代码就是安装 librime 和相关的依赖。

如果你在 Emacs 之外的其他地方不想用 rime 的话,就不用安装小狼毫了。小狼毫是 rime 在 Windows 系统的前端,内置了 librime。

你应该在 powershell 输入 mingw64 进入64位的 msys2

重启了一下powershell,发现果然可以输入mingw64进入msys2了,现在的问题就是msys2下启动emacs的配置文件该在哪里设置?我之间就用过小狼毫,因为缺乏小鹤双拼的直通车功能,就弃用了一段时间,现在因为突然觉得windows下的spacemacs需要实现退出编辑模式自动切换成英文输入法的功能,所以准备继续用小狼毫了

我在 HOME 目录下创建了一个 .bashrc 文件,然后加入下面这个路径:

export PATH="/c/opt/emacs29/bin:$PATH"

你可以根据你的 Emacs 安装路径修改一下。这样你在 mingw64 就能找到系统中安装的 Emacs 了。

同时,我在环境变量中把 HOME 设置到了 C:/Users/<用户名> 下。

scoop安装的librime可不会在.emacs.d下。

把lisp中rime-librime-root的那行去掉,scoop安装的librime已经设置了环境变量librime_root,emacs-rime的makefile中会用到。

需要系统中有make和gcc。 既然你用scoop,那么可以scoop install mingw-winlibs,就都有了。

不负责任的说,安装之后也可以折腾native-comp了

连续折腾了三天,踩过好几个大坑,依旧没有弄出来,目前的进展情况是,通过重装和配置msys2,可以执行

pacboy -S librime:x librime-data:x emacs:x toolchain:x

按照compilation on windows x64中方法在msys下编译了liberime,直接下载子龙山人的future版.emacs.d进行测试,发现该版emacs界面的状态栏在ctrl+\下会显示rime图标,键盘输入有字母出现,且字母显示背景色,就是不出汉字,怪哉!

想问一下rime中的 rime-data文件夹中存放的究竟是rime的什么类型文件,/emacs-data/librime/dist又是什么文件夹,windows下好像没有这样的文件夹,要自己新建吗?