12.04では、Gvimにはグローバルメニュー(appmenu /アプリケーションメニュー)がありません。また、ターミナルからgvimを起動すると、25秒後にターミナルに次の警告が表示されます。
** (gvim:20320): WARNING **: Unable to create Ubuntu Menu Proxy: Timeout was reached
これを修正する方法は?
12.04では、Gvimにはグローバルメニュー(appmenu /アプリケーションメニュー)がありません。また、ターミナルからgvimを起動すると、25秒後にターミナルに次の警告が表示されます。
** (gvim:20320): WARNING **: Unable to create Ubuntu Menu Proxy: Timeout was reached
これを修正する方法は?
回答:
gvimのグローバルメニューを取得し、警告メッセージを削除するには、これを〜/ .bashrcに追加し、ターミナルを再起動します。
function gvim () { (/usr/bin/gvim -f "$@" &) }
警告メッセージを取り除くには、少なくともgvimのグローバルメニューを無効にします。
たとえば、これを〜/ .bashrcに追加し、ターミナルを再起動します。
alias gvim='UBUNTU_MENUPROXY= gvim'
"$@".bashrc関数の中に引用符があるのはなぜだろうと思った。
gvim、バックグラウンドモードに入る方法に関連しています。フォアグラウンドでgvim -f保持gvimします。シェルをgvimバックグラウンドで実行するには、&。の括弧は(foo &)サブシェルでコマンドを実行するためgvim、現在のシェルのバックグラウンドプロセスにはなりません。括弧なしで、Xをクリックして端末を閉じると、killになりgvimます。function foo () { ... }シェル関数を作成します。に追加/usr/bin/する必要があります。追加しgvimないと、無限再帰関数が取得されます。"$@"すべての引数を渡します。
ここに回避策があります:https : //bugs.launchpad.net/ubuntu/+source/vim/+bug/776499
シェルの初期化ファイルの先頭にエイリアスを作成します(例:〜/ .bashrc):
alias gvim="UBUNTU_MENUPROXY=0 gvim"