Eu escrevi um apelido para um comando enorme e o armazenei .bash_profile
e, para minha surpresa, o emacs não pegou o apelido em que escrevi .bash_profile
. Após algumas pesquisas na internet, criei um .bashrc
arquivo no meu $ HOME com o comando alias e somente depois disso o emacs pegou o alias. Estou confuso porque o terminal.app usa o apelido de, .bash_profile
mas o emacs leva o apelido apenas no .bashrc
.
Eu estava correndo M-x shelle estou no macOS. Alguém pode me explicar qual é a relação com emacs e .bashrc
& .bash_profile
.
Mais ao ponto, como posso obter o Emacs para ler o meu .bash_profile
além .bashrc
?
.bashrc
pseudônimos? Estou perguntando isso porque meu Emacs (e aparentemente outros) não faz isso por padrão.zsh
em vez do bash :)Respostas:
Esse é o comportamento correto.
.bash_profile
é para os chamados shells de login. Como quando você login para o computador em modo de texto ou em um emulador de terminal para um computador diferente viassh
outelnet
ou ....bashrc
é destinado a shells que não são de login, como quando você já está logado e inicia um novo xterm ou, neste caso, oshell
modo emacs .Geralmente, o
.bash_profile
contém comandos para ler.bashrc
também:então o
.bashrc
é lido em toda inicialização.Portanto, os aliases pertencem a
.bashrc
; também é comum criar um separado.bash_aliases
e incluí-lo.bashrc
através da mesma construção:fonte
Além dos pontos mencionados pelo @pingi, você também pode usar um arquivo de configuração separado que será carregado apenas para o emacs shell (
M-x shell
):Na página do manual (emacs) Shell interativo :
Isso é útil se você deseja usar um formato de prompt de shell diferente no Emacs ou definir funções para passar arquivos para o emacsclient.
fonte