我想知道如何在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

09-28 01:27