在vim中使用拼音搜索中文,告别烦人的输入法切换
在vim中,搜索中文需要切换输入法,然后输入中文进行搜索。使用chinese-support可以不用切换输入法,直接使用拼音进行搜索。并且该插件支持首字母搜索,全拼搜索,或者两种方式的混合搜索。
Pathogen (https://github.com/tpope/vim-pathogen)
git clone https://github.com/xuanyusa/chinese-support.git ~/.vim/bundle/chinese-support
Vundle (https://github.com/gmarik/vundle)
Plugin 'xuanyusa/chinese-support'
Vim-Plug (https://github.com/junegunn/vim-plug)
Plug 'xuanyusa/chinese-support'
Vim8 Native Plugin Manager (https://vimhelp.org/repeat.txt.html#packages)
git clone https://github.com/xuanyusa/chinese-support.git ~/.vim/pack/plugins/start/chinese-support
使用vim脚本语言编写,没有额外依赖,但由于功能中使用的函数原因,目前支持vim8.2以上的版本
- 全拼搜索
- 首字母简拼搜索
- 首字母简拼搜索支持区分平舌和翘舌音,如z、c、s和zh、ch、sh
- 全拼和首字母简拼混合搜索
- 不限制搜索长度
- 支持使用'进行拼音拆分,如把
xian使用xi'an拆分识别为xi an两个拼音,这样可以识别西安或先类似的字符 - 支持正向,反向搜索
- 支持搜索后使用
n,N命令导航 - 支持多音字搜索,如萝卜既可以使用
luobo进行搜索,也可以使用luobu来进行搜索 - 支持gn文本对象,如cgn, ygn, dgn
缺省情况下chinese-support使用<leader>/和<leader>?来映射正向搜索和反向搜索,可以设置g:mapleader变量来修改映射的首字符,如
let g:mapleader = ' '
把设置为空格。如果没有修改g:mapleader,缺省为\。
当然根据个人使用习惯也可以映射命令修改搜索使用的快捷键,只需要使用nnoremap来映射<Plug>chinese-support-search-forward;和<Plug>chinese-support-search-backward;即可。设置参考下面的例子,把<leader>/和<leader>?修改想要映射的按键。
" 正向搜索
nnoremap <leader>/ <Plug>chinese-support-search-forward;
" 反向搜索
nnoremap <leader>? <Plug>chinese-support-search-backward;
当使用中文搜索后,会自动映射n和n按键,不需要额外的配置



