我想捕获修改vim缓冲区的所有事件,因此我可以记录它们并将它们发送到服务器。我希望在插入模式下捕获逐个字符的事件,并在执行p
或dd
等命令时通知 - 文档更改时。
答案 0 :(得分:2)
通过我选择以下内容的事件列表:
|BufFilePre| before changing the name of the current buffer
|BufFilePost| after changing the name of the current buffer
|FileChangedShell| Vim notices that a file changed since editing started
|FileChangedShellPost| After handling a file changed since editing started
|InsertEnter| starting Insert mode
|InsertChange| when typing <Insert> while in Insert or Replace mode
|InsertLeave| when leaving Insert mode
|QuickFixCmdPre| before a quickfix command is run
|QuickFixCmdPost| after a quickfix command is run
虽然我没有尝试,但我相信Insert*
事件包括d
elete,p
aste,c
hange等命令。您还应该寻找'autocmd-events |。
答案 1 :(得分:2)
在Vim 8中,这更容易。只需听听这些autocmd事件:
TextChanged
TextChangedI
答案 2 :(得分:0)
一位朋友指着我在vim内名字很大的netbeans模块。这看起来像我想要的。