2
我想知道如何在vim中使用一个热键映射两个命令。 为exmpale,我已经有了这两个映射如何vim映射两个命令
map <silent> <F7> zM
map <silent> <F8> zR
但是,我只是想用F8键ZM和Zr之间切换。 希望任何人都可以给我解决方案。 非常感谢。
我想知道如何在vim中使用一个热键映射两个命令。 为exmpale,我已经有了这两个映射如何vim映射两个命令
map <silent> <F7> zM
map <silent> <F8> zR
但是,我只是想用F8键ZM和Zr之间切换。 希望任何人都可以给我解决方案。 非常感谢。
zA不会做你想做的事吗...?
如果不行,我们需要更深入。 http://www.vim.org/scripts/script.php?script_id=1494告诉你该怎么做,这里的相关的脚本:
map <buffer> F8 :call ToggleFold()<CR>
let b:folded = 1
function! ToggleFold()
if(b:folded == 0)
exec "normal! zM"
let b:folded = 1
else
exec "normal! zR"
let b:folded = 0
endif
endfunction
实际上,ZA已经映射到,但它只是一个切换倍。我的意思是我想切换所有折叠。 (zA不这样做) –
lhe
编辑我的回复以适应您的愿望。 – chx
感谢您的回复,此脚本非常棒! – lhe