Xfce 4.6.1: Ihr Xfce Menü individuell anpassen

von Paul Arnote (parnote)

Wenn Sie auf das "PC" Menü in PCLinuxOS Phoenix 2010 klicken, erhalten Sie ein Menü, das sehr an das Menü von PCLinuxOS 2009 erinnert, das mit KDE 3.5.10 und älter verwendet wurde. Hier ist eine Abbildung vom Standardmenü in Phoenix 2010:

pic

Wenn Sie anfangen sich näher mit Xfce zu befassen, ist es nicht ohne weiteres ersichtlich wie Sie Ihr Menü ändern. Sicherlich, würde ein Menü-Editor das Anpassen Ihrer Menüs viel einfacher machen. In der Tat gab es einen in den früheren Versionen von Xfce. Die Xfce-Entwickler sind sehr optimistisch, dass der Menü-Editor in Xfce 4.8 zurück kehren wird.

Zum Glück ist es nicht so schwierig, wie man es zunächst annehmen könnte. Auch, wie bei vielen Dingen im Zusammenhang mit Linux gibt es mehr als eine Möglichkeit um das Xfce-Menü zu ändern. Lassen Sie mich Ihnen den einfachste Weg zeigen.

Elemente zum Menü hinzufügen

Es gibt eine Möglichkeit Elemente zum Xfce-Menü hinzufügen, sodass sie für alle Benutzer sichtbar sind.

Als erstes müssen wir eine .desktop-Datei erstellen. Xfce hält sich ebenfalls an die Normen von freedesktop.org, wie auch KDE und Gnome. Zu einem Teil dieser Normen gehören die Standardisierung der .desktop-Datei. Diese .desktop-Dateien werden in der Regel in /usr/share/applicationsgespeichert, und von dort aus stehen sie allen Benutzern auf dem Computer zur Verfügung. Falls es Sie interessiert, können Sie hier mehr über die freedesktop.org Standards für die .desktop-Dateien lesen.

Wenn Sie (als Root-Benutzer) auf diese Dateien mit einem Texteditor, wie z. B. Mauspad in Xfce zugreifen, dann sehen Sie möglicherweise etwas recht ähnliches wie unten dargestellt, was für den Xfce-Screenshoot erstellt wurde.

[Desktop Entry]
Version=1.0
Name=Screenshooter
Name[bg]=Снимка на екрана
Name[ca]=Captura
Name[cs]=Snímek obrazovky
Name[da]=Skærmbillede
Name[de]=Bildschirmfoto
Name[el]=Στιγμιότυπο οθόνης
Name[en_GB]=Screenshot
Name[es]=Captura de pantalla
Name[et]=Ekraanipilt
Name[eu]=Pantaila-argazkia
Name[fi]=Kuvakaappaus
Name[fr]=Capture d'écran
Name[gl]=Captura de pantalla
Name[hu]=Képernyőkép
Name[id]=Cuplikan Layar
Name[it]=Istantanea
Name[ja]=スクリーンショット
Name[nb]=Skjermbildekopi
Name[nl]=Schermafdruk
Name[pl]=Zrzut ekranu
Name[pt]=Captura de ecrã
Name[pt_BR]= Captura de tela
Name[ro]=Captură de ecran
Name[ru]=Снимок экрана 
Name[sv]=Skärmbild
Name[tr]=Ekran görüntüsü
Name[uk]=Знімок екрану
Name[ur]=سکرین شوٹ
Name[ur_PK]=سکرین شوٹ
Name[vi]=Ảnh chụp màn hình
Name[zh_CN]=屏幕截图
Comment=Take screenshots of the entire screen, of the active window or of a region
Comment[bg]=Направи снимка на целия екран, от активния прозорец или от района
Comment[ca]=Fes les captures de tota la pantalla, de la finestra activa o d'una regió
Comment[cs]=Pořizuje snímky celé obrazovky, aktivního okna nebo zvolené oblasti
Comment[da]=Tag skærmbillede af hele skærmen, af det aktive vindue eller af et område
Comment[de]=Bildschirmfoto des ganzen Bildschirms, des aktuellen Fensters oder eines Bereichs erstellen
Comment[el]=Λήψη στιγμιοτύπου οθόνης ολόκληρης της οθόνης, του ενεργού παραθύρου ή της περιοχής
Comment[en_GB]=Take screenshots of the entire screen, of the active window or of a region
Comment[es]=Realiza capturas de la pantalla completa, de la ventana activa o de una zona
Comment[et]=Tehke ekraanipildid tervest ekraanist, käsilolevast aknast või alast
Comment[eu]=Panataila osoaren, aktibo dagoen leihoaren edo panatailaren eremu baten  pantaila-argazki bat egin
Comment[fi]=Kaappaa kuvia koko näytöstä, aktiivisesta ikkunasta tai näytön alueesta
Comment[fr]=Prendre une capture d'écran de l'écran tout entier, de la fenêtre active ou d'une zone
Comment[gl]=Facer capturas de pantalla de toda a pantalla, da ventá activa ou dunha zona
Comment[hu]=Képernyőkép készítése a teljes képernyőről, egy ablakról vagy területről
Comment[id]=Ambil cuplikan layar dari seluruh layar, dari jendela yang aktif atau dari sebuah daerah
Comment[it]=Esegui l'istantanea dell'intero schermo, di una porzione o della finestra attiva.
Comment[ja]=画面全体、アクティブウィンドウまたは指定した領域のスクリーンショットを撮ります。
Comment[nb]=Ta en skjermbildekopi av hele skjermen, det aktive vinduet eller et område av skjermen
Comment[nl]=Schermafdruk maken van het gehele scherm, het actieve venster of van een deelgebied
Comment[pl]=Wykonuje zrzut całego ekranu, bieżącego okna lub wybranego obszaru
Comment[pt]=Capturar imagens de todo o ecrã, da janela activa ou de uma zona
Comment[pt_BR]=Obtem uma captura da tela inteira, da janela atual ou de uma região
Comment[ro]=Capturi ale întregului ecran, ferestrei active sau unei regiuni
Comment[ru]=Выполнить снимок всего экрана, активного окна или региона 
Comment[sv]=Ta skärmbilder av hela skärmen, aktivt fönster eller ett område
Comment[tr]=Tüm ekranın, etkin pencerenin veya belirli bir alanın ekran görüntüsünü alır
Comment[uk]=Отримати знімки всього екрану, активного вікна або окремої області
Comment[ur]=پوری سکرین، فعال ونڈو یا مخصوص علاقے کی تصویر اتاریں
Comment[ur_PK]=پوری سکرین، فعال ونڈو یا مخصوص علاقے کی تصویر اتاریں
Comment[vi]=Chụp toàn bộ màn hình, hay cửa sổ đang kích hoạt hay một vùng màn hình
Comment[zh_CN]=截取全屏幕或当前活动窗口或某一指定区域图像
Icon=applets-screenshooter
Exec=xfce4-screenshooter
Type=Application
StartupNotify=true
Terminal=false
Categories=GTK;Utility;X-MandrivaLinux-Multimedia-Graphics

Diese .desktop-Dateien werden normalerweise erstellt, wenn Sie ein Paket von Synaptic installieren, und die oben genannten sind ein typisches Beispiel für eine solche .desktop-Datei. Sie können auch eine einfachere, viel kürzere Version erstellen, welche nützlich ist, wenn Sie nicht alle Übersetzungen für den Kommentar-Teil der Datei benötigen. Eine minimale .desktop-Datei könnte ähnlich aussehen, wie das SystemInfo Programm von „Leiche“, wie unten dargestellt:

[Desktop Entry]
Name=systeminfo
Type=Application
Comment=Show System Infos
Terminal=false
Exec=systeminfo %U
Icon=systeminfo.jpg
Categories=Infos;System;Monitor;
GenericName=Systeminfos
Encoding=UTF-8

Die oben angezeigte minimalistische .desktop Datei enthält meist nur die erforderlichen Informationen. Der Parameter "Name" gibt den Namen des Programms an, wie er im Menü angezeigt wird, und ein erforderlich Eintrag ist. Es gibt auch einen Eintrag "GenericName", wenngleich dieser optional ist. Man sollte sich überlegen in beizubehalten. Z. B. könnte der "Name" "Firefox" lauten, während beim "GenericName" "Webbrowser." angegebenen sein könnte

"Type" gibt an, dass die Datei, für die wir einen Menüeintrag erstellen eine Anwendung ist, und wird ebenfalls ein erforderlicher Eintrag. Das Feld "Comment" enthält die Informationen, die in einem kleinen Pop-up Fenster angezeigt werden, wenn Sie die Maus über den Menüeintrag bewegen.

Sie werden auch feststellen, dass der "Terminal" Eintrag auf False festgelegt ist. Wenn wir die Anwendung in einer Terminalsitzung öffnen wollten, können wir diesen Parameter auf "true." ändern. Während dieser Eintrag nicht erforderlich ist, lohnt eine Überlegung in einzubeziehen. Er ermöglicht es, Menüeinträge über jede bevorzugte Anwendungen der Kommandozeile auszuführen.

Der Parameter "Exec" ist erforderlich. Dies ist der Befehl, um das starten des Elements auszuführen. Da es sich bei unserem Element um eine Anwendung handelt, ist es der Befehl den wir verwenden würden, um die Anwendung zu starten. Mit dem Parameter „Icon“ können wir die Grafikdatei festlegen, die als Symbol zur Anwendung angezeigt wird. Das Element "Categories" sagt uns, wo das Element in der Menü-Hierarchie platziert wird. Schließlich gibt der "Encoding"-Parameter, an welcher Zeichensatz verwendet wird, um die Datei .desktop zu enkodieren, damit das System weiß, wie sie zu lesen oder interpretieren ist. Es ist eine optionale Einstellung, aber noch einmal, als guter Stil, sie mit einzubeziehen. Es wird außerdem empfohlen, dass es sich bei den Standardeinstellungen um die UTF-8-Zeichenkodierung handelt.

Eine Einstellung, die in der .desktop-Datei von „SystemInfo“ nicht sehen, ist der Parameter "URL". Es ist ein erforderlicher Eintrag, wenn der Eintrag "Type" Link ist. In diesem Fall geben wir die URL (einen voll qualifizierten Internet-Link oder eine Verknüpfung zu einer lokalen Datei) an. Dies bedeutet, Sie können, wenn Sie dies möchten, eine .desktop-Datei für eine Ihrer bevorzugten Webseiten (möglicherweise die des PCLinuxOS-Forums), oder eine Datei, auf die Sie häufig auf Ihrem Computer zugreifen erstellen.

Natürlich können Sie die .desktop-Datei auch von Hand in einem Text-Editor erstellen. Glücklicherweise gibt es aber eine GUI, die Ihnen dabei hilft.

Erstellen von .desktop-Dateien über eine GUI

Zunächst öffnen Sie eine terminal-Sitzung und an den Root-Benutzer ändern. Sobald Sie Root-Rechte haben, geben Sie Folgendes in die Befehlszeile:

exo-desktop-item-edit --create-new /usr/share/applications

Das folgende Fenster wird angezeigt:

pic

Nun geben Sie die angeforderte Informationen ein. Geben Sie in der Zeile "Name" ein, was in Ihrem Menüelement angezeigt werden soll. Geben Sie in der zweiten Zeile, „Kommentar“ die Informationen ein, die beim Bewegen der Maus über das Menüelement angezeigt werden sollen. Die Auswahl mit dem Namen "Befehl" ist, wie Sie erraten können, der Befehl, den Sie ausführen, wenn Sie das Menüelement auswählen möchten. Ich gebe hier eine Audio-Datei, Start.wav beim Auswählen des Menüelements wieder. Sie können natürlich Ihrem Menüelement etwas bedeutungsvolleres als die Wiedergabe eines Signaltons zuweisen. Als Nächstes klicken Sie auf die Schaltfläche "Symbol", und wählen Sie ein Symbol, das Sie verwenden möchten, welches in Ihrem Menüeintrag dargestellt werden soll. Klicken Sie auf "Erstellen" und Sie haben die neue .desktop-Datei, in /usr/share/applications erstellt.

(Tipp: Wenn Sie vorhaben, dies öfter zu machen, dann können Sie auch einen Menüeintrag mit dem oben genannten Befehl anlegen, dies erleichtert es Ihnen weitere Menüeinträge zu erstellen. Wenn Sie dies tun, müssen Sie Ihre Befehlszeile ändern um sie lesen zu können:

gksu -l 'exo-desktop-item-edit --create-new /usr/share/applications'

Wenn es gestartet wird, fragt es ordnungsgemäß nach dem root-Passwort. Sie müssen root-Rechte besitzen, damit Sie die neue .desktop-Datei unter /usr/share/applications speichern können.)

Wir sind fast soweit...

… es gibt nur noch eine weitere Sache, die wir zu tun müssen, und das ist, anzugeben, wo das Menüelement innerhalb der Menü-Hierarchie platziert werden soll. Beachten Sie, dass wir noch keinerlei Veränderungen in der Menü-Hierarchie gemacht haben. Dies wird an einer anderen Stelle auf Ihrem System definiert. Sie können einen Blick darauf werfen, indem Sie zu /etc/xdg/menus/applications.menu gehen. Aber bei allem was Sie tun, ändern Sie nichts, es sei denn, Sie wissen WIRKLICH was Sie tun. Sie wurden gewarnt. Alles was wir hier machen ist Menüelemente innerhalb dieser Hierarchie im Menü hinzufügen.

Gehen Sie mit root-Rechten zu /usr/share/applications, und öffnen Sie die .desktop-Datei, die Sie gerade erstellt haben. Suchen Sie nach dem Abschnitt "Categories =". Fügen Sie am Ende zu dem was in dieser Zeile steht Folgendes hinzu:

X-MandrivaLinux-Multimedia-Sound

Dies teilt Xfce mit, ein Menüelement im Untermenü Sound im Multimedia-Menü zu platzieren (wir setzen noch noch immer voraus, dass wir die Audiodatei aus unserem Beispiel weiter oben abspielen wollen). Wenn Sie den Tipp von weiter oben mit dem Erstellen der .desktop-Datei über die Gui befolgt haben, dann möchten Sie möglicherweise ein Menüelement unter > „Systemkonfiguration" erstellen. In diesem Fall würden Sie in der Zeile „Categories=“ folgendes eintragen:

X-MandrivaLinux-System-Configuration

Dies fügt ein Menüelement unter "Systemkonfiguration >" mit dem angegebenen Namen und dem angegebene Symbol ein. Vertrauen Sie mir, es ist viel enfacher als es klingt.

Entfernen von Menüelementen

Schließlich, wenn wir Menüelemente hinzufügen können, gibt es auch eine Möglichkeit, wenn wir ein Menüelement wieder entfernen wollen. Es gibt zwei Möglichkeiten, dies zu tun. Erstens können wir einfach die Datei .desktop aus /usr/share/applications löschen. Aber diese Methode ist destruktiv und lässt Ihnen keinerlei Möglichkeit die Einträge wiederherzustellen, falls Sie es sich anders überlegen sollten. Außerdem verlieren Sie alle Mime-Zuordnungen zu dem Programm, das scheint keine gute Sache zu sein.

Glücklicherweise gibt es eine viel einfachere und weniger destruktive Weise um ein Menüelement zu entfernen. Fügen Sie einfach die folgende Zeile in die .desktop-Datei, die Sie aus dem Menü entfernen möchten:

NoDisplay=true

Die .desktop-Datei wird beibehalten, wie auch alle Mime-Zuordnungen zu dem Programm. Und sollten Sie Ihre Meinung ändern und die Anwendung, die sich in Ihrer .desktop-Datei befindet, erneut in Ihrem Menü anzeigen lassen, so müssen Sie lediglich die Zeile entfernen.

Fazit

Wie Sie sehen können, ist das Hinzufügen und Entfernen von Elementen aus Ihren Xfce-Menüs relativ einfach. Sicherlich wäre es viel einfacher, wenn es einen Menü-Editor mit einer GUI gäbe, aber dann würden die Entwickler von Xfce wieder zurück gehen zu einem Mix der Version 4.8.x von Xfce. Trotzdem ist der Prozess nicht schwierig, auch wenn das Hinzufügen oder Entfernen von Menüelementen nicht ohne weiteres ersichtlich ist.