微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

代码折叠不保存在我的vimrc中

我将以下代码添加到我的. vimrc中:
" save and restore folds when a file is closed and re-opened
autocmd BufWinLeave *.* mkview
autocmd BufWinEnter *.* silent loadview

HTML和CSS文档保存并恢复其折叠,但代码折叠未保存在我的.vimrc中

有什么建议么?

编辑:

以下代码解决了这个问题:

au BufWinLeave ?* mkview
au BufWinEnter ?* silent loadview

但是如果我写的话,MRU文件从我的列表中消失(我必须打开MRU两次才能看到我的最新文件列表为什么?)

问题是您的原始autocmd行设置为匹配模式*.*,即包含一些字符的任何文件名,后跟一个点,后跟一些更多的字符.

因此,文件test.html或anothertest.css将被匹配,您的命令将会运行,但.vimrc(在点之前没有任何内容)将不匹配.

解决方案是设置一个autocmd,它将匹配.vimrc.您的猜测* *与此匹配(因为它正在寻找任何字符,其次是任意数量的其他字符),但您会以某种方式影响MRU.我不知道你的MRU使用了什么插件,但是我猜这是一个在临时窗口中打开MRU列表的名称与* *模式匹配,后来加载的视图是某种方式弄乱你的MRU.

因此,修复是使用更具体的东西匹配.vimrc:

autocmd BufWinLeave .vimrc mkview
autocmd BufWinEnter .vimrc silent loadview

这也可能会起作用,而且更普遍:

autocmd BufWinLeave .* mkview
autocmd BufWinEnter .* silent loadview

原文地址:https://www.jb51.cc/vim/386572.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐