file setup emacs / elisp saat dimuat

0

Saya menemukan bahwa elisp (emacs elisp) sepertinya tidak membaca .bashrc, karena variabel PATH berbeda dari yang ditetapkan di .bashrc, seperti yang saya tanyakan di sini . Saya mencoba memuat .bashrc menggunakan 'source .bashrc' di elisp, tetapi ketika saya melakukannya, elisp berhenti.

  • File apa yang dibaca elisp saat dimuat?
  • Apakah ada cara saya bisa menggunakan setup yang saya buat di .bashrc (alias, PATH, ...)?

LARUTAN

Gilles memberi saya jawaban yang baik, dan dengan PATH, itu tergantung pada bagaimana saya memulai Aquamcs.

  • Ketika saya mengklik tombol untuk memulai Aquamacs, ia memiliki PATH yang berbeda.
  • Ketika saya menjalankan 'aquamacs' dari baris perintah, ia memiliki PATH yang sama.
prosseek
sumber
seperti yang saya katakan pada SO, .bashrcbukan tempat yang tepat untuk mengatur PATHatau variabel lingkungan lainnya, dan tempat mana yang tepat tergantung pada OS Anda dan informasi lingkungan lainnya yang belum Anda berikan.
Gilles

Jawaban:

2

Alias ​​adalah konsep khusus shell, jadi alias bash tidak terbawa ke eshell. Eshell memiliki sistem alias sendiri, didokumentasikan dalam komentar di dekat bagian atas em-alias.el. Singkatnya, Anda mendefinisikan alias dengan aliasperintah, dan mereka disimpan secara otomatis untuk sesi mendatang. Sintaksnya tidak sama dengan bash, misalnya Anda akan menulis alias l='ls -l $*'di eshell di mana Anda menulis alias ls='ls -l'di bash. Definisi alias tinggal dalam file yang disebut di ~/.eshell/aliasmana "~/.eshell"nilai eshell-directory-name.

Eshell juga memiliki sistem fungsi shell, didokumentasikan dalam komentar di dekat bagian atas esh-cmd.el. Mengutip paragraf pertama:

Setiap kali perintah ditentukan menggunakan nama sederhana, seperti 'ls', Eshell pertama-tama akan mencari fungsi Lisp dari nama `eshell / ls '. Jika ada, itu akan dipanggil dalam preferensi untuk perintah lain yang mungkin cocok dengan nama 'ls' (seperti alias perintah, perintah eksternal, fungsi Lisp dari nama itu, dll).

Gilles
sumber