1

虽然has("menu")可以告诉我 gvim 是否会支持菜单命令,但有没有办法在 vim 脚本中测试当前是否存在任何菜单?

我能想到的最接近的事情是执行:menu命令并计算输出。例如,在粗略的伪代码中......

  if count(":menu") != '0'
     " something has created a menu and is visible on screen
  else
     " no menus have been created
  endif
4

1 回答 1

0

您的要求不寻常;exists()这就是为什么菜单项可能没有被maparg().

您必须按照伪代码中的说明执行此操作:

redir => menuOutput
silent! menu
redir END

if menuOutput =~# '--- Menus ---\n$'
    " no menus
endif

PS:过度依赖菜单是 Vim 的“臭味”;一方面,你在使用控制台 Vim 时没有它们(很容易访问)。

于 2012-09-11T20:26:19.817 回答