(重新设计)中英文混打:OS输入法管理包 smart-input-source

@chiron

  1. 请更新到最新版,刚才有更新。。
  2. 你会不会。。。。先载入的sis,后载入的evil?

我自己的话,是让他在evil载入之后再加载的:

(use-package! sis
  :after (evil tmux-pane)
  :init
  :config
  (sis-global-respect-mode t)
  (sis-global-inline-mode t)
  (sis-global-follow-context-mode t)
  (sis-global-cursor-color-mode t))

啊,你真猜对了! sis是先于evil加载的。我的evil没有默认启动加载,是手动加载的。调换一下顺序就好了。

有没有计划用 xkb-switch-win 替换掉im-select?

我在vim下输入法切换插件,vim-xkbswitch,在windows平台用的就是 xkb-switch-win。在同一语言下,就可以切换键盘。不像im-select,只能切换语言。

请问你的

use-package! 

是啥用法? 结尾加了!,是自己改写了use-package吗?

应该可以通过配置搞定吧。我研究一下。

doom 自带的macro

这倒是提醒了我,有空我写faq,这个要加进去。

我看了下,不行啊。
那个是vim的module,
除非有人开发emacs的module。

emacs 28.x 或者29之后,
windows上的emacs自带输入法交互的api。
那时候就没必要用外挂的exe了。

原来如此。

不知道emacs能否顺便把windows终端下第三方输入法无法使用的bug修了。

windows,还终端???
还有这种用法???
拿gitbash这种作为终端跑emacs么?

都终端了,估计一般人得上WSL了吧。

mepla怎么没更新? 还是 20200721.1220 commit 6b84e3

是啊,很奇怪~~~

不知道怎么回事。
用git吧

而且注意啊,包名称改成sis了。

我安装最新版本sis后发现,记忆buffer输入法状态不启作用了, 又测试了原来的几个版本

commit d9ac047 remove buffer local variables for user

这个版本是最后一个正常的版本,以后更新的都不正常

重现了,原因也找到了。在fix。

@emacle

fix了。
我这里测试没问题了。
请你那边也测试反馈一下

多谢,这个问题好了。

又发现一个小问题,在 *scratch* buffer里面(任意缓冲都一样),当前为中文输入法时,按下 C-h C-a 对应命令 (about-emacs) 打开*About GNU Emacs* buffer时,该buffer为中文状态,默认不应该是英文才对?

这个我不能复现,请写下详细步骤。

话说 scratch buffer 中,手动切换(C-\)到 emacs-rime 后,esc 退出到 normal 模式貌似没切换回英文。如果是follow-context-mode 切换的退回到 normal 模式可以正常切换回英文(ps 变动太快加一🤣,本来用的好好的今天升了波又要折腾) ps evil-insert-state-exit-hook 里面有 sis-set-english 了

不会了。。。
高强度开发期已过,
后面正常的话,
只会有小的bugfix了。

前面没有你们紧跟着升级,
问题和特性不会那么快提出来 :grinning:
后面可以安心了

  1. 是否只是在scratch buffer中才有这个问题,别的buffer是OK的?
  2. 是否只是对emacs内置输入法才有这个问题,OS输入法是OK的?

所以,应该是:只是对emacs内置输入法才有这个问题
晚上我fix一下。

==== 更新 ====
好像是evil本身就做了切换,所以和本包冲突了
如果确认是这个原因的话,那我改成:native 输入法下,sis就不处理evil了~~~

对,evil 本身就做了切换,但是你不是用切换到英文那个函数么,也不会又切换回中文啊。

别的 buffer 都有这个问题

你是用lazy config的么?
我更新了。你再试试看呢?

我本地测试没问题了~~~

主要是对native输入法的config那块,

你测试完反馈一下啊~~