如何获取gvim的全局应用程序菜单?

Gvim在12.04中没有全局菜单(appmenu / application菜单),当从终端启动gvim时,25秒后终端中会出现以下警告:

** (gvim:20320): WARNING **: Unable to create Ubuntu Menu Proxy: Timeout was reached 

如何解决这个问题?

解决方案1:为gvim设置全局菜单

要获取gvim的全局菜单并删除警告消息,请将其添加到〜/ .bashrc并重新启动终端:

 function gvim () { (/usr/bin/gvim -f "$@" &) } 

解决方案2:禁用gvim的全局菜单

要删除警告消息,您可以禁用全局菜单,至少对于gvim:

  • 如何启用或禁用全局应用程序菜单?
    • 解答#133005 – 有关如何禁用全局菜单的几个选项

例如,将其添加到〜/ .bashrc并重新启动终端:

 alias gvim='UBUNTU_MENUPROXY= gvim' 

参考

这里有一个解决方法: https : //bugs.launchpad.net/ubuntu/+source/vim/+bug/776499

在shell init文件的顶部创建一个别名(例如〜/ .bashrc):

 alias gvim="UBUNTU_MENUPROXY=0 gvim" 

我的Ubuntu 12.04 amd64可以使用gvim -f


  • vim-gnome:2:7.3.429-2ubuntu2.1 + aptbuild1
  • 终止符:0.96-0ubuntu1 + aptbuild1
  • guake:0.4.2-7 + aptbuild1

我可以在启动gvim时添加-f (– --nofork )选项:

 alias gvim="gvim -f" 

这仅适用于gvim
firefox和其他人没有这个-f选项。

另一个可能的原因可能是~/.gnome2/Vim文件。 这个解决方案 (建议你删除~/.gnome2/Vim )来解决Hardy Heron(在Unity之前)的问题,在Ubuntu 13.10上为我解决了这个问题。

无论出于何种原因, gvim -f对我不起作用。