使用反馈:smart-input-source 挂 emacs-rime

是的,无关的变量。
本package操作的是current-input-method,不是default-input-method.

这个就很奇怪了。本package其实没有一行代码是关于内置输入法的。
唯一相关的地方,就是用户自己config进去的挂接代码。
就像和im-select/fcitx的处理一样。

我本地复现了。。。
正在查找原因。

@Voleking 这个是emacs系统自己的行为,set-input-method 就是会改变default-input-method。 下面这个截屏来源于emacs自带的系统实现。

你切到中文输入法,这个值也会变成rime

我一会写个新的配置example。。。通用配置。。。。

  ;; (setq-default default-input-method "rime")
  (setq-default smart-input-source-english nil)
  (setq-default smart-input-source-other default-input-method)
  (setq-default smart-input-source-do-get (lambda() current-input-method))
  (setq-default smart-input-source-do-set
                (lambda(source)
                  (unless (equal source current-input-method)
                    (toggle-input-method))))

感谢,这个配置可以了,没有想到是 set-input-method 的问题,本来还以为你代码里改了什么。

我给更新到readme里面了。

这样别人也能避免踩坑。

1 个赞

很多功能确实是重复的,能merge到一起就好了。

都放在lazy-config里面了。

大佬用的是 emacs-rime么?
如果你也用evil的话,需要更新一下最新版。
有个bug修正关于evil的。

对的,更新试试看

为什么我的rime一配置内置快捷键,sis就失效?

(use-package rime
:custom
  (default-input-method "rime")
:config
  (setq rime-inline-ascii-trigger '<tab>)
)
  
  (use-package sis
  :config
  (sis-ism-lazyman-config nil "rime" 'native)
  ;; enable the /cursor color/ mode
  (sis-global-cursor-color-mode t)
  ;; enable the /respect/ mode
  (sis-global-respect-mode t)
  ;; enable the /follow context/ mode for all buffers
  (sis-global-follow-context-mode t)
  ;; enable the /inline english/ mode for all buffers
  (sis-global-inline-mode t)
  )

这么配置的话,无法自动切换rime输入法,如果把rime的:config去掉就正常。 想不通为什么会这样

可能是因为快捷键被rime截走了。

rime的inline ascii功能, 可以用sis的inline english来代替。

不过你这个tab键激活,sis目前还没有。

但是这个快捷键对respect没影响吧?而且我是不管设哪个都会影响sis,好像rime只要添加了除default以外的设置就会出问题

我再看看sis的inline

rime将自己的keymap优先级弄的比较高,

所以,如果按键有冲突的话,rime会屏蔽sis

好吧,谢谢,我还不太懂emacs的配置语言

emacs-rime 在输入法输入的过程中,有非常高的按键优先级。

这样的不管在什么奇奇怪怪的 mode 里面,打字打到一半的时候,都不会被干扰。

你这里能不能说详细一点:

  • 期望的是什么按键,触发什么行为?
  • 实际是什么按键,触发什么行为?

正好 @DogLooksGood 也在这里, 我们可以一起分析问题在哪儿。

不好意思这几天没看论坛,事实上我说的问题是配置emacs-rime文档里的任意快捷键都会导致sis不起作用,上面贴的是用inline快捷键。 不过我现在大致习惯C-\切换输入法了,感觉inline不管怎样都不够好用。

一直以来,
我没有听别人报告过类似的问题,
不知道是不是别的原因造成的。

实在不行的话,
你直接用操作系统版本的rime
sis也可以管起来。