alias ou função para o comando emacs?

2

Então, estou no meu primeiro dia no meu novo trabalho e, no servidor que usamos, o emacs padrão é baseado no X-windows. Eu prefiro muito mais usá-lo no terminal antigo e gostaria de poder fazer com que o comando emacs foo.txt seja lido como emacs --no-window-system foo.txt .

Eu tentei fazer isso adicionando a linha function emacs() { emacs --no-window-system "$@" ;} ao meu ~/.profile e, em seguida, executei source ~/.profile , mas o sistema não está respondendo a emacs foo.txt .

Estou fazendo isso errado? Como alternativa, eu gostaria de saber se o que eu quero fazer é completamente ao contrário, e acontece que existe uma solução muito mais simples.

    
por Frank Harris 03.06.2013 / 17:28

2 respostas

1

Isso seria melhor como um alias.

Coloque isso no seu .profile ou .bashrc

alias emacs='emacs -nw'
    
por 03.06.2013 / 17:36
0

Acredito que o problema com sua solução original é que a chamada para emacs dentro de sua função emacs é uma chamada recursiva para a função emacs . Você pode chamar o programa emacs em vez da sua função emacs usando o bash builtin command .

function emacs() { command emacs --no-window-system "$@" ;}

Eu tenho o tipo de desejo oposto: eu quero fazer o background automaticamente do emacs quando estou rodando sob um sistema de janela. Eu tenho o seguinte no meu .bashrc :

if [ -n "$DISPLAY" ]; then
    function emacs() { (command emacs "$@" &) }
fi
    
por 26.02.2014 / 18:48