VIM内置输入法vimim_wubi

简介:

1. 项目情况

2. 缘起

我一直是一个 vim 的使用者,在使用过程当中,当然也会觉得系统级的输入法与 vim 的配合总是不是很流畅。我也不是一个 vim 高手,很长一段时间内呢,也是凑合着用了。

后来我发现了 VimIM 这个项目,当时就觉得很惊讶,因为我看到了之前我没有想到过的一种实现方法——直接使用 vim 的内置脚本能力实现完整的输入法。这同时也刷新了我对于“扩展能力”的看法。

之后,我在 vimim 的列表中参与了一些讨论,然后在看它的源码时,觉得原理其实是很简单易懂的,就是利用 vim 本身的“补全”功能即可。然后因为我仅仅需要使用五笔输入法,会觉得 vimim 它太烦杂了(当时它就支持多种输入法了),于是就试着完全重新实现一个输入法,仅仅支持五笔。

其实没有多久一个可用的版本就出来了,事实上也真的不难。然后又花了一些时间在优化效率(其实不用刻意优于也完全没有问题的)和调整一些细节上。

从 2010 年左右算起,自己的这套东西也用了几年时候了,自己感觉不错。

3. 原理

  1. 实现 vim 的自定义补全函数。

    具体实现就是根据输入的字符去一个码表谁看中找对应的字。对于五笔来说,规则简单码表简单。

  2. 在“输入法”状态时映射所有输入键。

    就是在输入法状态下,把输入键(最基本的 [a-y] 键,五笔不需要 z 键)映射成输入字符,同时触发补全函数的行为,这样就可以实现输入了。

基本的就是这两点。剩下的就是实现具体功能上的一些东西。


目录
相关文章
|
11天前
|
Linux 程序员 开发工具
最强文本编辑器 VIM 获取与安装
最强文本编辑器 VIM 获取与安装
|
2月前
|
Shell 开发工具
vim快捷键
vim快捷键
24 4
|
机器学习/深度学习 Shell 开发工具
vim快捷键收藏版
vim快捷键收藏版
200 0
vim快捷键收藏版
|
开发工具
vim 快捷键
vim 快捷键
155 0
|
开发工具 Perl
vim设置特殊快捷键
vim设置特殊快捷键
|
数据可视化 开发工具
Vim-一款好用的文本编辑器
Vim-一款好用的文本编辑器 关于vim的使用,通过博客,无论是静态的截图或者是代码/文本复制,很难展示所要表现的内容。更多需要读者亲自敲键盘实践之后才知道其作用。 本文不会也无法描述vim过多的细节,仅仅是对于常用的命令做一下记录,因为vim的帮助文档很庞当。
1678 0
|
开发工具
vi(vim)快捷键小记
1、前言 vi是“visual interface”的缩写,vim是vi IMproved(增强版的vi)。总结一下自己平时常用的vim快捷键,当是忘记也好,后续会不定期更新。
1191 0