在vim中打开与模式匹配的所有折叠

时间:2018-10-25 16:17:27

标签: vim

我正在使用vim的语法折叠来查看较大的GeoJSON文件:

Collapsed GeoJSON file

如果我输入/properties<ENTER>,它将把路径上的所有内容展开到第一个功能的属性:

Expanded properties

现在,如果我多次点击n,它将遍历文件并展开所有properties字段。

我想在一个命令中执行此操作。我已经尝试过:g/"properties": {/foldopen,但这只会打开properties字段的路径,而不是properties字段本身的路径:

Mostly expanded, need one more level

如何获得此:g命令来扩展属性字段?

1 个答案:

答案 0 :(得分:2)

:foldopen仅打开一个折叠级别。现在,如果您使用:foldopen!(与!一起使用),它将打开 all 折叠。但是我认为这仍然不是您想要的,因为如果您将所有东西都折叠成一个大折叠,那么每个折叠都会被打开(因此您可以执行zR)。您想要打开所有折叠以查看当前(搜索到的)行; zv这样做:

:g/"properties": {/normal! zv

如果还希望打开所有子折叠,请改用normal! zvzO