题
我一直在寻找一种解决方案,将折叠标记和代码放入外部隐藏文件中。这样你就可以得到永久的折叠而没有额外的折叠痕迹。
如何在 Vim 中通过外部文件控制折叠?
解决方案
这是一个非常普遍的问题。vim 中的“外部文件”到底是什么?毕竟,Vim 是“外部”文件的集合。因此,如果我在 vim 文件中定义折叠首选项,这是“外部文件”解决方案吗?
你可以 关联, 例如,定义折叠的正则表达式机制并从外部文件获取它们。
但我想,你的意思是,“我可以定义一个外部文件,这样我就可以通过项目自定义折叠,这样在我给他们我的文件后,每个使用 vim 的人都会有相同的折叠”?是的,我想你可以通过从上面的方法推断来做到这一点。
但请记住,vim 有几种折叠方法:
- 手动 - 手动定义折叠(这很好,但它会让您的代码带有大量大括号,但它是“可移植的”)
- 缩进 - 缩进定义折叠
- 表达(我提到过)
- 语法 - 由语法高亮定义
- 标记 - 你已经知道了
...最后,一切都取决于 vimrc 中的这几个设置。
我的建议:不要改变 vim 的缩进、语法等。文件。通常,您甚至不需要更改这些(除非您使用 vim 不支持的语言,我对此表示怀疑)。因此,在 vimrc 和 vimfiles 目录中定义您的设置和首选项,然后为您的同事提供他们需要的首选项(通常只是 vimrc 中的首选项)以具有相同的折叠行为。
其他提示
Vim可以被制成通过将这两行中的〜/ .vimrc
自动记住在一个文件中的折叠AU BufWinLeave?* mkview AU BufWinEnter?*无声的loadView
使得褶皱使用manual
方法。这是不一样的marker
如上提示。使用:mkview
保存褶皱和:loadview
重新加载它们。
不隶属于 StackOverflow