15 fevereiro 2008

Service menus

Desde há uma semana que regressei ao KDE, agora na versão 3.5.8, após alguns arrufos com o ambiente do pezinho (Gnome). Agora ele está a dormir no sofá enquanto eu ando a redescobrir as melhorias e novidades destas últimas versões da série 3 do KDE. Recordo-me de que quando me fui mudando para o Gnome, quis levar ou ter algumas das funcionalidades que adorava no KDE. E tive-as quase todas! Agora o mesmo está a passar-se, só que ao contrário. Quero ter algumas das coisas no KDE a que me habituei a ter no ambiente do pezinho (ou da pegada). Mas na verdade o que não falta no KDE são funcionalidades! Aliás, até peca por as ter em excesso. São menus para tudo, configurações em todo o lado, de tal maneira que me sinto perdido como se andasse no metro de Tóquio.
Uma das coisas bastante úteis que o KDE tem, são os "service menus". Não são mais que menus de funções que aparecem quando se clica num ficheiro com o botão direito do rato. Um exemplo meu sobre um ficheiro de imagem:


Para além dos "service menus" que vem com o KDE, podemos recolher outros da net ou até mesmo criá-los. Os "service menus" estão armazenados na pasta ~/.kde/share/apps/konqueror/servicemenus (só para o utilizador em questão) e na pasta de instalação do KDE: /usr/share/apps/konqueror/servicemenus (para todos os utilizadores do PC) e estão identificados pelo sufixo ".desktop".

Um exemplo dum "service menus" cuja função seja a de abrir uma janela do Icedove e anexar o ficheiro clicado nela, para posterior envio pelo mail:

[Desktop Entry]
Encoding=UTF-8
ServiceTypes=all/all
Actions=attachToEmail

[Desktop Action attachToEmail]
Name=Attach to Icedove Mail
Icon=attach
Exec=icedove -remote "xfeDoCommand(composeMessage,attachment='file://%f')"


Este "service menu" tanto pode servir para enviar pelo Icedove como pelo Thunderbird, bastando para tal substituir um nome pelo outro. Salva-se este ficheiro como AttachToIcedoveMail.desktop e deixa-se arrumadinho ao lado dos outros numa das localizações acima referidas. E fica pronto a usar!

Outro exemplo pode ser o de redimensionar uma imagem tirada pela nossa máquina digital, para uma menor tamanho de modo a ser enviada pelo mail, tipo 800 x 600.


[Desktop Entry]
ServiceTypes=image/jpeg
Actions=shrinkImage

[Desktop Action shrinkImage]
Name=Shrink Image
Icon=showfoto
Exec=~/bin/shrinkimage.sh "%f"


Em cima pode-se também usar a opção "image/*" para que não sejam só os "jpegs" a serem encolhidos. Mas é na última linha que o trabalho pesado é feito, passando o nome do ficheiro (%f) para um script que irá converter a imagem. Esse script de nome shrinkimage.sh, tem este conteúdo:

#!/bin/bash
convert -sample 800x600 -quality 70 "$1" "${1/.jpg/_small.jpeg}"


Mais informações podem ser encontradas aqui.


Parte da fonte deste artigo, o shrinkimage, foi gamado da LXF.

6 comentários:

Não sabia que dava para adicionar funcionalidades extra a esse menu. Dica interessante. :)

É KDE, que esperavas? Nele pode-se fazer tudo :P

Sabes se dá para fazer isso em Gnome ou XFCE?

No Gnome é o Nautilus o seu gestor de arquivos e ele tambem usa Scripts para fazer estas funções. Não são os mesmos que no Konqueror mas algo parecido. Basta fazeres uma busca por aí de scripts para o Nautilus. O mesmo com o XFCE se usares o Nautilus. No caso de usares o Thunar ou o PCman, já não te sei dizer se existe esses scripts.

Dependendo das máquinas uso o Gnome ou o XFCE, mas normalmente uso sempre o Thunar como file manager, o Nautilus é demasiado pesado para o que faz.

O PCManFM é bastante bom, mas prefiro o Thunar :)

Acabei por procurar no Google e no Thunar é mt fácil fazer isto:

open up the Thunar file manager and go to Edit > Configure custom actions…. Click the Add

Tirado daqui.

Cada vez gosto mais do XFCE :D

Este outro tutorial tem imagens e tudo :)