Personalizar Thunar
Anterior |  | Próximo

## Personalizar Thunar

Este capítulo describe como adaptar ás súas necesidades certas partes do xestor de ficheiros.

### O menú "Enviar a"

Thunar inclúe un menú Enviar a, o cal proporciona destinos posibles a onde poder enviar os ficheiros e os cartafoles. Para acceder ao menú Enviar a, seleccione Ficheiro → Enviar a no menú principal, ou prema co botón dereito nun ficheiro ou cartafol e seleccione Enviar a.

Por defecto o menú Enviar a inclúe unha entrada chamada Escritorio (Crear ligazón) para todos os ficheiros e cartafoles, que simplemente crea unha ligazón no escritorio por cada ficheiro seleccionado. Ademais se o Panel de atallos está activado, o menú tamén inclúe unha entrada chamada Panel lateral (Crear atallo) para os cartafoles, o cal lle permite aos usuarios engadir novos atallos ao panel lateral. Despois destas entradas, `Thunar` lista as unidades extraíbles conectadas ao ordenador. Na captura de pantalla de enriba, a Disqueteira representa un destino posible a onde se poden enviar os ficheiros. Teña en conta que o dispositivo se monta automaticamente unha vez que se selecciona no menú Enviar a de forma que non ten que montala a man.

Ademais `Thunar` tamén proporciona o engadido `thunar-sendto-email`, o cal engade a entrada Enviar correo ao menú, a cal abre o cliente de correo electrónico cos ficheiros anexos a unha nova mensaxe. Se a selección contén polo menos un cartafol, os elementos seleccionados engádense a un arquivo ZIP antes de anexalo á mensaxe. Noutro caso, se a selección contén varios ficheiros, ou un só ficheiro, de tamaño maior a 200 Kib, preguntaraselle ao usuario se desexa empaquetar os ficheiros nun arquivo ZIP e enviar o ficheiro ZIP.

Como con moitas outras funcionalidades de `Thunar`, os usuarios e dos desenvolvedores de aplicativos pode estender facilmente o menú Enviar a con novos destinos, usando o estándar de Ficheiros de entradas desktop. Estes ficheiros deben estar instalados nun dos cartafoles `$XDG_DATA_DIRS/Thunar/sendto/` (consulte a XDG Base Directory Specification para obter detalles sobre a variable `$XDG_DATA_DIRS`).

O `Tipo MIME` do `.desktop` destino especifica os tipos de ficheiros para os cales debe estar dispoñible esta acción no menú Enviar a. Por exemplo, digamos que desexa engadir unha entrada para unha ferramenta de suba de ficheiros de Flickr, así que esta entrada só debe mostrarse se a selección contén ficheiros JPEG (Flickr non soporta outros formatos de ficheiro) e polo tanto debe engadir unha liña `MimeType=image/jpeg;`. Se non especifica ningún `Tipo MIME` a entrada mostrarase para todos os tipos de ficheiro.

Debaixo móstrase un exemplo completo usando o aplicativo `postr`:

    # postr.desktop - Integrate postr into
    #                 the "Send To" menu.
    [Desktop Entry]
    Type=Application
    Version=1.0
    Encoding=UTF-8
    TryExec=postr
    Exec=postr %F
    Icon=postr
    Name=Flickr
    MimeType=image/jpeg;

Se instala este ficheiro en `~/.local/share/Thunar/sendto/` (cree o cartafol se aínda non existe), o menú Enviar a dos ficheiros JPEG mostrará a nova entrada Flickr, a cal se pode usar para subir imaxes JPEG a Flickr.

A Wiki do proxecto Thunar contén exemplos adicionais de destinos útiles para o menú Enviar a. Vostede é libre de extender a páxina da Wiki con novos exemplos.

### Miniaturizadores

Thunar usa pequenas utilidades para crear miniaturas de certos tipos de ficheiros e mostra as miniaturas como vista previa do contido do ficheiro. Estas pequenas ferramentas chámanse miniaturizadores. Thunar publícase con miniaturizadores para imaxes e ficheiros de tipo de letra, e usa automaticamente os miniaturizadores instalados por GNOME se se instalou con soporte para `gconf`. Aínda así os usuarios poden estender de xeito dinámico esta funcionalidade básica con miniaturizadores para tipos de ficheiros adicionais.

Se pensa escribir un miniaturizador propio, ten que comezar cun programa que acepte polo menos dous parámetros de liña de ordes, o ficheiro de entrada, que é do tipo de ficheiro que pensa soportar e mailo ficheiro de saída, que é un ficheiro PNG que cumpre o formato especificado no Thumbnail Management Standard. Ademais o seu programa tamén podería aceptar o tamaño desexado da miniatura, que é opcional pero moi recomendable. Se escribe un ficheiro de saída cun tamaño de imaxe arbitrario, Thunar escalarao posteriormente ao tamaño desexado, o que podería producir un resultado menos óptimo do que se obtería xerando unha miniatura das dimensións solicitadas.

Unha vez que a súa utilidade para xerar miniaturas estea rematada, terá que rexistrar o seu miniaturizador para que Thunar sexa capaz de atopalo e usalo. Polo tanto todo o que ten que facer é instalar un ficheiro de descrición do miniaturizador (un ficheiro `.desktop`) nunha das rutas `$XDG_DATA_DIRS/thumbnailers/`. Por exemplo se desexa rexistrar o miniaturizador só para a súa conta de usuario, pode instalar o ficheiro no cartafol `~/.local/share/thumbnailers/`. O `.desktop` dos miniaturizadores ten o seguinte formato.

#### Formato do ficheiro de descrición do miniaturizador

Os ficheiros de descrición de miniaturizadores utilizan o Desktop Entry Format cun `Tipo` especial `X-Thumbnailer` o campo especial `X-Thumbnailer-Exec` con novos códigos de campo. Basicamente un ficheiro de descrición de miniaturizador ten o seguinte formato.

    [Desktop Entry]
    Version=1.0
    Encoding=UTF-8
    Type=X-Thumbnailer
    Name=O seu miniaturizador
    MimeType=tipo-mime-soportado/polo-miniaturizador;
    X-Thumbnailer-Exec=o-seu-miniaturizador %i %o %s

`Version` e `Encoding` son obrigatorios debido á Desktop Entry Specification, así que use os valores que se mostran no exemplo de enriba. O campo `Type` debe ter o valor especial `X-Thumbnailer`, ou senón non se recoñecerá o seu miniaturizador. O valor `Name` describe o seu miniaturizador.

O campo `X-Thumbnailer-Exec` contén a orde para executar o seu miniaturizador, e admite certos códigos de campo que se substituirán cando se execute o miniaturizador. Os códigos de campo recoñecidos son os seguintes:

`%i`

  A ruta local do ficheiro de entrada co que se vai crear unha miniatura. Pode ser unha ruta relativa ao directorio dende o que se chamou ao miniaturizador ou unha ruta absoluta.

`%o`

  A ruta local ao ficheiro de saída onde se vai almacenar a miniatura xerada. O ficheiro de saída debe escribirse como un ficheiro PNG válido que cumpra o estándar de miniaturas (consulte enriba). Teña en conta que a ruta podería non rematar con `.png`, que é importante se invoca certas ferramentas de terceiros.

`%s`

  O tamaño desexado en píxels da miniatura xerada. Este parámetro é opcional.

`%u`

  Semellante a `%i`, pero substitúese polo URI do ficheiro, en vez de pola súa ruta. Isto engadiuse para ter compatibilidade con GNOME.

`%%`

  Substituirase cun simple `%`.

Ten que incluír polo menos `%o` e `%i` ou `%u`, noutro caso o seu miniaturizador será inútil.

`MimeType` lista os tipos MIME - separados por punto e coma - para os cales o seu miniaturizador é capaz de crear previsualizacións.

#### Exemplo de miniaturizador EPS

Este exemplo demostra como escribir e instalar un novo miniaturizador para os ficheiros `.eps`, o cal usa a utilidade convert que forma parte de ImageMagick. Primeiro comezamos cun simple script que invoca convert para xerar unha miniatura do tamaño solicitado.

    #!/bin/sh
    #
    # eps-thumbnailer - Miniaturizador de exemplo para ficheiros EPS.
    #
    # Modo de uso: esp-thumbnailer ficheiro-eps ficheiro-png tamaño
    #

    # parámetros de liña de ordes
    ifile=$1
    ofile=$2
    size=$3

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

Garde o script de enriba nun ficheiro `eps-thumbnailer`, asegúrese de que o ficheiro é executable e instáleo en `/usr/local/bin`.

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

A continuación haberá que crear o ficheiro de descrición da miniatura `eps-thumbnailer.desktop`, que é así:

    [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

Este ficheiro debe instalarse en `/usr/local/share/thumbnailers` (cree o cartafol se non existe).

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

O ficheiro `eps-thumbnailer.desktop` usa a clave especial `TryExec`, a cal se se especifica menciona unha orde que debe estar presente no sistema para que o miniaturizador sexa útil. No noso exemplo o script é inútil se a utilidade convert non está presente.

O último paso é xerar de novo a caché do miniaturizador, de forma que Thunar detecte ao miniaturizador. A caché do miniaturizador está situada en `$XDG_CACHE_HOME/Thunar/thumbnailers.cache` (a menos que o administrador do sistema o cambie, `$XDG_CACHE_HOME` apunta ao cartafol `~/.cache/`). Thunar xera de novo a caché dos miniaturizadores periodicamente, pero pode forzar que se xere de novo invocando a utilidade `thunar-vfs-update-thumbnailers-cache-1`, que se publica como parte de Thunar. Normalmente a utilidade está instalada no subcartafol `libexec` en do directorio de instalación (`sbin` en Debian/Ubuntu). Así que se por exemplo Thunar está instalado en `/usr`, invoque a utilidade do seguinte xeito:

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

Pero asegúrese de que executa o programa ca súa conta de usuario, e non ca conta do superusuario, xa que a caché dos miniaturizadores se almacena no seu cartafol persoal, en vez de nun lugar común para todo o sistema.

Agora se Thunar se compilou con soporte para a monitorización de alteracións nos ficheiros (mediante os servizos FAM ou Gamin), en poucos segundos collerá automaticamente a nova caché dos miniaturizadores e despois será capaz de xerar miniaturas usando os miniaturizadores personalizados. Noutro caso podería necesitar reiniciar totalmente Thunar para aplicar os cambios, usando

    $ Thunar -q

para terminar calquera instancia en execución, e posteriormente reiniciala dende o seu iniciador.

#### Limpar as miniaturas

As miniaturas xeradas almacénanse no cartafol `~/.thumbnails/` de acordo co Thumbnail Management Standard. Ao probar un novo miniaturizador, podería ser útil limpar a caché de miniaturas usando

    $ rm -rf ~/.thumbnails/

que tamén lle dará algún espazo libre no seu cartafol persoal. Xa que toda a información almacenada neste cartafol se xera automaticamente a partir dos ficheiros do sistema de ficheiros, non perderá ningún dato importante.

Anterior |  | Próximo
Preferencias da xestión de ficheiros | Inicio | Temas avanzados