我正在尝试自定义vim折叠样式并坚持缩进。我知道这里已多次询问过这个命令(这似乎适用于其他人)来测试折叠的外观:
:set foldtext=' '.foldtext()
然而,这给了我'未知选项'错误。显然,它不接受仅包含空格的字符串,因为这个
:set foldtext='mytext'.foldtext()
工作正常,并将'mytext'添加到折叠的开头。
为什么它不起作用,它的方法是什么?
答案 0 :(得分:1)
你只需要逃离这个空间。请改用它。
:set foldtext='\ '.foldtext()
该空间导致vim认为您要将foldtext设置为'
,然后'.foldtext()
是要设置的下一个参数。但是,这不是您想要的以及错误消息的原因
E518: Unknown option: '.foldtext()
转义空格告诉vim foldtext='\ '.foldtext()
是一个参数而不是两个。
答案 1 :(得分:0)
如果您更喜欢对齐的foldtext,可以使用EightHeader插件。帮助示例:
如果你不喜欢默认的' foldtext'您可以通过设置为自定义它
EightHeaderFolds()
。
例如,默认情况下,关闭的折叠看起来像这样:
```+-- 45 lines: Fold level one
+--- 67 lines: Fold level two
如果您想将其更改为此类:
Fold level one................45 lines
Fold level two..............67 lines
...然后你可以使用这个功能:
let &foldtext = "EightHeaderFolds( '\\=s:fullwidth-2', 'left', [ repeat( ' ', v:foldlevel - 1 ), '.', '' ], '\\= s:foldlines . \" lines\"', '' )"