Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Cestino/ServiceMenu"
Differenze tra le versioni 12 e 13
Versione 12 del 26/06/2007 15.28.45
Dimensione: 5900
Commento: piccola modifica al link
Versione 13 del 26/06/2007 15.36.51
Dimensione: 5936
Commento: modifiche, la pagina è da rinonimare e spostare sotto AmbienteGrafico/KDE
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
#format wiki
#LANGUAGE it
[[BR]]

BR

Introduzione

Il desktop manager [:AmbienteGrafico/KDE:KDE] dispone di uno strumento di configurazione configurazione chiamato Service Menu. Il Service Menu è uno script che estende le funzionalità di Konqueror, aggiungendo al menu con il tasto destro del mouse nuove voci per l'esecuzione di operazioni prescelte dall'utente.

La forza dei Service Menu risiede nel fatto che sono di facile creazione e gestione, in quanto il codice è contenuto in un semplice file di testo con suffisso *.desktop, un file che può essere creato e modificato con qualunque editor di testo. Tutti i file Service Menu si trovano in una sotto-directory della cartella in cui è installato KDE, solitamente in /home/nomeutente/.kde/share/apps/konqueror/servicemenus, dove .kde è una cartella nascosta di sistema.

(!) In Konqueror per visualizzare le cartelle ed i file nascosti è necessario selezionare l'apposita opzione in Visualizza -> Mostra File nascosti.

Tuttavia, è sempre meglio accertarsi di quale directory KDE usa di sistema. E' sufficiente digitare da terminale

kde-config --localprefix

per ottenere un output del tipo

/home/nomeutente/.kde/

quindi la cartella dei Service Menu sarà /home/nomeutente/.kde/share/apps/konqueror/servicemenus

Funzionamento dei Service Menu

Ogni file con suffisso ".desktop" che viene inserito nella cartella /home/nomeutente/.kde/share/apps/konqueror/servicemenus aggiunge una voce contestuale al tasto destro del mouse. Questo è un esempio del contenuto di un service menu:

[Desktop Entry]
Encoding=UTF-8
ServiceTypes=application/x-gzip,application/x-lha,application/x-tar,application/x-tgz,application/ \
x-tbz,application/x-zip,application/x-bzip,application/x-tzo,application/x-lzop,application/x-rar,application/ \
x-zoo,application/x-tarz,application/x-archive,application/x-bzip2,application/x-jar,application/x-deb 

Actions=ExtractHere;ExtractTo

[Desktop Action ExtractHere]
Name=Extract Here
Name[it]=Estrai qui
Exec=ark --extract %U

[Desktop Action ExtractTo]
Name=Extract To...
Name[it]=Estrai in...
Exec=ark --extract-to %d %u

(!) Nel codice precedente il simbolo "\" rappresenta una riga continua. Il testo è stato mandato a capo per esigenze stilistiche.

Il primo blocco che inizia con [Desktop Entry] definisce le caratteristiche generali del servizio: ci informa che è "encodato" in caratteri UTF-8, che si riferisce solo ad alcuni tipi di file (in questo caso a file compressi con diversi algoritmi) e che deve proporre due differenti azioni: ExtractHere e ExtractTo. I due blocchi che seguono definiscono le due azioni.

La riga [Desktop Action ExtractHere] dice che stiamo agendo sulla prima delle due azioni definite (che abbiamo chiamato ExtractHere).

La seconda riga Name=Extract Here è semplicemente la label generica che il servizio mostra premendo il tasto destro su un file compresso (di quelli definiti nel blocchetto precedente).

La terza riga Name[it]=Estrai qui...è la label in italiano: se la lingua di default della tua installazione è l'italiano, il menu contestuale ti mostrerà questa scritta e non quella generica in inglese. Puoi aggiungere il supporto per ulteriori lingue semplicemente aggiungendo ulteriori righe del tipo Name['es'] (per la label in spagnolo), etc.

L'ultima riga Exec=ark --extract %U è quella che effettivamente fa il lavoro: in questo caso avvia l'applicazione ark (che serve a comprimere e a decomprimere i file) con i parametri che servono. Il parametro --extract dice ad ark l'azione da compiere (estrarre dall'archivio compresso), la stringa %U passa il nome del file selezionato. Se il file si chiama test.zip, avviando questa voce del service menu sarebbe come aver scritto in una console ark --extract test.zip

Il risultato complessivo è che il file selezionato viene decompresso nel folder in cui si trova.

Il terzo blocchetto, definito come ExtractTo, fa lo stesso lavoro, ma in un folder appositamente creato: se il file che abbiamo selezionato si chiama test.zip, verrà creato un folder di nome test, al cui interno verranno scompattati i file contenuti in test.zip.

Salva questo file nella cartella che contiene i service menu (rinominandolo, per esempio, extract.desktop), poi apri Konqueror, seleziona un qualsiasi file compresso (.zip. tar.gz, .tar, etc) e premi il tasto destro del mouse: ti comparirà il menu contestuale che abbiamo appena creato e, se ci clicchi sopra, il file verrà decompresso.

Creare Service menu

Il service menu, quindi, non esegue direttamente alcuna operazione, ma semplicemente rende accessibile dal menu del click destro del mouse tutte le applicazioni e configurazioni che vogliamo.

E' evidente che le relative applicazioni devono essere installate sul sistema !

Suggerimenti

- Kdcop - konq-plugins => menu copy e move di kde + kubuntu package menu

Come dicevo, puoi crearti i service menu che ti servono (facendogli compiere anche operazioni piuttosto complesse: noi abbiamo fatto un esempio facile, ma si può fare di molto meglio) oppure puoi visitare l'apposita [http://kde-apps.org/index.php?xcontentmode=287 sezione] del sito KDE e scaricare quelli che ti interessano, modificarli e personalizzarli, usarli come base per scriverne di tuoi...

Ulteriori risorse


CategoryDaRevisionare