我在一个有 3 人的项目中。我们需要在 Vim 中为每个成员设置相同的折叠。如何分享我的折叠?
[回馈]
我明白了一件重要的事情:谷歌忽略了符号,例如 {{{,所以请谷歌“VIM 三大括号”以查找有关标记方法的帮助。由于您可以快速找到相关信息,因此练习变得容易得多。
为了使用标记方法(由 Adam Bellaire 建议),请注意您必须设置方法:
:set foldmethod=marker
感谢您的回答!
我在一个有 3 人的项目中。我们需要在 Vim 中为每个成员设置相同的折叠。如何分享我的折叠?
[回馈]
我明白了一件重要的事情:谷歌忽略了符号,例如 {{{,所以请谷歌“VIM 三大括号”以查找有关标记方法的帮助。由于您可以快速找到相关信息,因此练习变得容易得多。
为了使用标记方法(由 Adam Bellaire 建议),请注意您必须设置方法:
:set foldmethod=marker
感谢您的回答!
可能最简单的方法是只使用折叠标记(例如{{{1
),确保将vim:fdm=marker
设置包含在文件本身中。例如,这是一个 shell 脚本,其中包含使用折叠标记的设置和两个折叠级别:
#/bin/sh
# vim:fdm=marker
echo This file contains fold markers.
#Top Level Fold {{{1
echo This is a top-level fold.
#Second Level Fold {{{2
echo This is a second-level fold.
在 vim 中打开这个文件将显示前四行,然后是一个折叠,如果展开将显示第二个折叠。只需确保在注释语法和vim:fdm=marker
行之间留一个空格,否则 vim 将看不到它。例如,在 C 中,您可以使用:
// vim:fdm=marker
折叠在文件中?好吧,相同的设置应该导致相同的折叠。
Vim 可以通过多种方式折叠:手动、缩进、表达式、语法和标记(默认情况下,我相信是弯括号,其中 3 个)。
所以如果你有相同的 vim 版本,并且他们没有改变他们的语法和缩进文件,让他们检查你的 vimrc 中的 foldmethod 和 foldmarker 选项,并将它们复制到他们的 vimrc 文件中。那应该这样做。
我以前没有与某人共享 VIM 折叠,但如果您在同一台机器上工作,也许您可以使用 VIM 会话,这将保存您当前的状态(包括折叠)。在 VIM 中运行以下命令:
mks! /path/to/session_file
然后你的朋友可以加载会话文件:
vim -s /path/to/session_file
古老的历史,我知道,但这可能是自 09 年出现的 vim 版本以来出现的,而且由于我还没有足够的声誉来发表评论,所以我们开始吧。
好消息是保存文件的视图也应该保存手动折叠,甚至是嵌套折叠。
坏消息是我发现它在 vim 7.0 (RHEL 5.5) 下没有产生一致的结果。这可能已在后续更新中得到修复,遗憾的是,我们不允许安装。