ubuntuusers.deWikiMenue

Menue

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/Tango/document-new.png Die Fenstermanager der unterschiedlichen Ubuntu-Varianten bringen in aller Regel einen Menüeditor mit, der es gestattet, Menüeinträge komfortabel vorzunehmen bzw. zu verändern. Jedoch kann es unter Umständen nötig sein, dass die zu Grunde liegenden Dateien mit der Endung .desktop von Hand bearbeitet werden müssen. Neben allgemeinen Einstellungen werden Besonderheiten des jeweiligen Fenstermanagers aufgeführt.

.desktop-Dateien

Für einen Eintrag in das Menü muss man eine Datei [2] nach folgendem Muster erstellen: Beispielname.desktop. Benutzerspezifische Menüeinstellungen werden im Ordner ~/.local/share/applications abgespeichert. Sollen die Einstellungen systemweit gelten, so erstellt man diese Datei unter /usr/share/applications oder /usr/share/gnome/apps. Im Gegensatz zur ersten Variante werden hier jedoch Rootrechte [3] benötigt.

Allgemeine Voraussetzungen sind a) eine geeignete Symboldatei (Icon) und b) das installierte Programm. Für genauere Informationen zum Thema die Seite Desktop Menu Specification {en} konsultieren.

Im folgenden Beispiel wird ein Eintrag im Menü mit dem Namen "LinDVD" für das Untermenü "Multimedia" erstellt. Einen Texteditor [2] öffnen und folgenden Text kopieren und einfügen:

[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=LinDVD
GenericName=Video Player
Comment=DVD-Player
Exec=lindvd
Icon=/usr/share/pixmaps/LinDVD.xpm
Terminal=false
Type=Application
StartupNotify=false
Categories=AudioVideo;Player;
OnlyShowIn=GNOME;XFCE;
MimeType=video/mpeg;audio/mpeg;

Die Datei nun im Ordner ~/.local/share/applications unter einem aussagekräftigen Namen wie z.B. lindvd.desktop abspeichern. Der neue Eintrag erscheint als "LinDVD" sofort im Menü.

./menue_warning.png

Starter auf dem Desktop

Möchte man einen Programmstarter auf dem Desktop anlegen, so muss die erstellte Datei (zusätzlich) im eigenen Homeverzeichnis im Ordner ~/Desktop/ (oder ~/Arbeitsfläche/ – je nach Ubuntu-Version) abgespeichert werden.

Wenn bei der Nutzung unter GNOME eine Fehlermeldung auftaucht (siehe Abbildung), dann ist es zusätzlich erforderlich, die Datei ausführbar [3] zu machen (572918). Unter Xfce und LXDE tritt das Problem nicht auf.

Elemente

Die Bedeutung der einzelnen Elemente: (siehe auch Desktop Menu Specification Standard Keys {en})

Systemmenü
ElementBeschreibung
Name= Der Name der Verknüpfung innerhalb des Menüs
Generic Name= optional: allgemeine Beschreibung des Programms, z.B. Web Browser
Comment= optional: ein kurzer beschreibender Satz, welcher mit dem Feld Name nicht identisch ist
Exec= Ausführungsbefehl für das Programm (mit dem es in einem Terminalfenster gestartet werden kann - z.B. scummvm)
TryExec= anhand dieser Zeile wird überprüft, ob das Programm, für das ein Menüeintrag angezeigt werden soll, installiert ist. Entweder der komplette Pfad zur ausführbaren Datei oder nur ihr Name (dann wird versucht, ihn über die $PATH-Variable aufzulösen).
Icon= Symbol (Piktogramm), welches im Menü angezeigt werden soll (Icon Themes) {en} .
Terminal= Auswahl, ob das Programm in einem Terminalfenster läuft. true für ja, false für nein.
Type= Man unterscheidet drei Arten von Spezifikationen: Application, Link und Directory. Für Programme Application wählen.
StartupNotify= Soll der Programmstart über ein spezielles Mauszeigersymbol angezeigt werden? In der Regel wird die Option false für Einträge von Programmen ins Menü genutzt. Weitere Informationen {en} .
Categories= Angaben hier entscheiden, in welchem Untermenü die Anwendung angezeigt werden soll. Alle verfügbaren Kategorien kann man hier {en} einsehen. Mehrere Angaben sind möglich. Beispiele:

OpenOffice.org/LibreOffice: =Application;Office;WordProcessor;
ScummVM: =Game;AdventureGame;
Pidgin: Network;InstantMessaging;
Gxine: =AudioVideo;GTK;Player;TV;
Xfburn: =X-XFCE;GTK;DiscBurning;Archiving;Utility;
OnlyShowIn= Eintrag wird nur im Menü von Unity, GNOME, KDE, Xfce oder LXDE angezeigt. Kombinationen sind möglich.
MimeType= Um den korrekten MimeType anzugeben, muss man zuerst in Erfahrung bringen, welche Dateitypen vom Programm unterstützt werden. Diese Informationen sind im Wiki oder auf der Internetseite des Programms / Projektes zu finden. Hat man diese Informationen, so öffnet man mit einem Editor die Datei /etc/mime.types. Anhand der Dateiendungen z.B. mp3 und mpg erhält man die benötigten Informationen für das Programm LinDVD: audio/mpeg; video/mpeg;. Diese werden dann in der Datei eingetragen. (shared-mime-info-spec) {en}
StartupWMClass= optional: Verwendung einer speziellen "WMClass". Wichtig z.b. für Java-Apps in Kombination mit Unity oder Docky.

Experten-Info:

Bei der Angabe von relativen Pfaden für Programme, Skripte oder Symbole im eigenen Homeverzeichnis kommt es häufiger zu Problemen. Dem kann man aus dem Weg gehen, wenn man stattdessen absolute Pfade verwendet.

Beispiele

natives Programm

Am Beispiel von ScummVM:

[Desktop Entry]
Encoding=UTF-8
Name=ScummVM
Comment=Sammlung von Interpretern für einige Adventure-Game-Engines
Exec=scummvm
Icon=/usr/share/pixmaps/scummvm-logo.png
Terminal=false
Type=Application
Categories=Application;Game;AdventureGame;
StartupNotify=false

Shell-Skript

Obwohl auch der TV-Browser auf Java (siehe unten) basiert, dient das Programm hier als Beispiel für einen Programmstart über ein Shell-Skript:

[Desktop Entry]
Encoding=UTF-8
Name=TV-Browser
Comment=digitale TV-Zeitschrift
Exec=/usr/lib/tvbrowser/tvbrowser.sh
Icon=/usr/share/pixmaps/tvbrowser128.png
Terminal=false
Type=Application
Categories=AudioVideo;
StartupNotify=false

Java-Programm

Ein Beispiel für einen Java-Programmstarter (siehe Geotag). Benutzername, Pfade und Dateinamen sind noch anzupassen:

[Desktop Entry]
Encoding=UTF-8
Name=Geotag
Comment=GPS-Daten in Bilder anzeigen und setzen
Exec=java -jar /home/BENUTZERNAME/bin/geotag.jar
Icon=/home/BENUTZERNAME/Bilder/geotag.png
Terminal=false
Type=Application
Categories=Graphics;
StartupNotify=false

Weitere Beispiele können mittels eines Editors [2] in /usr/share/applications eingesehen und für eigene Einträge verwendet bzw. überarbeitet werden.

Hinweis:

Bitte immer mit Kopien der Originaldateien arbeiten. Die Originaldatei nur überschreiben, wenn man sich der Konsequenzen bewusst ist.

Um Einträge im Menü zu entfernen, kann man dies auf zwei verschiedene Arten lösen.

  • entweder man löscht die betreffende .desktop-Datei

  • oder man fügt den Wert

    NoDisplay=true

    in die .desktop Datei ein [2]

Problembehebung

Unity

Speziell bei Java-Programmen unter Unity ist eine .desktop-Datei etwas kniffelig zu erstellen. Diese Diskussion im Forum stellt eine Lösung vor.

Diese Revision wurde am 9. Februar 2012 um 15:34 Uhr von aasche erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet: GNOME, Xfce, KDE, LXDE

Passwort vergessen?