Emacs spowalnia czas ładowania z AUCTeX na plikach TeX


11

Zainstalowałem pakiety auctexi emacsna dwóch komputerach Xubuntu 14.04, oba działały dobrze. Sam Emacs działa dobrze w obu przypadkach, ale teraz z auctexzainstalowanym pakietem, kiedy ładuję plik TeX (nawet tylko pusty), mam sześć sekund ładowania auctex, przez które muszę przejść za każdym razem, gdy ładuję plik TeX.

Czy to normalne?

Jeśli nie, co mogę zrobić, aby skrócić ten czas?

Przeszukałem internet i nic się nie pojawiło, tylko fakt, że parsowanie plików może zająć dużo czasu, ale nie dzieje się tak, ponieważ włączyłem funkcję zapisywania i ładowania parsowanych plików.

Używam Emacsa 24 z AUCTeX 11.87

EDYCJA: Dane wyjściowe *messages*bufora wyglądają następująco dla nowo otwartego pliku TeX:

("emacs" "hi.tex")
Loading 00debian-vars...done
Loading /etc/emacs/site-start.d/50auctex.el (source)...
Loading /usr/share/emacs/site-lisp/auctex.el (source)...done
Loading /usr/share/emacs/site-lisp/preview-latex.el (source)...done
Loading /etc/emacs/site-start.d/50auctex.el (source)...done
Loading /etc/emacs/site-start.d/50autoconf.el (source)...done
Loading /etc/emacs/site-start.d/50cmake-data.el (source)...done
Loading /etc/emacs/site-start.d/50dictionaries-common.el (source)...
Loading /var/cache/dictionaries-common/emacsen-ispell-dicts.el (source)...
Error while loading 50dictionaries-common: Symbol's value as variable is void: debian-aspell-only-dictionary-alist
Loading /etc/emacs/site-start.d/50latex-cjk-common.el (source)...
Loading cjk-enc...done
Loading /etc/emacs/site-start.d/50latex-cjk-common.el (source)...done
Loading /etc/emacs/site-start.d/50latex-cjk-thai.el (source)...done
For information about GNU Emacs and the GNU system, type C-h C-a.
(New file)
Applying style hooks... done
exchange-point-and-mark: No mark set in this buffer [6 times]
exchange-point-and-mark: No mark set in this buffer


Czy możesz sprawdzić *Messages*bufor i opublikować, czy w trakcie procesu są jakieś wiadomości? Inną opcją jest M-x toggle-debug-on-quit RET, i choć Emacs nie spieszy się, naciśnij Cg. Następnie opublikuj ślad stosu, który otrzymasz.
Alan Shutko

To też może się przydać: DOtemacs ProfilEr - profiler dla każdej płci : github.com/emacsmirror/dope . Niejasno pamiętam używanie go lata temu do profilowania mojej konfiguracji, gdy mam podobne problemy związane z czasem ładowania AUCTeX /. Zmniejsz konfigurację do minimum (styl debugowania strzelby) i sprawdź, czy jest jakaś zmiana. Możesz także rzucić okiem na niektóre informacje tutaj: emacswiki.org/emacs/OptimizingEmacsStartup, takie jak np .: użycie autoload (AutoLoad) i eval-after-load (EvalAfterLoad), pliki kompilacji bajtów i tak dalej.
Criveti Mihai,

Odpowiedzi:


0

LaTeX / P to tryb LaTeX w trybie podrzędnym PDF. Nigdy nie miałem problemu z AUCTeX (i używałem go od czasu emacsa v22), więc naprawdę nie sądzę, że AUCTeX sam w sobie jest twoim problemem.

Kiedy uruchamiasz emacsa z -q, nie ładuje on żadnych plików inicjujących. Więcej informacji na ten temat znajduje się w dokumentacji.

Jeśli używasz Linuksa, spróbuję ponownie zainstalować emacsa ze źródła. Nigdy nie ufałem, że repozytorium pakietów rzeczywiście działa. (Większość tej nieufności pochodzi z pakietów TeX, które mają ponad cztery lata.) Jeśli używasz windoze, zainstaluj z serwera ftp FSF. Jeśli używasz systemu Mac, zainstaluj z emacsformacosx.com


0

Ogólnym sposobem debugowania problemów z powolnym uruchamianiem jest użycie sygnałów przerwania emacsa ( /emacs/506/debugging-a-frozen-emacs )

  1. Biegać emacs --debug-init
  2. Znajdź pid procesu za pomocą ps -ef | grep emacs
  3. Wyślij procesowi sygnał przerwania kill -SIGUSR2 $PID
  4. To powoduje, że emacs pokazuje ślad
  5. Wyszukaj w Internecie coś oczywistego w tym śledzeniu
  6. W przeciwnym razie zacznij eksperymentować z uruchomieniem niektórych z tych funkcji ręcznie, aby zobaczyć, dlaczego są one wolne.

Możesz być także zainteresowany wymianą stosów emacs. (Nie jestem pewien, co myślę o częściowej fragmentacji wymiany stosów ...)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.