web-dev-qa-db-ja.com

Ubuntu 18.04の場合、特定のアプリケーションのドロップダウンメニューをメニューバーに表示する方法はありますか?

これは、Nautilus、Geditなどに適用されます。たとえば、ドロップダウンメニューから[コピーと貼り付け]を選択したいのですが、ドロップダウンメニューが存在しないため、右クリックメニューまたはCtrl-C Ctrl-Vショートカットを使用する必要があります。これらのメニューにより、多くの重要な機能に簡単にアクセスでき、Ubuntu 18.04で使用したいと思います。

この画像(Ubuntu 16.04から)は、探しているドロップメニュー機能を示しています。

Drop-down_menu

この問題について同様の質問があることは知っていますが、答えは明確ではなく、この機能を適切に実装しないGnome Global Application Menuをインストールすることをお勧めします。また、このシェル拡張がサポートされなくなったという噂もあります。どちらの場合でも、機能しません。

いくつかの設定を試し、Gnome Tweak Toolをインストールし、Unityユーザーインターフェイスでログインしましたが、何も機能しません。メニューがどこかで使用可能であれば、メニューがウィンドウのタイトルバーにあるか、トップメニューバーにあるかは関係ありません。

私の質問は、これらのドロップダウンメニューを使用することさえ可能ですか、それともあきらめて時間の無駄を止めるべきですか?

4
jordy

その問題に対する簡単な解決策はありません。 メタアンサーとしていくつかのことを説明する必要があります。実際に可能な限り過小評価され、何が起こるのか、あなたが気づいたこの機能について尋ねるのに最適な場所はどこにありますか?.

GtkGtk + 3))appmenuという新しい機能が追加されました。この機能は、menubarと呼ばれる通常の標準機能の代わりに/オプションとして使用できます。

Appmenu:

Appmenu

メニューバー:

Menubar

appmenuは、アプリケーション全体のオプション(quit、about ..)よりも実現していますメニューが設定されているこの特定のウィンドウに関連するオプション、menubarは両方のタイプのアクションをカバー、アプリケーションアクションとウィンドウアクション(コピー、貼り付け、...)。そのため、menubarは少し一般的で、もちろんもちろんappmenuそれから、menubarは、電話のような小さな画面向けのインターフェースでは適応が難しいです。

copyおよびpasteアクションはウィンドウ固有のものであることに注意してください。選択したファイルをあるウィンドウから別のウィンドウにコピーするためです。したがって、それはアプリケーションアクションのタイプではなく、appmenuアクションの一部ではありません。ただし、menubarアクションの一部にすることができます。

その時点以降、両方の機能が存在し、menubarappmenu、especificアプリケーションの開発者は、1つまたは両方のタイプのメニューとどのタイプを表示するかを決定する必要がある人です。が選択されます。

外部のgnome開発者のほとんどは、自分のアプリケーションがKDEのような他のデスクトップ環境と互換性を持つことを望んでいますが、menubar方法は標準です。代わりに、gnome開発者はappmenuを選択します。これは彼自身の方法であり、彼らはより良いと考えました。これは、いずれかの方法を選択した場合、残りはもはや存在しないという必要性を意味しません。デフォルトとしては表示されません。

とにかく、この決定のいくつかの例外は例えばです:

  • Gimpはgnomeアプリケーションでもありますが、明らかな理由によりappmenuを実装できません大きなメニュー)。そのため、このgnomeアプリケーションはmenubarを表示し続けます。

  • Nautilusは、彼のgnome開発者が、menubarのすべての実装を削除し、 appmenu彼らはgnomeの観点を十分に考慮していたので。彼らは、他のデスクトップ開発者に自分のプラットフォーム用にそれを修正するように強制することを気にしません。 NautilusにパッチがあるUnityの場合も同様です。または、他のアプリケーションがNautilusのフォークとして作成されたMateとCinnamon。

このすべての混乱に加えて、appmenumenubarDBus経由。この機能は、特定のシェル(unity、gnome-Shell)で使用して、Global Menu BarMacOS)またはGlobal AppmenuGnome Shellのように。また、アプリケーションが両方のタイプのメニューを同時にエクスポートする方法については、Unity Desktop可能です。

ただし、Globalオプションは、特定のアプリケーション(Nautilus、Gedit ...)内でサポートされている場合にのみ可能です。

  • Unity Desktop(標準的なデスクトップ)では、多くのgnomeアプリケーションにパッチが適用されましたUnity Global Menu機能の対応で作業する。

  • Gnome-Shell(gnomeデスクトップ)では、自分の開発者にグローバルAppmenu機能を使用し、強制的に標準にします。

この事実は矛盾して入り、もちろんシェル開発者の努力が次々と働いています。

注意してください:使用のgnomeの決定で導入されたより困難で関連する問題について言及したくありませんクライアント側の装飾サーバー側の装飾の代わりに。この決定の反響もあなたの質問に多く関連していますが、実際には邪魔にならない方法で実装できるので、私はそれを避けます。 GNOMEがこの機能を実際にどのように実装しているかは現時点ではわかりません。繰り返しますが、彼らはそれを強制的に標準にしようとしています。

Ubuntu開発者がユニティデスクトップをプライマリとして使用しないことになった今、ユーザーはこの問題に気付いています。 Unity以外のグローバルメニューをサポートするようにアプリケーションにパッチを適用していないので、Ubuntu開発者が追加したパッチがないため、アプリケーションはそのように見えるため、ユーザーはより簡単に競合を確認できます。

その後、開発者のレベルで公開されている問題に対するいくつかの解決策があります。

  1. アプリケーションの特定の開発者は、両方の機能をサポートする必要があります(その場合、Gnome開発者)。

  2. ディストリビューション開発者は、問題のあるgnomeアプリケーションのパッチを作成/継続する必要があります。また、パッチを特定のデスクトップ(Unity)の外部に拡張して、他のデスクトップ環境で使用できるようにする必要があります。

最後に注意してください:Ubuntuのパッチはコードのレベルにあり、これはアプリケーション自体に依存するので、ユーザーとしてできることは何もありませんこのタイプの問題を解決するために、Gnome Global Menuのようなgnomeシェル拡張でできることは何もありません。

Nautilusのようなアプリケーションに欠けている個々の機能を解決するための唯一の解決策は、Nautilus内からです。そのため、ソリューションはアプリケーション自体の内部から取得する必要があります。あなたの側にある唯一の「解決策」は、この事実との不一致を宣言してから、異なるアプリケーションを使用することです。例:Nautilusの代わりとしてNemoまたはCajaを使用します。

6
lestcape