3

Я запускаю Emacs в Windows 7, и всякий раз, когда я его закрываю, обычно для закрытия окна требуется не менее 5 секунд. Кажется, не имеет значения, какие буферы у меня открыты или в каких режимах я нахожусь. Между тем строка состояния внизу обычно говорит:

(Нет необходимости сохранять файлы)

Есть ли какой-нибудь способ, которым я могу получить представление о том, что это занимает так долго, как файл журнала или отладочное сообщение?

Вот пользовательские переменные из моего файла инициализации на случай, если кто-нибудь сможет распознать что-то, что может вызвать такую задержку.

(custom-set-variables
 ;; custom-set-variables was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
 '(TeX-PDF-mode t)
 '(TeX-engine (quote xetex))
 '(ac-ignores (quote ("0" "1" "2" "3" "4" "5" "6" "7" "8" "9")))
 '(ac-modes (quote (emacs-lisp-mode lisp-interaction-mode c-mode cc-mode c++-mode java-mode clojure-mode scala-mode scheme-mode ocaml-mode tuareg-mode perl-mode cperl-mode python-mode ruby-mode ecmascript-mode javascript-mode js-mode js2-mode php-mode css-mode makefile-mode sh-mode fortran-mode f90-mode ada-mode xml-mode sgml-mode org-mode)))
 '(ac-user-dictionary (quote ("")))
 '(ansi-color-names-vector ["#3f3f3f" "#cc9393" "#7f9f7f" "#f0dfaf" "#8cd0d3" "#dc8cc3" "#93e0e3" "#dcdccc"])
 '(custom-enabled-themes (quote (deeper-blue)))
 '(custom-safe-themes (quote ("bf7ed640479049f1d74319ed004a9821072c1d9331bc1147e01d22748c18ebdf" default)))
 '(default-major-mode (quote text-mode) t)
 '(fci-rule-color "#383838")
 '(fill-column 70)
 '(global-auto-complete-mode t)
 '(global-visual-line-mode t)
 '(inhibit-startup-screen t)
 '(make-backup-files nil)
 '(org-agenda-files (quote ("e:/org-mode/diary.org" "e:/org-mode/gtd.org")))
 '(org-agenda-show-inherited-tags t)
 '(org-agenda-sorting-strategy (quote ((agenda habit-down time-up priority-down category-keep) (todo todo-state-up priority-down category-keep) (tags priority-down category-keep) (search category-keep))))
 '(org-capture-templates (quote (("d" "Diary" entry (file+datetree "E:\\org-mode\\diary.org") "* %? %i %a %^g %U") ("t" "Task" entry (file+headline "E:\\org-mode\\gtd.org" "Tasks") "* TODO %? %i %a %^g %U") ("r" "Reference to find" entry (file+headline "e:\\org-mode\\ToFind.org" "Incoming") ""))))
 '(org-mode-hook (quote (#[nil "\300\301\302\303\304$\207" [org-add-hook change-major-mode-hook org-show-block-all append local] 5] #[nil "\300\301\302\303\304$\207" [org-add-hook change-major-mode-hook org-babel-show-result-all append local] 5] org-babel-result-hide-spec org-babel-hide-all-hashes org-mode-reftex-setup)) t)
 '(org-modules (quote (org-bbdb org-bibtex org-docview org-gnus org-info org-jsinfo org-habit org-mew org-mhe org-rmail org-vm org-wl org-w3m)))
 '(org-refile-targets (quote ((org-agenda-files :tag . "") (nil :maxlevel . 3))))
 '(org-startup-indented t)
 '(org-support-shift-select t)
 '(org-todo-keywords (quote ((sequence "NEXT(n)" "TODO(t)" "WAITING(w)" "|" "SOMEDAY(s)" "MAYBE(m)" "CANCELLED(c)" "DONE(d)"))))
 '(package-archives (quote (("MELPA" . "http://melpa.milkbox.net/packages/") ("gnu" . "http://elpa.gnu.org/packages/"))))
 '(save-place t nil (saveplace))
 '(text-mode-hook (quote (text-mode-hook-identify))))

2 ответа2

2

Я столкнулся с этой проблемой в Linux с Emacs 24.3.1

В конце концов я заметил, что у меня есть файл .emacs-place, который был 12MB. Я удалил файл, и теперь Emacs сразу выходит. Я подозреваю, что Emacs пытался обновить файл при завершении работы, но файл стал достаточно длинным, чтобы Emacs зависал при анализе и обновлении файла.

Похоже, что .emacs-place используется saveplace, который сохраняет ваше положение в файле, поэтому при повторном открытии файла курсор позиционируется в той же точке, в которой вы находились при закрытии файла. Может быть, через некоторое время этот файл заполняется и занимает много времени для обновления? Я собираюсь следить за этим и отключать сохранение, если это кажется проблемой.

1

К сожалению, не представляется простым способом получить полезный журнал о том, что происходит, когда Emacs завершает работу.

В конце концов, я решил эту проблему, создав новый файл .emacs с нуля. Я заново добавляю вещи по мере необходимости, и до сих пор не было проблем.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .