我想映射一个键来切换foldmethod=indent
和不折叠。我怎样才能做到这一点?
问问题
4583 次
1 回答
11
我会说zi(切换可折叠)可以完成这项工作。无需映射。(另见:he folding
)
(你也可以看看zMandzR)
由于要将其映射到单个键,请按以下步骤操作:
:nnoremap <F10> zi
要indent
每次都强制折叠模式(对我来说不是真的推荐),你需要一个函数:将函数添加到你的 vimrc[2]:
function ForceFoldmethodIndent()
if &foldenable
se foldmethod=indent
endif
endfunction
nnoremap <F10> :normal zi^M|call ForceFoldmethodIndent()^M
inoremap <F10> ^O:normal zi^M|call ForceFoldmethodIndent()^M
让我知道这是否适合你。如果您接受此答案,我将不胜感激:)
干杯
[1] 和behave mswin
[2] 要在命令行或插入模式中输入特殊键(例如^O
),请使用例如
- Ctrl-VCtrl-O或者
- 在窗户上[1]Ctrl-QCtrl-O
于 2011-03-30T09:05:01.483 回答