alf*_*eza 7 vim function folding
我正在编写一些折叠函数,我需要检查当前行是否实际上是折叠.
这是因为它是一种自定义折叠方法,取决于搜索/匹配某些行.
例如,如果当前行折叠并且看起来像:
-FOO------------------------
Run Code Online (Sandbox Code Playgroud)
如果您执行以下操作:
getline('.')
Run Code Online (Sandbox Code Playgroud)
你基本上会FOO这样得到(我知道)没有办法知道我是否处于弃牌状态.
这有辅助功能吗?
我认为它必须是这样的:
is_folded('.')
Run Code Online (Sandbox Code Playgroud)
我可能会搞砸foldtext为折叠指定一个特殊的标题,但我想避免这种情况.
从 :help eval.txt
foldclosed({lnum}行)
结果是一个数字.如果行{lnum}处于闭合折叠中,则结果是该折叠中第一行的编号.如果行{lnum}不在闭合折叠中,则返回-1.
您可以检查给定的行,如果它返回-1或行号,您可以通过isfolded()这种方式实现您的功能.
如果您正在寻找Vim脚本功能或功能,最好从搜索开始,eval.txt其中包含许多相关信息.