The plugin is an extension of 'IdeaVim' , can switch to English input method in normal mode and restore input method in insert mode.
auto-switch feature is disabled by default
enable the feature with the commands below, input in normal mode:
:set keep-english-in-normal
enable auto-switch feature:set keep-english-in-normal-and-restore-in-insert
restore input method when return insert mode.:set nokeep-english-in-normal-and-restore-in-insert
keep auto-switch feature, but doesn't restore input method when return insert mode:set nokeep-english-in-normal
disable auto-switch featureThe plugin support MacOS and Windows and Linux(with fcitx)
MacOS need enable en_US OR ABC keyboard
Windows need enable en_US keyboard
Linux need fcitx-remote, or ibus
Support for controlling plugin behavior in ideavim.rc via the following three variables:
let keep_input_source_in_insert=[input source id]
set input method for non-English used in insert mode
let keep_input_source_in_normal=[input source id]
set input method for English used in normal mode
Note: The above two variables are only valid in windows and macOS
let context_aware=1
When entering insert mode, judge whether to restore the input method according to the context, 0 to disable, 1 to enable
Note: Only meaningful when set keep-english-in-normal-and-restore-in-insert
GitHub RepositorySource and Feedback
为IdeaVim插件增加自动切换为英文输入法的功能
输入法自动切换功能不会默认启用
编辑器中normal模式下输入输入下面的指令以启用自动切换输入法功能:
:set keep-english-in-normal
开启输入法自动切换功能:set keep-english-in-normal-and-restore-in-insert
回到insert模式时恢复输入法:set nokeep-english-in-normal-and-restore-in-insert
保留输入法自动切换功能,但是回到insert模式不恢复输入法:set nokeep-english-in-normal
关闭输入法自动切换功能 MacOS需要开启英语美国键盘或ABC键盘
Windows需要开启英语美国键盘
Linux需要使用fcitx输入法,通过fcitx-remote切换,或使用ibus输入引擎
支持在ideavim.rc中通过以下三个变量控制插件行为:
let keep_input_source_in_insert=[input source id]
设置insert模式使用的非英文输入法
let keep_input_source_in_normal=[input source id]
设置normal模式使用的输入英文到输入法
注意:上面两个变量仅在windows和macOS中有效
let context_aware=1
进入insert模式时根据上下文判断是否恢复输入法,0禁用,1启用
注意:仅在set keep-english-in-normal-and-restore-in-insert
时有意义
Linux 下的 fcitx5-rime 可以设置 `let rime_ascii = 1` 在 normal 模式使用 Rime 的 ASCII Mode。 版本要求: - `fcitx5 > 5.0.20` - `fcitx5-rime > 5.0.8`
GitHub Repository: 源码和问题反馈