首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vim folding -递归关闭光标下的所有子对象

Vim folding -递归关闭光标下的所有子对象
EN

Stack Overflow用户
提问于 2014-02-08 01:15:11
回答 4查看 2.2K关注 0票数 10

我知道如何用zO打开光标下的所有折叠。

但是如何反转呢?

我想要像za一样的东西,但也要有递归性。

PS。我知道有zC,但它关闭了与当前行相关的所有父折叠,并且我想关闭子折叠。

EN

回答 4

Stack Overflow用户

发布于 2014-02-08 01:52:44

关闭父折叠并选择关闭的折叠和下一个line

  • :foldc! -关闭范围内的所有折叠(请阅读:h foldc)

显然,您可以映射该序列。

票数 5
EN

Stack Overflow用户

发布于 2018-07-01 01:21:39

我实际上没有找到这个问题的确切答案,但在某些情况下可能是解决方法的一些命令是:

  • zM:递归地关闭根折叠,并且它们的所有children
  • zm:都将foldlevel增加1,即关闭尚未折叠的最内层的折叠

相反的命令是:

  • zR:folds are open
  • zr:将foldlevel减少一次
票数 3
EN

Stack Overflow用户

发布于 2020-06-29 17:58:52

注意:这个问题只涉及当前的子。即关闭/打开到当前的文件夹级别,而不是像zCzOzAzMzR那样一直关闭/打开。

仅折叠当前子项递归

zx折叠:撤消手动打开和关闭的折叠:重新应用'foldlevel',然后执行"zv":查看光标行。还会强制重新计算折叠。当使用'foldexpr‘并且改变缓冲区的方式导致文件夹不能正确更新时,这是很有用的。

zc关闭折叠文本

我认为你想要将两者结合起来:

  1. 转到父折叠级别
  2. 出版社(在正常模式下) zxzc中的一行。或者重新映射:nnoremap zxc zxzc

%

仅展开当前子项递归

顺便说一句:相反,打开递归的所有子进程:zczA

致词:https://vi.stackexchange.com/a/16046/29452

%

仅取消/折叠选定的递归

或者打开/关闭递归折叠的desired range

选择范围文件夹(as

  1. )或:foldc (as @linklink

直观选择范围的提示:

代码语言:javascript
复制
]z jump to end of current open fold.
[z jump to beginning of current open fold.
zj moves the cursor to the next fold.
zk moves the cursor to the previous fold.

跳过Vim中的闭合折叠:https://stackoverflow.com/a/9407015/9391770 (我还没有测试它)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21633870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档