Como registrar um script de shell como o aplicativo principal para uma determinada extensão de arquivo

6

Eu tenho um script de shell "the_script" que gostaria de registrar como o aplicativo padrão para os arquivos com a extensão ".ext". Para isso, escrevi um arquivo xml para registrar o tipo MIME e um arquivo .desktop para associar o aplicativo ao tipo MIME. O script tem o bit executável para o usuário e está disponível no caminho do usuário.

O arquivo xml, chamado "the_script.xml", é o seguinte:

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
    <mime-type type="application/x-the-script">
        <comment>A file for the script</comment>
        <glob pattern="*.ext"/>
    </mime-type>
</mime-info>

Então eu corri xdg-mime install --novendor the_script.xml .

O arquivo .desktop, chamado "the_script.desktop", é o seguinte:

[Desktop Entry]
Version=1.0

Type=Application
MimeType=application/x-the-script

Name=The script that manages .ext files

Comment=Interpreter for .ext files

TryExec=the_script
Exec=the_script %f
Terminal=false

E eu corri xdg-desktop-menu install --novendor the_script.desktop para registrar o arquivo.

Uma vez que ambos os arquivos são registrados, os arquivos .ext não abrem mais com o editor de texto, mas o Gnome me diz que não há nenhum aplicativo instalado para os arquivos "Um arquivo para o script".

Registrei com sucesso outros formatos de arquivo com outros aplicativos. Os outros aplicativos foram compilados enquanto o script é um script de shell. Essa é a única diferença que posso ver. Como posso registrar meu script com os arquivos .ext?

    
por julien 09.05.2012 / 08:19

1 resposta

3

Isto parece funcionar bem a partir de um terminal se você usar xdg-open foo.ext , no entanto, ele não parece funcionar no Nautilus, a menos que você defina seu script como padrão para abrir o arquivo * .ext:

  • Selecione esse arquivo,
  • Clique com o botão direito do mouse,
  • Escolha Propriedades ,
  • Selecione a guia Abrir com ,
  • Clique em Mostrar outras aplicações ,
  • Selecione seu script (deve ser O script que gerencia os arquivos .ext ),
  • Clique em Definir como padrão e, finalmente, pressione
  • Fechar .

Depois disso, o script começou no Nautilus.

    
por htorque 09.05.2012 / 08:36