2008-10-09 16 views
7

Dziwne zachowanie ładowanie emacsa na Ubuntu, wydaje się, że istnieje inicjalizacja, której nie ma w plikach .emacs ani w żadnym z plików ładowanych przez raporty emacs poprzez "emacs --debug-init". Znalazłem kilka odniesień do zmiany rozmiaru czcionki, ale to zachowanie nie wydaje się być ograniczone do tego (np. Ponowne pojawianie się menu i pasków narzędzi).Emacs - inicjalizacja Ubuntu

Czy ktoś ma dodatkowe informacje na temat procesu inicjowania emacsa? Czy ładuje pliki /etc/emacs/site-start.d przed lub po .emacs i czy istnieją inne lokalizacje, które domyślnie ładuje?

Odpowiedz

13

Sekwencja inicjalizacji Emacs jest następujący (przynajmniej Emacsowi 22):

  1. załadowania pliku Debiana uruchamiania (.el lub .elc) znajdujących się w obciążenia ścieżce (zwykle /usr/share/emacs/site-lisp/debian-startup.el lub /usr/share/emacs22/site-lisp/debian-startup.elc) i wywołać debian-uruchamiania funkcji zdefiniowane w tym pliku. Ta funkcja ładuje wszystkie pliki w /etc/emacs/site-start.d/ i /etc/emacs22/site-start.d/.
  2. Załaduj start-site (.el lub .elc) znalezione w ścieżka ładowania.
  3. Załaduj plik startowy .emacs, .emacs.el lub ~/.emacs.d/init.el.
  4. Załaduj domyślny plik init default.el lub default.elc.

Ja również proponuję zapoznaniem się z rozdziałem „Emacs strategii uruchamiania” w /usr/share/doc/emacsen-common/debian-emacs-policy.gz więcej Ubuntu/Debiana konkretnych informacji. Aby znaleźć przyczynę dziwnego zachowania, możesz uruchomić emacs z argumentem --no-site-file i ładować te pliki init jeden po drugim, aż znajdziesz plik, który powoduje to zachowanie.

2

Znalazłem to oficjalny dokument, który wprowadza emacsowi init, etapy: http://www.gnu.org/software/emacs/manual/html_node/emacs/Init-File.html

Kiedy Emacs zostanie uruchomiony, to zwykle próbuje załadować Lisp programu z pliku lub pliku inicjującym init, za krótki. Ten plik, jeśli istnieje, określa, jak zainicjować Emacs za Ciebie. Emacs szuka pliku init przy użyciu nazw plików ~/.emacs, ~/.emacs.el lub ~/.emacs.d/init.el; możesz wybrać dowolne z tych trzech nazw (patrz Find Init). Tutaj ~/oznacza katalog domowy.