Como eu faço do Geany meu editor padrão no Ubuntu?

23

Na verdade, eu quero mudar o editor de texto padrão no meu Ubuntu 12.04 de nano para Geany. Quando eu usei este código:

update-alternatives --config editor

.. Eu não vejo Geany na lista.

Então, para adicionar Geany, isso deve funcionar certo?

update-alternatives --install /usr/bin/geany geany /usr/bin/geany 10

Além disso, em uma nota lateral, você pode me dizer se pessoalmente sugeriria que eu alterasse o editor padrão de nano para Geany, e por quê?

Programming Noob
fonte
@izx Absolutamente :) Eu ainda adoraria saber qual era a maneira pela linha de comando de fazê-lo. Independentemente disso, I'l marcar sua resposta como aceite :)
Programação Noob

Respostas:

16

O caminho da linha de comando é:

sudo update-alternatives --install /usr/bin/editor editor /usr/bin/geany 10

e use sudo update-alternatives --config editorpara selecionar Geany, se necessário.

Como alternativa gráfica ao método da linha de comando, considere usar o Gnome Alternatives ( sudo apt-get install galternatives). Execute GAlternatives , selecione o editor na coluna da esquerda e adicione / escolha Geany à direita.

ish
fonte
5
Fiz isso e Geany é selecionado, * 3 /usr/bin/geany 10 manual modemas quando tento abrir um arquivo de texto clicando duas vezes no Nautilus, ele ainda é aberto com o gedit.
Para fazer
@ToDo Me também. Pergunto-me como posso desfazer esses comandos.
14

Como alternativa, isso também funcionou para mim:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Essa linha busca todos os MimeTypes nos quais o gedit está registrado, realiza alguma limpeza (os sedcomandos) e finalmente define o geany como aplicativo padrão para eles.

Eu encontrei aqui junto com um monte de informações úteis sobre esquemas de cores.

Steve
fonte
1
Isso funcionou como um encanto.
Faisal disse
1
Impressionante! Ao contrário da resposta aceita, sua solução realmente funciona para mim. Obrigado! # 12.04
king_julien
Alguma idéia de como posso desfazer isso?
king_julien
Não faço idéia, mas veja a resposta abaixo porque (o outro) Steve fez um ótimo trabalho ao explicar o que esse realmente faz - você deve poder fazer engenharia reversa dos efeitos a partir daí. Por que você está desfazendo isso? Sua sido uma grande solução para mim e tem funcionado perfeitamente para mim há mais de seis meses ...
Steve
11

É um pouco tarde, mas achei que poderia ajudar alguém.

Meu problema é que eu não gosto de copiar e colar coisas que não entendo, então aqui está uma explicação das respostas até agora.

Em primeiro lugar, há duas questões aqui e as duas respostas estão corretas:

  1. o editor de linha de comando padrão - resolvido por 'izx'
  2. a associação de tipo de arquivo (mime-type) na sessão da área de trabalho para aplicativos da GUI - resolvida por 'Steve'.

Aqui em um pouco mais detalhadamente:

  1. solução de linha de comando -de 'izx'

    • adiciona geany (um aplicativo GUI) à lista de editores alternativos e define-o como padrão.
    • Eu sempre pensei que o editor era geralmente reservado para editores baseados em texto como vi, vim, nano, etc., mas acabei de verificar e isso parece funcionar também.
    • o resultado significa que você pode usar o padrão escolhido para abrir o arquivo quando, por exemplo:
  2. solução tipo mímica - de 'Steve'

No nível do arquivo, há duas listas de importância:

/usr/share/applications/defaults.list - a lista de padrões do sistema.

~/.local/share/applications/mimeapps.list - a lista de padrões da sessão da área de trabalho pessoal dos usuários

O que o comando faz?

Na página do manual xdg-mime (man xdg-mime)

xdg-mime - command line tool for querying information about file type handling and adding descriptions for new file type

O xdg-mime default...comando adiciona entradas à lista pessoal de usuários.

Vamos quebrar o comando.

Comando:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

O comando pode ser lido como:

configure geany.desktop como o aplicativo padrão para o tipo MIME gerado por $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Olhando para

$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
  • pega todos os tipos MIME do arquivo geany.desktop
  • remove o "MimeType ="
  • substitui ";" com ""
  • dando-nos:
    text/plain text/x-chdr text/x-csrc text/x-c++hdr text/x-c++src text/x-java text/x-dsrc text/x-pascal text/x-perl text/x-python application/x-php application/x-httpd-php3 application/x-httpd-php4 application/x-httpd-php5 application/xml text/html text/css text/x-sql text/x-diff

Observando o arquivo pessoal dos usuários após executar o comando, podemos ver todas as associações de arquivos definidas para o aplicativo geany.desktop:

[Default Applications]
x-scheme-handler/mailto=userapp-Thunderbird-ZP00XW.desktop
message/rfc822=userapp-Thunderbird-ZP00XW.desktop
application/x-extension-eml=userapp-Thunderbird-ZP00XW.desktop
application/x-perl=sublime_text.desktop
text/plain=geany.desktop
text/x-chdr=geany.desktop
text/x-csrc=geany.desktop
text/x-dtd=sublime_text.desktop
text/x-java=geany.desktop
text/mathml=sublime_text.desktop
text/x-python=geany.desktop
text/x-sql=geany.desktop
text/x-c++hdr=geany.desktop
text/x-c++src=geany.desktop
text/x-dsrc=geany.desktop
text/x-pascal=geany.desktop
text/x-perl=geany.desktop
application/x-php=geany.desktop
application/x-httpd-php3=geany.desktop
application/x-httpd-php4=geany.desktop
application/x-httpd-php5=geany.desktop
application/xml=geany.desktop
text/html=geany.desktop
text/css=geany.desktop
text/x-diff=geany.desktop

Sabendo disso, aqui está o meu problema específico e como eu o resolvi.

Problema:

Eu queria alterar o aplicativo "abertura de arquivo" padrão no Nautilus de "gedit" -> "texto sublime".

Solução:

Encontre os padrões do sistema para o gedit com:

$less /usr/share/applications/defaults.list | grep gedit
application/x-perl=gedit.desktop
text/plain=gedit.desktop
text/x-chdr=gedit.desktop
text/x-csrc=gedit.desktop
text/x-dtd=gedit.desktop
text/x-java=gedit.desktop
text/mathml=gedit.desktop
text/x-python=gedit.desktop
text/x-sql=gedit.desktop

Substitua "gedit" por "sublime_text" e adicione as entradas à seção "Aplicativos padrão" dos meus padrões pessoais.list

application/x-perl=sublime_text.desktop
text/plain=sublime_text.desktop
text/x-chdr=sublime_text.desktop
text/x-csrc=sublime_text.desktop
text/x-dtd=sublime_text.desktop
text/x-java=sublime_text.desktop
text/mathml=sublime_text.desktop
text/x-python=sublime_text.desktop
text/x-sql=sublime_text.desktop
Steve-B
fonte
Isso é muito útil, mas você também pode editar e melhorar as respostas existentes. Muitas vezes, é muito menos trabalho.
Tom Brossman
2
Bom ponto Tom, obrigado. Estou sempre um pouco apreensivo em editar as respostas das pessoas. Vou adicionar um comentário à resposta aceita.
21313 Steve-B
Não se preocupe em editar a postagem de outra pessoa aqui, é esperado. As edições são revisadas por pares até que você atinja 2000 representantes e, em seguida, passam diretamente. Manter todas as informações boas em uma resposta facilita a localização posterior.
Tom Brossman
1

Como existem comentários indicando que a resposta aceita não estava correta, acho que devo salientar que esta pergunta não pode ter uma única resposta. Se a pergunta foi alterada para especificar a CLI e as consultas para a GUI foram movidas para um novo thread, isso esclareceria a confusão. Tarde demais para isso, eu acho.

Enfim, para o nautilus (aka arquivos) no gnome no Ubuntu 14.04. E, dada a resposta aceita, você pode (como eu) esperar que o equivalente seja:
donotdothisssudo update-alternatives --install /etc/alternatives/gnome-text-editor gnome-text-editor /usr/bin/geany 10

Foi o que eu pensei e ele quebrou os links, então não faça isso! Se você fez, isso é o que eles eram para mim:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/gedit

Ao reparar esse erro, recriei esses links da seguinte maneira:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/geany

Como tudo o que realmente fiz foi substituir o simlink secundário e desejei uma resposta no meu sistema, acho que a tarefa é simplesmente a seguinte:
sudo ln -s /usr/bin/geany /etc/alternatives/gnome-text-editor

No entanto, a execução de um comando da CLI para alterar algo específico da GUI deve estar errada. O local em que minhas mãos me levam ao procurar essa opção de alteração é o sistema de menus nautilus, próximo à configuração do tipo de arquivo individual. No entanto, a única razão pela qual vou para lá é porque é onde parte da solução está. Na minha opinião, se você seguiu a lógica do DPKG (alternativas de atualização) e a incluiu na sua distribuição, não deseja que um aplicativo de espaço do usuário como o Nautilus interfira no seu aplicativo gerenciador de configurações. Minha humilde sugestão para corrigir isso seria adicionar um novo controle de configurações do editor às configurações >> detalhes >> aplicativos padrão, que precisariam ser uma nova página do ponto de vista dos usuários. A equipe do Nautilus precisaria alterar seu menu para que o usuário seja redirecionado para essa nova página. Isso comprometeria onde minhas mãos me levaram a procurar a configuração, onde minhas mãos 'deveriam' ter me levado e gerencia um processo de entrada de ponto único em uma configuração do sistema. Parece que essa mudança precisaria estar dentro do porto das galternativas do debian, embora eu esteja apenas supondo. É claro que não faria sentido cobrar com esse tipo de coisa sem a equipe do Nautilus a bordo da idéia, eles também precisariam especificar a API ou mecanismo equivalente.

A página de configurações, na minha opinião, precisaria cobrir a seleção padrão do editor gnome e o aplicativo usado para abrir cada arquivo individual (que substitui a funcionalidade atual fornecida pelo Nautilus).

Afixo isso como um pensamento passageiro, sinta-se à vontade para avançar se ele lhe agrada. Infelizmente, eu não sei o procedimento e o protocolo necessário para fazê-lo.

jim wotherspoon
fonte