O
Konqueror é um dos melhores gerenciadores de arquivos e navegador web no
Linux, reunindo características de ser leve e ao mesmo tempo rico em configurações e recursos. Um desses recursos é o
service menus, que são itens do menu de contexto que aparecem quando você clica com o botão direito sobre um arquivo ou pasta.
Um dos mais comuns é "Email file", que aparece em todos os tipos de arquivos. Os service menus podem ser criados para atuar num determinado tipo de arquivo, como documentos PDF, imagens PNG ou mesmo um grupo de tipos, como todos os tipos de imagens, vídeos ou sons. Assim, os service menus são a melhor maneira de facilitar pequenas tarefas que você precisa realizar frequentemente, bastando poucos cliques do mouse.
Como exemplo para criação de um service menu, faremos um que usa o
pdfopt para otimizar arquivos pdf, permitindo que sejam exibidos pela web mais rapidamente, algumas vezes até diminuindo o arquivo de tamanho. O pdfopt é um utilitário que vem no pacote do Ghost Script, já instalado por padrão na maioria das distribuições atuais.
Então, mãos à massa!
Criando um service menu
Um service menu é basicamente um arquivo de texto com a extensão ".desktop", que é um arquivo de configuração de ambiente do KDE. Ele segue a estrutura dos arquivos .desktop em geral, com algumas diferenças em relação aos arquivos de ícones da área de trabalho, por exemplo.
A primeira linha de um service menu identifica que estamos criando arquivo de desktop do KDE:
[Desktop Entry]
Em seguida vamos declarar as ações que serão executadas pelo service menu. No nosso caso, só temos uma, que é otimizar o documento pdf. As ações são declaradas numa única linha que começa com "Actions=", como abaixo:
Actions=optimizePdf
Mais de uma ação pode ser declarada, mas todas na mesma linha e separadas por ";" (ponto-e-vírgula).
A próxima linha do arquivo permite que você defina um ícone que aparecerá junto ao service menu, melhorando a aparência. O ícone não é obrigatório, embora deixem o trabalho do service menu bem mais profissional.
Icon=acroread
A linha seguinte diz para quais tipos de arquivos (mimetypes) o service menu aparecerá quando o arquivo for clicado com o botão direito. Para ver os mimetypes no Konqueror, vá em "Configurações > Configurar Konqueror > Associações de Arquivos". Neste caso, queremos apenas que os documentos pdf sejam afetados, então:
ServiceTypes=application/pdf
A primeira seção do service menu está terminada, vamos partir agora para a descrição das ações.