2011-09-09 116 views
4

我使用QuickCursor将文本输入到表单。 我的问题是我总是打开MacVim,并且启用hidden,所以当我从Temp文件QuickCursor制作:wq时,缓冲区保留在MacVim中,所以我必须删除它才能将QuickCursor粘贴回窗口。 我想用我的vimrc中的自动命令来解决这个问题: autocmd BufRead "/private/var/folders/fg/gv_*/T/*" set bufhidden="delete" | startinsert! 但是这永远不会运行。可能是什么问题呢 ?什么是正确的事件使用?我尝试了BufWinEnter,BufNewFile,它们都不起作用,或者其他问题。打开文件时,vim自动命令不运行

回答

2

好吧,经过几个小时的尝试,我终于找到了答案。

我已将引号添加到bufhidden设置和文件名。它应该是:

autocmd BufRead /private/var/folders/fg/gv_*/T/* set bufhidden=delete | startinsert! 

,具有额外的引号不起作用:

  • “删除”是无效的选项值(见:he bufhidden)围绕一个文件名
  • 引号防止通配符(从匹配水珠字符)(见doc

如果别人使用QuickCursor,你可以细调整它:

autocmd BufWinEnter /private/var/folders/fg/gv_*/T/* set bufhidden=delete | 
    exe "normal G$" | startinsert! 

所以它的变化在文本的末尾插入模式