como configurar o emacs22 para funcionar como servidor?

Iniciado por crixtiano, 29 de Maio de 2011, 18:55

tópico anterior - próximo tópico

crixtiano

Oi amigos.

Eu instalei o emacs22 no Ubuntu. Estou usando a distribuição LTS 10.04.2 (Lucid).

Eu gostaria de fazer duas coisas:

1) configurar o emacs para funcionar como servidor. Dessa forma não abriria uma instância diferente para cada arquivo.
2) fazer o emacs (ou seria o emacs-client?) o editor default do Gnome, ao invés do GEdit.

Alguém poderia me sugerir como fazer isso? Ou indicar algum link da web com essa solução?

Obrigado!

Cristiano M. Magalhães

Darcamo

O emacs 22 já é bem antigo e além disso eu não costumo usar o emacsclient então não tenho certeza se o que vou dizer aqui funciona 100% (normalmente o primeiro programa que abro é o emacs e uso ele até mesmo para gerenciar arquivos. Por isso acabo não precisando da função de servidor).

Se o emacs já estiver aberto e você quiser inicializar o servidor basta executar o comando "server-start" (M-x server-start). Depois disso você poderá editar arquivos com o emacsclient (com o comando "emacsclient algum_arquivo.txt", por exemplo). Nesse caso você poderia setar o emacsclient como editor padrão, mas obviamente só vai funcionar quando o servidor estiver rodando. Na wiki do emacs (http://www.emacswiki.org/emacs/EmacsClient) lembro de ter visto um script que roda o emacs caso ele não esteja aberto, ou o emacsclient caso o emacs já esteja aberto. A ideia é usar esse script como editor padrão, mas nunca testei essa solução.

Versões mais recentes do emacs podem ser inicializadas com a opção "--daemon". Essa parece ser a melhor solução e funciona bem. Você pode, por exemplo, colocar o comando "emacs --daemon" nos "Aplicativos de Sessão" do Gnome de forma que o emacs seja automaticamente inicializado quando você logar no Gnome. Para usar, basta rodar o comando "emacsclient -c arquivo_qualquer" (sem a opção "-c" o emacs vai rodar no terminal e não em um frame próprio).

Acho a opção daemon não existe na versão 22, mas talvez exista na versão 23 que está nos repositórios (no Lucid acho que seria o pacote emacssnapshot). Em especial, usando uma versão mais recente que a 22 você ganha fontes bem mais bonitas e um visual mais agradável, com a GTK.

Caso não tenha nem na versão 23, então você pode compilar uma versão mais recente a partir do código fonte do emacs. Eu mesmo utilizo a versão 24 que compilei dos repositórios. Não é complicado compilar. Embora talvez ele reclame da versão de alguma biblioteca mais antiga no Ubuntu 10.04 acho que vale a pena tentar. Qualquer coisa é só falar.