Saya menulis alias untuk sebuah perintah besar dan menyimpannya di dalam .bash_profile
dan mengejutkan saya, emacs tidak mengambil alias yang saya tulis .bash_profile
. Setelah beberapa pencarian di internet, saya membuat .bashrc
file dalam $ HOME saya dengan perintah alias dan hanya setelah itu emacs mengambil alias. Saya bingung karena terminal.app mengambil alias dari .bash_profile
tetapi emacs hanya mengambil alias di .bashrc
.
Saya sedang berlari M-x shelldan saya menggunakan MacOS. Dapatkah seseorang menjelaskan saya apa hubungan dengan emacs dan .bashrc
& .bash_profile
.
Lebih penting lagi, bagaimana saya bisa membuat Emacs membaca .bash_profile
tambahan saya .bashrc
?
.bashrc
alias Anda ? Saya menanyakan ini karena Emacs saya (dan ternyata yang lain) tidak melakukannya secara default.zsh
bukan bash :)Jawaban:
Ini adalah perilaku yang benar.
.bash_profile
untuk apa yang disebut shell login. Seperti ketika Anda login ke komputer Anda dalam mode teks, atau di emulator terminal ke komputer yang berbeda melaluissh
atautelnet
atau ....bashrc
dimaksudkan untuk shell non-login, seperti ketika Anda sudah login dan memulai xterm baru, atau dalam hal inishell
mode emacs .Biasanya
.bash_profile
berisi perintah untuk membaca.bashrc
, juga:jadi
.bashrc
dibaca di setiap startup.Jadi, alias milik
.bashrc
; juga merupakan kebiasaan untuk membuat yang terpisah.bash_aliases
dan memasukkannya.bashrc
melalui konstruk yang sama:sumber
Selain poin yang dibuat oleh @pingi, Anda juga dapat menggunakan file konfigurasi terpisah yang hanya akan dimuat untuk shell emacs (
M-x shell
):Dari halaman manual (emacs) Shell Interaktif :
Ini berguna jika Anda ingin menggunakan format prompt shell yang berbeda dalam Emacs, atau untuk mendefinisikan fungsi untuk meneruskan file ke emacsclient.
sumber