{{{#!Wissen * [1]: [:Terminal: Ein Terminal öffnen] * [2]: [:Editor: Einen Editor öffnen] }}} [[TableOfContents(1)]] = Funktionsweise = Die Einträge im Menü werden von [:Xfce:] automatisch generiert und eingefügt. Dabei hält es sich an die Standards von [http://www.Freedesktop.org Freedesktop.org] {en} . Das Menü wird von '''.desktop'''-Dateien aufgebaut, dessen Informationen die eigentliche Hierachie ergeben. Orte, an denen diese '''.desktop'''-Dateien und Programme gesucht werden, findet man in der folgenden Datei: '''~/.cache/xfce4/desktop/menu-cache--home-user-.config-xfce4-desktop-menu.xml''' Ein Beispiel: {{{#!Text XDG_DATA_DIRS=/etc/xdg/xubuntu:/usr/share:/usr/local/share:/usr/share }}} Mit der Variablen ''"XDG_DATA_DIRS"'' sucht Xfce die Programme in den vorgegebenen Verzeichnissen. Also in: * '''/etc/xdg/xubuntu''' * '''/usr/share''' * '''/usr/local/share''' * '''/usr/share''' [[Bild(./menu.png,300,rechts)]] Und in den folgenden Verzeichnissen sucht Xfce die '''.desktop''' Dateien * '''/etc/xdg/xubuntu/applications/''' * '''/usr/share/applications/''' * '''/usr/share/gnome/apps/''' * '''/home/user/.kde/share/''' * '''/usr/share/applnk/''' * '''...''' [[Anchor(Probleme)]] = Probleme mit dem Menü = == Übersetzung == Viele Teile im Menü von Xfce sind noch nicht übersetzt bzw. eingebunden worden. Zur Zeit lassen sich nur oberflächliche Bezeichnungen mit dem Menü-Editor ändern. Bestandteile im Systemmenü sind dabei (noch) nicht veränderbar, da diese vom System selbst verwaltet und erstellt werden. == Wenn Programme im Menü fehlen... == ..., kann dies an verschiedenen Ursachen liegen: * Das Programm hat keine '''.desktop'''-Datei erstellt. * Das Programm hat die '''.desktop'''-Datei nicht in einen der gesuchten Standardpfade gelegt. * Das Programm hat die '''.desktop'''-Datei in einen Standardpfad gelegt, aber das Programm selbst befindet sich nicht in einem Standardpfad (z.B. in '''/opt/Programm'''). In diesem Fall muss man die ''"XDG_DATA_DIRS"''-Variable anpassen und Xfce neustarten. == Falsche Platzierung == Wer zum Beispiel den RealPlayer 10 installiert hat, kennt das Problem. Man findet den Player im Xfce Menü nun unter ''"Graphics"'', wo er natürlich nicht hingehört. Um dies zu ändern muss man die '''.desktop'''-Datei des Programms bearbeiten [2]. Man findet diese unter '''/usr/share/applications/realplay.desktop'''. Der Wert ''"Categories=Graphics"'' ist dabei ausschlaggebend. Dabei muss ''"Graphics"'' auf den gewünschten Menünamen geändert werden, hier auf ''"AudioVideo"''. [[Anchor(Bearbeitung)]] = Das Menü bearbeiten = == Menüeintrag hinzufügen == Für das Erstellen von Einträgen im Menü muss man eine '''.desktop'''-Datei für gewöhnlich unter '''/usr/share/applications''' erstellen (Editor mit Root-Rechten erforderlich [2]). Im folgenden Beispiel wird ein Eintrag im Menü mit dem Namen ''"foo"'' für das Untermenü ''"Multimedia"'' erstellt: {{{#!Text [Desktop Entry] Encoding=UTF-8 Name=foo GenericName=bar Comment=Senseless programm ever Exec=foobar Icon=/usr/share/pixmaps/foobar.xpm Terminal=false Type=Application Categories=Multimedia; }}} == Menüeintrag entfernen == 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 {{{#!Text NoDisplay=true }}} in die '''.desktop''' Datei ein [2]. == Eigenes Menü erstellen == Um sein eigenes Menü ('''menu.xml''') erstellen zu lassen, kann man dies mit dem [http://menumaker.sourceforge.net/ Menumaker] {en} machen. Man lädt sich das aktuelle Archiv herunter, entpackt es und wechselt im Terminal [1] in das entsprechende Verzeichnis. Vor dem Ausführen sollte man aber die alte '''menu.xml''' sichern. Anschließend gibt man folgenden Befehl ein: {{{#!Befehl mmaker Xfce4 }}} Das Programm erstellt jetzt automatisch eine neue '''menu.xml''' (standardmäßig unter '''~/.config/xfce4/desktop/menu.xml'''), die man im Anschluss mit einem Editor [2] an die eigenen Bedürfnisse anpassen kann. [[Anchor(menu_xml)]] = Aufbau der menu.xml Datei = Wenn man eine eigene '''menu.xml''' Datei mit einem Editor [2] öffnet, sehen die Einträge folgendermaßen aus: {{{#!Text * * * * }}} == Legende: == * '''''''''' = Bezeichnet die Stelle eines folgenden Menüabschnitts * '''''''''' = Name des Untermenüs (hier Shells). Danach können weitere Üntermenüpunkte in dieser Form folgen. * '''''