1

Javaまたは他のプログラミング言語を使用して、KDEとGnomeの両方のアプリケーションメニューに新しいプログラムグループを追加するにはどうすればよいですか?

UbuntuとKubuntu8でテストしています。〜/ .config / menus / Applications-mergedに単純な.menuファイルを配置すると、Kubuntuで機能しましたが、Ubuntuでは同じ手順では何も実行されません。

私のファイルの内容は次のとおりです。

<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
<Menu>
<Menu>
  <Name>My Program Group</Name>
  <Include>
   <Filename>shortcut.desktop</Filename>
  </Include>
</Menu>
</Menu>

.desktopファイルが〜/ .local / share/applicationsに正しく配置されていることに注意してください。

追伸:元の質問では、プログラムによる解決策が必要だとは明記されていませんでした。

4

5 に答える 5

1

たぶんxdg-desktop-menuはそれをしますか?man xdg-desktop-menuまたはhttp://manpages.ubuntu.com/manpages/hardy/en/man1/xdg-desktop-menu.htmlを参照してください。

于 2008-10-06T12:35:47.037 に答える
1

ありがとう、オリバー。xdg-desktop-menu を使用して、その出力を分析しました。次のように、正しいメニュー ファイルでは、外側のメニュー (アプリケーション) に明示的に名前を付ける必要があります。

<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" 
    "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
<Menu>
    <Name>Applications</Name>
<Menu>
    <Name>My Program Group</Name>
    <Include>
        <Filename>shortcut.desktop</Filename>
    </Include>
</Menu>
</Menu>

これは、Kubuntu、Ubuntu、および Fedora Core 9 では正常に機能しましたが、openSUSE では機能しませんでした。

于 2008-10-06T16:54:16.657 に答える
1

これをカバーする freedesktop.org 標準を調べることをお勧めします。最新のリストはこちらから入手できます:

http://www.freedesktop.org/wiki/Specifications/menu-spec

最新のものは現在1.0です:

http://standards.freedesktop.org/menu-spec/1.0/

FreeDesktop.org の標準には Gnome、KDE、XFCE が準拠しているため、どのディストリビューションでも動作するはずです。

于 2008-10-06T20:56:03.017 に答える
0

Gnomeで、[システム]->[設定]->[メニュー]を使用し、[新しいメニュー]または[新しいエントリ]を選択します。

于 2008-10-06T12:32:47.433 に答える
0

「openSUSEでは.directoryファイルが必須であるか、プログラムグループが表示されない」という正確な意味がわかりません。通常、xdg-desktop-menu を 2 回 (プログラム グループに対して 1 回、プログラム自体に対して 1 回) 呼び出す必要があると思います。そのため、2 つの異なる .directory ファイルも指定する必要があります。プログラム グループが空の場合、デスクトップで非表示にすることは理にかなっています。

(しかし、私はここであなたを完全に誤解しているかもしれません:-) とにかく、私自身は xdg-desktop-menu を使用したことがありません)。

于 2008-10-08T16:52:00.437 に答える