vim中,中文输入法切换的问题一直困扰了很多人。有各种各样的插件可以做到自动切换系统的输入法。 如:《macOS下vim 中文输入法切换问题和两种解决方案》 https://blog.csdn.net/lxyoucan/article/details/114365153
这种方案在本机使用还是挺好用的,但是在ssh远程连接中无法使用。 一直没找到完美解决方案。
今天推荐一套方案可以一定程度上解决这个问题,已经中文输入是直接在vim中的插件输入的,所以ssh中也可以正常使用。
项目主页:
https://github.com/ZSaberLv0/ZFVimIM
笔记
安装
vim-plug示例
"vim自带输入法
Plug 'ZSaberLv0/ZFVimIM'
"可选, 用于提升词库加载性能
Plug 'ZSaberLv0/ZFVimJob'
执行 :PlugInstall 安装插件。
国内加速
"输入法
Plug 'https://gitee.com/lxyoucan/ZFVimIM.git'
Plug 'https://gitee.com/lxyoucan/ZFVimJob.git'
配置
修改默认快捷键
由于本人经常用f然后按; 进行快速搜索下一个,所以这个默认的快捷键跟我的习惯冲突,如何修改默认配置呢? 我一开始是直接修改源码,这样显然不是好主意。正确姿势如下:
let g:ZFVimIM_keymap = 0
nnoremap <expr><silent> ,, ZFVimIME_keymap_toggle_n()
inoremap <expr><silent> ,, ZFVimIME_keymap_toggle_i()
vnoremap <expr><silent> ,, ZFVimIME_keymap_toggle_v()
nnoremap <expr><silent> ,: ZFVimIME_keymap_next_n()
inoremap <expr><silent> ,: ZFVimIME_keymap_next_i()
vnoremap <expr><silent> ,: ZFVimIME_keymap_next_v()
nnoremap <expr><silent> ,/ ZFVimIME_keymap_add_n()
inoremap <expr><silent> ,/ ZFVimIME_keymap_add_i()
xnoremap <expr><silent> ,/ ZFVimIME_keymap_add_v()
nnoremap <expr><silent> ,. ZFVimIME_keymap_remove_n()
inoremap <expr><silent> ,. ZFVimIME_keymap_remove_i()
xnoremap <expr><silent> ,. ZFVimIME_keymap_remove_v()
|