2013-04-19 4 views
6

Ho definito alcuni alias e snippet di funzione in alcuni dei miei file di profilo, ad esempio, ~/.zprofile. Ma Emacs non li legge mai. C'è already a topic a riguardo. Tuttavia, non basta:Come rendere la sorgente della modalità shell di Emacs il mio file di profilo?

  1. Non può source completamente .zshrc e emetterebbe errori per compinit e simili.
  2. Sembra che questo approccio funzioni solo per le VARIABILI dell'ambiente.

Quindi, in shell-mode o eseguire il comando in Emacs (Alt -! ) l'effetto è ancora diverso con quello in terminale (emulatori).

Quindi c'è un modo per affrontare il problema? Grazie.

risposta

13

È possibile creare un file ~/.emacs_zsh (o .emacs_bash, emacs_sh, ...) che verrà utilizzato dalla modalità shell all'avvio. Il mio .emacs_bash è semplicemente:

. ~/.profile 

Basta essere sicuri di mettere una nuova riga alla fine della linea di sourcing o non sarà eseguito.

+0

Opere! A proposito, potresti per favore mostrarmi qualche riferimento per questo? Grazie. –

+1

http://www.gnu.org/software/emacs/manual/html_node/emacs/Interactive-Shell.html –

+2

Questo non funziona per il contesto del comando shell (Alt-!). – emish