我正在 Vim 中编写 C# 代码,我希望能够折叠两者
+---- 3 lines: void SomeFunction()-----------------------------------------------
以及
+---- 42 lines: #region The Answer To Life---------------------------------------
但是,foldmarker 必须是文字字符串。我想到了 foldmethod=syntax
的想法,但这在 Vim 7.3 中并不能开箱即用。
除了将折叠方法设置为手动并编写脚本之外,我怎样才能实现这一目标?
最佳答案
我的 Vim 7.3 运行时有一个 syntax/cs.vim
文件(从 2009 年 8 月 14 日开始),支持 #region
的语法折叠。语法折叠很好;我建议不要使用另一种折叠方法。我会联系语法文件的作者,并建议将缺少的函数折叠作为增强功能;许多其他文件类型都有这个,而且它似乎很常见并且很有帮助。 (对于那些不想要其中之一的人来说,这可以是可配置的。)
同时,您可以将以下内容添加到 ~/.vim/after/syntax/cs.vim
以启用任何花括号 block 的折叠:
syn region csFold start="{" end="}" transparent fold
关于vim - vim 中可以使用多个文件夹标记吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14776215/