Vim折叠:如何映射<;空间>;以递归方式打开/关闭?

Vim折叠:如何映射<;空间>;以递归方式打开/关闭?,vim,Vim,在vim中,通常建议将正常模式下的键映射到za——切换当前折叠打开/关闭。但我个人认为这还不够。特别是,我想将映射为递归地打开/关闭当前折叠,即 If currently folded, map <space> to zO If currently unfolded, map <space> to zC 如果当前折叠,映射到zO 如果当前展开,则映射到zC 如何在我的.vimrc中实现这一点?zA与zA相同,只需根据当前折叠递归切换折叠。它应该符合您的要求。zA与zA

在vim中,通常建议将正常模式下的
键映射到
za
——切换当前折叠打开/关闭。但我个人认为这还不够。特别是,我想将
映射为递归地打开/关闭当前折叠,即

If currently folded, map <space> to zO
If currently unfolded, map <space> to zC
如果当前折叠,映射到zO
如果当前展开,则映射到zC

如何在我的
.vimrc
中实现这一点?

zA
zA
相同,只需根据当前折叠递归切换折叠。它应该符合您的要求。

zA
zA
相同,只需根据当前折叠递归切换折叠即可。它应该符合你的要求。

难道
zA
不够吗?是的,这就是我想要的!我不知道这件事。谢谢好的,那么我把它作为一个答案。首先要确定你在找什么。难道
zA
不够吗?是的,这就是我想要的!我不知道这件事。谢谢好的,那么我把它作为一个答案。只是想先确定一下你在找什么。