Usando Aquamacs para EDITOR no Subversion

1

É possível usar o Aquamacs como editor do Subversion. Por exemplo, se eu fizer

svn propedit svn:ignore .

e eu tenho a variável EDITOR definida como "emacs", ela usará o GNU emacs para o editor editar essa propriedade.

No meu .profile, eu tenho

alias emacs="open -a /Applications/Aquamacs.app/"

Então, chamando

emacs foo.bar

abre o arquivo no Aquamacs.

A configuração da variável EDITOR para "emacs" não usa Aquamacs. Configurando o EDITOR para '"open -a /Applications/Aquamacs.app/"' ABRA o arquivo no Aquamacs, mas como open não é um comando de bloqueio (eu estou supondo), o Subversion continua imediatamente no Terminal como se nada fosse entrou. Em outras palavras, não espera pelas edições do usuário.

Não consigo descobrir se o open pode ser chamado para bloqueá-lo ou se há outro comando no Terminal OSX. Obviamente, eu não sei se o bloqueio funcionaria, já que exatamente ele bloquearia?

    
por alyssackwan 26.08.2010 / 03:14

2 respostas

5

Você deve definir seu EDITOR como emacsclient em vez de emacs. Esta é uma interface de cliente para o servidor interno do emacs.

Configuração (uma vez):

  • defina $EDITOR como emacsclient: export EDITOR=emacsclient
  • coloque (server-start) no seu arquivo de inicialização .emacs

Quando você executa o svn commit , crontab ou outro comando que usa $EDITOR , o arquivo será aberto no emacs. Quando terminar de editar, pressione C-x # para retornar o controle para svn , crontab , etc.

Dê uma olhada neste question on stackoverflow e a documentação do emacs em emacs servidor e invocando o emacsclient .

Atualização: Eu uso uma compilação padrão do emacs, não Aquamacs, então eu pesquisei se havia algum truque especial necessário para o Aquamacs e o emacsclient. No wiki do emacs FAQ do Aquamacs , encontrei este trecho:

In order to use the “aquamacs” and “emacsclient” command-line tools, from the Aquamacs menu bar, Tools->Install Command Line Tools. If you are upgrading Aquamacs, you may need to re-install the Command Line Tools.

Eu imagino que se você não fizer isso, você estará usando o emacsclient que veio com o OS X e pode não enviar a mensagem correta para o Aquamacs.re-install as Ferramentas de linha de comando.

    
por 26.08.2010 / 04:39
4

Isso parece funcionar:

export EDITOR="/usr/bin/open -n -W -a /Applications/Aquamacs.app"
    
por 26.11.2012 / 20:36