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"