KDE Servicemenu's

Auteurs: Bart Van Hove, David Hermans
Herziening 0.5
Licenties en verdiensten

Deze HOWTO legt uit hoe je zogenaamde servicemenu's kunt maken in KDE. Servicemenu's zijn snelmenu's welke u kunt aanroepen via de rechtermuisknop.


Wat is een servicemenu?

Een servicemenu is een speciale ingang die in Konqueror wordt getoond als je rechtsklikt op een bestand. De inhoud die je krijgt in de menu hangt af van het bestandstype. Zo zie je bijvoorbeeld bij een zip- of tar-bestand een servicemenu van Ark (als deze geïnstalleerd is natuurlijk) die de optie Hier naartoe uitpakken... weergeeft. Die optie Hier naartoe uitpakken... is dus een servicemenu.

Servicemenus hebben dezelfde opbouw als de .desktop bestanden van KDE die onder andere op de Desktop en in KMenu worden gebruikt. Er zijn 3 mogelijke plaatsen waar je ze kan aantreffen:

/opt/kde3/share/apps/konqueror/servicemenus/ # hier in mijn geval
/usr/share/apps/konqueror/servicemenus/
/home/user/.kde3/share/apps/konqueror/servicemenus/

Maak een servicemenu

Ook al vind ik Konqueror best een goede filemanager, toch miste ik iets. Mijn doel was een optie om te rechtsklikken en Als achtergrond instellen te creëren voor alle PNG- en JPEG-bestanden. We beginnen met onze eerste servicemenu. Open je favoriete text-editor. Het eerste wat we typen is:

[Desktop Entry]
 ServiceTypes=image/png,image/jpeg
 Actions=setAsWallpaper

Elk servicemenu moet bestaan uit de bovenstaande 3 regels!

ServiceTypes geeft aan voor welke bestanden de optie moet getoond worden (in dit geval jpg en png bestanden). Je kan gemakkelijk andere bestandstypen toevoegen door ze te scheiden met een komma (GEEN spaties!).

Actions verwijst naar de actie van de ingang. De eigenlijke actie maken we later aan.

Sla het bestand op onder een bestandsnaam naar keuze (sluit de editor nog niet). Let wel dat het op .desktop eindigt! Bijvoorbeeld: setaswall.desktop.

Maak een actie

Nu is het tijd om de actie te maken. Deze actie moet in hetzelfde bestand setaswall.desktop staan. Ergens onderaan voeg je volgende regels toe:

[Desktop Action setAsWallpaper]
 Name=Set As Wallpaper
 Icon=background
 Exec=dcop kdesktop KBackgroundIface setWallpaper %U 6

Het meeste spreekt voor zich. Het Exec element gebruikt dcop. Je moet geen kenner zijn om dcop acties te achterhalen. Start Kdcop op en je kan naar hartelust alle KDE acties opzoeken. In dit geval is het de actie die de wallpaper schaalt.

Als je meerdere commando's in 1 keer wilt uitvoeren kan je de hulp van de shell inroepen:

Exec=/bin/sh -c "HIER JOUW COMMANDO'S/SCRIPT"

Ik ben er zeker van dat je zelf nog handige servicemenus kan maken. Tot slot onze volledige setaswallpaper.desktop

[Desktop Entry]
 ServiceTypes=image/png,image/jpeg
 Actions=setAsWallpaper
 [Desktop Action setAsWallpaper]
 Name=Set As Wallpaper
 Icon=background
 Exec=dcop kdesktop KBackgroundIface setWallpaper %U 6

Als alles klaar is sla je het bestand op. Open Konqueror en aanschouw...

Publiceren

Wanneer je denkt dat meer mensen jouw servicemenu nuttig zullen vinden, kan je deze op internet zetten. Zowel KDE-Apps.org als KDE-Look.org hebben zelfs een aparte sectie voor servicemenus. Wanneer je servicemenu iets met afbeeldingen of andere vormen van multimedia te maken heeft, kan je je servicemenu het beste op KDE-Look zetten. Schrijf je in, als je dat nog niet bent, je login is dan op beide websites te gebruiken. Druk wanneer je ingelogd bent op Add Content en volg de stappen aldaar.

Licenties en verdiensten

Deze HOWTO is met toestemming overgenomen van de website www.bartendavid.be.

Gebaseerd op de howto Creating Konqueror Service Menus van Aaron Seigo.

Over deze site | Laatst gewijzigd: $Date: 2005/07/07 09:37:51 $ door: $Author: bram $