2016-05-24 8 views
2

Meine Standard-Shell ist Fisch und ich will es nicht ändern. Aber in Emacs funktioniert Tramp nicht gut mit Fisch. Ich möchte nur bash als Standard-Shell für Emacs festlegen. Ist es möglich?So definieren Sie eine Standard-Shell für Emacs

+1

ich wähle dieses questio schließen n als Off-Topic; vorschlagen Migration zu https://emacs.stackexchange.com/ – tripleee

Antwort

3

Aus der Dokumentation für die shell Funktion (C-h f shell RET):

Program used comes from variable `explicit-shell-file-name', 
or (if that is nil) from the ESHELL environment variable, 
or (if that is nil) from `shell-file-name'. 

Also, wenn Sie "/ bin/bash", wie die Shell-Datei verwenden möchten, in emacs-Puffer, können Sie entweder:

  • die Variable `explizite-shell-file-name‘ in Ihrer Datei ~/.emacs:

    (setq-default explicit-shell-file-name "/bin/bash")

  • stellen Sie die ESHELL Umgebungsvariable in Ihrer ~/.profile-Datei:

    export ESHELL=/bin/bash

  • die Variable `Shell-file-name‘ in Ihrer Datei ~/.emacs:

    (setq-default shell-file-name "/bin/bash")

+0

Richtig du bist. : D –

1

Das Handbuch Tramp spricht über Probleme mit Fischen. Vielleicht versuchen Sie, was es vorgeschlagen hat:

Similar fancy prompt settings are known from the fish shell. 
Here you must add in ‘~/.config/fish/config.fish’: 

    function fish_prompt 
     if test $TERM = "dumb" 
      echo "\$ " 
     else 
      … 
     end 
    end