【发布时间】:2011-04-09 18:16:58
【问题描述】:
我正在尝试在 Vim 中实现一个 AutoCmd,它需要在当前缓冲区被修改时执行。
我已阅读文档中所有可用于 AutoCmd 的事件,但找不到有助于确定缓冲区何时被修改的内容。
这并不一定意味着“写入缓冲区时”,因为我需要触发的操作需要在缓冲区被修改包括被写入时调用。
关于如何实现可以实现此目标的BufIsModified 的任何想法?
注意:不是与What is a vimrc function to determine if a buffer has been modified? 的重复,因为这个问题是关于autocmd 而不仅仅是缓冲区修改检查
【问题讨论】:
-
这很奇怪,如果先问这个问题,为什么这个问题与另一个问题重复?
-
什么重复?如何让stackoverflow.com/q/6538779 作为autocmd 工作? (我来这里的原因..)
-
实际解决方案: let modified = getbufvar(bufname('%'), "&mod")
-
@Robert Harvey 这不是链接问题的副本。