Sair do Emacs é muito lento… Como solucionar problemas?

3

Eu corro o Emacs no Windows 7 e sempre que eu o fecho, normalmente demora pelo menos 5 segundos para a janela fechar. Parece que não importa que tipo de buffers eu tenha aberto ou quais modos eu esteja. Enquanto isso, a barra de status na parte inferior normalmente diz:

(No files need saving)

Existe alguma maneira de eu ter uma ideia do que está demorando tanto, como um arquivo de log ou uma mensagem de depuração?

Aqui estão as variáveis personalizadas do meu arquivo init, caso alguém consiga reconhecer algo que possa causar um atraso.

(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 "01234$7" [org-add-hook change-major-mode-hook org-show-block-all append local] 5] #[nil "01234$7" [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))))
    
por Brian Z 26.05.2013 / 05:16

2 respostas

1

Infelizmente, parece não haver uma maneira fácil de obter um registro útil do que está acontecendo quando o Emacs é encerrado.

No final, resolvi esse problema criando um novo arquivo .emacs do zero. Eu estou re-adicionando coisas como eu preciso delas, e até agora não tive problemas.

    
por 21.08.2013 / 21:33
2

Eu encontrei este problema no Linux com o Emacs 24.3.1

Eventualmente, notei que eu tinha um arquivo .emacs-places que era 12MB. Eu deletei o arquivo e agora o Emacs sai imediatamente. Eu suspeito que o Emacs estava tentando fazer alguma atualização para o arquivo no desligamento, mas o arquivo ficou longo o suficiente para que o Emacs ficasse preso analisando e atualizando o arquivo.

Parece que .emacs-places é usado pelo saveplace, que armazena sua posição em um arquivo, para que, quando você reabrir o arquivo, o cursor seja posicionado no mesmo ponto em que você estava quando fechou o arquivo. Talvez depois de um tempo esse arquivo fique cheio e consuma tempo para atualizar? Vou ficar de olho nele e desabilitar o saveplace se esse parece ser o problema.

    
por 08.01.2015 / 23:32

Tags