ubuntuusers.de

Du betrachtest eine alte Revision dieser Wikiseite.

KDE-Servicemenüs

Fehlende Vorlage

Das gewünschte Template „Wiki/Vorlagen/InArbeit“ existiert nicht.

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


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

KDE-Servicemenüs sind Einträge, die abhängig vom ausgewählten Dateityp in einem Kontextmenü erscheinen. Die Arbeit mit Dateien wird durch die Servicemenüs erheblich vereinfacht. Beispiele für standardmäßig installierte Servicemenüs sind die Optionen für Musik-Dateien "Amarok/An Wiedergabeliste anhängen" oder "Archiv hierher auspacken" für komprimierte Dateien.

Die Erstellung von Servicemenüs erfordert keine großen Kenntnisse über Programmierung. Die entsprechenden Einträge können in aller Regel mit einem Text-Editor geschrieben werden. Hier wird das Grundgerüst eines Servicemenüs vorgestellt und einige Beispiele vorgestellt, bei denen man sie anwenden kann.

Erstellung des Servicemenüs

Das Servicemenü wird mit einem Text-Editors (z.B. kate) erstellt. Das Servicemenü ist eine Textdatei, die mit einem eindeutigen Namen und der Dateiendung .desktop abgespeichert wird. Die Datei beginnt mit folgendem Inhalten:

[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=audio/x-mp3;
Actions=normalize; Action2

Bei MimeType= kann eingetragen werden, für welche Kategorie oder Dateitypen das Kontextmenü auftauchen soll. Für Verzeichnisse wird z.B. inode/directory eingetragen. Dabei lässt sich auch mit einem * als Wildcard arbeiten, z.B image/* für alle Typen von Bildern.

Nach dem Eintrag Actions= werden dann eine oder mehrere Aktionen definiert, die in weiteren Sektionen unterhalb beschrieben werden.

[Desktop Action normalize]
Name=normalize
Name[de]=Normalisieren
Icon=audio-mpeg
Exec=mp3gain -r -c -d 7 %u

In den eckigen Klammern wird nun der Abschnitt deklariert, die im obigen Abschnitt bereits beschrieben wird.

Anschließend wird der Name, der im Kontextmenü erscheint vergeben. Für Übersetzungen kann der Name ebenfalls mit angegeben werden. Der entsprechende Eintrag wird dann über die Spracheinstellungen des Systems ausgewählt.

Im Kontextmenü wird ebenfalls ein Icon angezeigt, wenn es hier definiert wurde. Die Angabe des Icons bezieht sich auf den Pfad /usr/share/icons oder dessen Unterverzeichnis, wenn keine absolute Pfadangabe gemacht wurde.

In der nächsten Zeile wird mit Exec= der auszuführende Befehl angegeben werden. Am Ende wird der Dateiname übergeben. Das kann mit folgenden Parametern erfolgen:

  • %u : eine Datei oder Ordner mit Pfadangabe, auch wenn mehrere Dateien oder Ordner ausgewählt wurden

  • %U : mehrere Dateien oder Ordner mit Pfadangabe

  • %f : eine Datei oder Ordner ohne Pfadangabe, auch wenn mehrere Dateien oder Ordner ausgewählt wurden

  • %F : mehrere Dateien oder Ordner ohne Pfadangabe

Als Befehl können auch mehrere aufeinander folgende Befehle ausgewählt werden: Exec=/bin/sh -c ";<Liste der Befehle>" Bei vielen Befehlen kann diese Notation jedoch schnell unübersichtlich werden. Hier bietet es sich an, die Befehle in ein Bash-Skript zu schreiben, und die Dateien dem Skript zu übergeben. Im Bash-Skript lässt sich auch eine Rückmeldung mittels KDialog einbauen. Dementsprechend sieht dann die Zeile so aus:

Exec=skript.sh %U

In der Befehlszeile können auch Befehle eingetragen werden, die über das dbus-Protokoll auf andere, bereits laufende Anwendungen zugreifen.

Installation der Servicemenüs

Die Servicemenüs können vom Benutzer lokal in seinem Homeverzeicnis oder global im Basisordner installiert werden. Für die lokale Installation muss die erstellte Datei in den Ordner ~/.kde/share/kde4/services/Servicemenus kopiert werden. Bei der globalen Installation mit root-Rechten kopiert man die erstellte Datei in das Verzeichnis /usr/share/kde4/services/ServiceMenus.

Vorschläge zu Servicemenüs

Hier eine kleine Liste von Sachen, die man über ein Servicemenü realisieren kann:

  • mp3 mittels mp3gain auf eine normalisierte Lautstärke bringen

  • Erstellung von Bildkopien mit kleineren Abmessungen oder höheren Kompressionsraten für das Web

  • Bilder mit Wasserzeichen versehen

  • Einbindung von ISO-Images in das Dateisystem

  • etc.

Diese Revision wurde am 29. Dezember 2010 10:36 von Schmirglgruber erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Desktop, Dateimanager, KDE