Tilpasning af Thunar

Dette kapitel beskriver hvordan du ændrer bestemte dele af filhåndteringen for tilpasse den til dit behov.

"Send til"-menuen

Thunar inkluderer en Send til-menu, der tilbyder mulige destinationer som filer og mapper kan sendes til. For at tilgå Send til-menuen, skal du vælge

"Send til"-menu

Som standard indeholder Send til-menuen, et punkt der hedder Skrivebord (opret henvisning) til alle filer og mapper, som simpelthen opretter en henvisning til den valgte fil på skrivebordet. Derudover hvis Genvejspanelet er aktivt, vil menuen også inkludere et punkt der hedder Sidepanel (opret henvisning) til mapper, der tillader brugere at tilføje nye genveje til sidepanelet. Efter disse punkter vil Thunar vise flytbare drev der for øjeblikket, er tilsluttet computeren. I det ovenstående skærmbillede repræsenterer en mulig destination for hvor filerne kan sendes til. BemSend til-menuen, s

Derudover bliver Thunar også leveret med thunar-sendto-email-udvidelsesmodulet, der tilføjer punktet E-postmodtager til menuen, som så åbner e-postprogrammet med den valgte fil vedhæftet meddelelsen. Hvis markeringen indeholder mindst en mappe, vil de valgte elementer blive pakket ned i en ZIP-fil før de er vedhæftet meddelelsen. Modsat, hvis markeringen indeholder flere filer, eller en enkelt fil som er større end 200Kib, vil brugeren blive spurgt om filerne skal pakkes ned i og sendes som en ZIP-fil.

Ligesom de fleste funktioner i Thunar, kan Send til-menuen nemt udvides af brugere og programudviklere med nye destinationer, ved at bruge desktop entry files. Disse filer skal installeres i en af $XDG_DATA_DIRS/Thunar/sendto/ mapperne (see the XDG Base Directory Specification for detaljer om $XDG_DATA_DIRS variable).

Destinationens Mime-type> .desktop angiver hvilke type filer der skal være til rådighed i Send til-menuen. F.eks. hvis du vil tilføje et punkt for et Flickr overførselsværktøj, så vil dette punkt kun vises hvis markeringen indeholder JPEG-filer (andre filformater er ikke understøttet af Flickr) og du ville så skulle tilføje en linie som MimeType=image/jpeg;. Hvis du ikke angiver nogen MimeType vil punktet blive vist for alle filtyper.

Et komplet eksempel ved brug af postr-progammet, er vist forneden:

# postr.desktop - Integrér postr i
#                  "Send til"-menuen.
[Desktop Entry]
Type=Application
Version=1.0
Encoding=UTF-8
TryExec=postr
Exec=postr %F
Icon=postr
Name=Flickr
MimeType=image/jpeg;

Hvis du installerer denne fil i ~/.local/share/Thunar/sendto/ (opret mappen hvis den endnu ikke findes) Send til-menuen for JPEG-filer vil vise det nye punkt, Flickr, som kan bruges til at overføre JPEG-billeder til Flickr.

Thunar projektets Wiki indeholder forskellige eksempler på brugbare destinationer til Send til-menuen. Du er velkommen til at udvide Wikisiden med nye eksempler.

Miniaturegenererer

Thunar bruger små værktøjer til at oprette miniaturer af bestemte filtyper og viser miniaturerne som forhåndsvisning af filindholdet. Disse små værktøjer bliver kaldt miniaturegenererer. Thunar bliver leveret med miniaturegenererer for billed- og skrifttypefiler, og gør automatisk brug af de installerede miniaturegenererer fra GNOME, hvis den er installeret med understøttelse af gconf. Brugere kan løbende udvide denne grundlæggende funktionalitet med miniaturegenererer til andre filtyper.

Hvis du planlægger at skrive en brugerdefineret miniaturegenerer, skal du starte med et program der accepterer mindst to kommandolinjeparametre, inddatafilen, som er af den filtype du vil understøtte og uddatafilen, som er en PNG-fil der oversættes med det format angivet af Standard for miniaturehåndtering. Derudover må dit program også acceptere den ønskede størrelse på miniaturen, som er valgfri men højt anbefalet. Hvis du skriver uddatafilen til en vilkårlig billedstørrelse, vil Thunar derefter skalere det til den ønskede størrelse, hvilket muligvis gør at der bliver produceret et mindre optimalt resultat end hvis miniaturen var oprettet med de anmodede mål.

Når først dit værktøj til at generere miniaturer er færdigt, skal du registrere din miniaturegenererer, så Thunar kan finde og bruge det. Derfor, alt du skal gøre er at installere en beskrivelsesfil til miniaturegenereren (en .desktop fil) i en de $XDG_DATA_DIRS/thumbnailers/ stier. F.eks. hvis du kun vil registrere miniaturegenereren til din brugerkonto, kan du installere filen i denne mappe ~/.local/share/thumbnailers/. .desktop for miniaturegenererer har det følgende format.

Filformatbeskrivelse til miniaturegenererer

Miniaturegenerererbeskrivelsesfiler bruger Desktop Entry Formatet med en særlig type af X-miniaturegenererer og et særligt felt,X-Thumbnailer-Exec med nye feltkoder. Grundlæggende har en miniaturegenerererbeskrivelsesfil, det følgende format.

[Desktop Entry]
Version=1.0
Encoding=UTF-8
Type=X-Thumbnailer
Name=Din-miniaturegenererer
MimeType=din-understøttede/MIME-type;
X-Thumbnailer-Exec=din-miniaturegenererer %i %o %s

Versionen og indkodning er foreskrevet af Desktop Entry specifikationen, brug blot de værdier der er vist i det ovenstående eksempel. Typefeltet skal have den bestemte værdi X-Thumbnailer, ellers vil din miniature ikke blive genkendt. Navneværdien beskriver din miniature.

X-Thumbnailer-Exec feltet indeholder kommandoen til at køre din miniature, og understøtter særlige feltkoder der bliver erstattet når miniaturen køres. De genkendte feltkoder er følgende:

%i
Den lokale sti til inddatafilen til oprettelsen af miniaturevisning, kan entet være en sti relativ til mappen hvor miniaturegenereren blev kørt, eller en fuld sti.
%o
Den lokale sti til uddatafilen, hvor den oprettede miniature skal gemmes. Uddatafilen skal gemmes som en gyldig PNG-fil i overensstemmelse med miniaturestandarden. (se overnstående). Bemærk at stien ikke må ende med .png, som har en betydning hvis du kører særlige tredjepartsprogrammer.
%s
Den ønskede størrelse på den generede miniature i pixels. Den parameter er valgfri.
%u
Ligesom %i, men erstattet med URI'en af filen, fremfor stien. Dette blev tilføjet for at gøre det mere kompatibelt med GNOME.
%%
Vil blive erstattet med en enkelt %.

Du skal inkludere mindst %o og %i eller %u, ellers vil din miniaturegenererer være ubrugelig.

MIME-typen viser MIME-typerne - adskilt af et semikolon - for hvilke din miniaturegenererer er i stand til at vise forhåndsvisninger.

EPS miniaturegenererer-eksempel

Dette eksempel demonsterer hvordan man skriver og installerer en ny miniaturegenererer til .eps-filer, som bruger convert-værktøjet der bliver leveret som en del af ImageMagick. Vi begynder først med et simpelt skript der kører convert for at generere en miniature i den ønskede størrelse.

#!/bin/sh
#
# eps-thumbnailer - Eksempel på miniaturegenerererskript for EPS-filer.
#
# Anvendelse: esp-thumbnailer eps-file png-file size
#

# command line parameters
ifile=$1
ofile=$2
size=$3

# kør convert (ImageMagick)
exec convert "eps:$ifile" -scale "$sizex$size" "png:$ofile"

Gem det ovenstående skript til filen eps-thumbnailer, vær sikker på at den kan køres, og installér den i /usr/local/bin.

$ chmod +x eps-thumbnailer
$ sudo install eps-thumbnailer /usr/local/bin/eps-thum

Derefter skal vi oprette miniaturegenerererbeskrivelsesfilen eps-thumbnailer.desktop, der ser således ud:

[Desktop Entry]
Version=1.0
Encoding=UTF-8
Type=X-Thumbnailer
Name=EPS Thumbnailer
TryExec=convert
MimeType=image/x-eps;
X-Thumbnailer-Exec=/usr/local/bin/eps-thumbnailer %i %o %s

Denne fil skal installeres i /usr/local/share/thumbnailers (opret mappen hvis den ikke eksisterer).

$ sudo install -d /usr/local/share/thumbnailers
$ sudo install eps-thumbnailer.desktop /usr/local/share/thumbnailers/eps-thumbnailer.desktop

eps-thumbnailer.desktop-filen bruger den særlige knap TryExec, som, hvis angivet, navngiver en kommando der skal være tilstede på systemet for at miniaturegenereren er brugbar. I dette tilfælde er vores skript ubrugeligt hvis convert-programmet ikke er til stede.

Det sidste skridt er at regenere mellemlageret til miniaturegenereren så Thunar kan bruge din miniaturegenererer. Mellemlageret til miniaturegenererer er lokaliseret i $XDG_CACHE_HOME/Thunar/thumbnailers.cache (med mindre den er overskrevet af dig eller systemadministratoren, vil $XDG_CACHE_HOME pege på mappen ~/.cache/). Mellemlageret til miniaturegenereren er periodisk regenereret af Thunar, men du kan tvinge den til at regenerere det ved at køre thunar-vfs-update-thumbnailers-cache-1-værktøjet, der bliver leveret som en del af Thunar. Dette værktøj er som regel installeret i libexec i din installationssti (sbin på Debian/Ubuntu). Så f.eks. hvis Thunar er installeret i /usr, skal du køre værktøjet således:

$ /usr/libexec/thunar-vfs-update-thumbnailers-cache-1

Men vær sikker på at du kører programmet fra din brugerkonto, og ikke superbrugerkontoen, da mellemlageret til miniaturegenereren er gemt i din hjemmemappe, fremfor på selve systemet.

Hvis Thunar nu er oversat med understøttelse for filændringsovervågning (ved at bruge FAM- eller Gamin tjenester, vil den automatisk bruge det nye miniaturemellemlager inden for få sekunder, og er derefter istand til at oprette miniaturevisninger ved at bruge dine egne miniaturegenererer. Ellers kan du være nødt til at genstarte Thunar ved at bruge

$ Thunar -q

for at lukke alle kørende udgaver, for derefter at starte den op igen fra din programstarter.

Oprydning af miniaturevisninger

De oprettede miniaturevisninger er gemt i mappen, ~/.thumbnails/ i overenstemmelse med Miniaturevisningsstandarden. Det kan være hjælpsomt at rydde op i mellemlageret for miniaturevisninger hvis du tester en ny miniaturevisning, ved at bruge

$ rm -rf ~/.thumbnails/

hvilket også vil give dig noget ledigt plads i din hjemmemappe. Da alle informationer i denne mappe, automatisk blev genereret fra filerne i dit system, vil du ikke miste følsomme data.