macOS NeoVim自动切换输入法
macOS NeoVim自动切换输入法
注意
由于 Neovim 的 Vscode 设置中,没有自动切换输入法的选项。其设置只能有 .config/nvim 控制。因此在切换输入法的时候,延迟非常大。
VIM 插件已经的字体抖动问题已经被修复。直接参考下面文章即可。
前言
在Windows和Linux上,如果我们需要再vscode中使用vim, 我们通过im-select可以非常轻易的切换输入法。
然而在macOS上,im-select确实可以起到作用。但是由于macOS的特殊机制,切换到中文输入法的时候,我们需要切换窗口,才能激活中文输入法。详情请见:切换第三方中文输入法之后无法立即激活输入法。
总而言之,我们无法通过im-select 在macOS上取得预期的效果。
解决方法
我们可以使用laishulu/macism这个库来解决以上问题。
安装
- 通过Homebrew安装
macism
1 | |
给
neovim安装插件。这里我使用的vim-plug,其他插件管理器安装方式同理。给
init.vim中添加如下配置1
2
3
4
5let g:macosime_auto_detect = 0
call plug#begin("~/.vim/plugged")
Plug 'laishulu/vim-macos-ime'
call plug#end()输入
:PlugInstall,安装插件
在
vscode中安装neovim插件。
为什么我们neovim这个插件,而不是用vscode-vim这个插件呢?因为vscode-vim这个插件有着输入中文闪烁的问题。至今还没有解决。设置
neovim插件。分别设置你neovim的安装位置和init.vim的位置

使用
授予权限。
当初次使用的时候,需要授予权限。在授权之后,还需要重启应用设置快捷键。
macism通过调取系统的快捷键来切换输入法。因此我们需要设置一下系统的快捷键。我们必须要开启
选择上一个输入法的快捷键。因为ctrl + space和IDE的快捷键冲突了,所以我这里换成了option + space。大家可以换一个没有使用的组合。
注意
- 默认的因为输入法是
com.apple.keylayout.US。如果你是com.apple.keylayout.ABC,请在配置文件中添加如下配置1
let g:macosime_normal_ime = 'com.apple.keylayout.ABC'