Я использую hide-show, чтобы свернуть некоторые части моего текста, и я использую приведенный ниже код, чтобы показать количество скрытых строк.Наложения делают emacs очень медленными
Однако, если файл достаточно велик (например, C++ или LaTeX), и я разрушаю все регионы (таким образом создавая десятки наложений), Emacs становится очень медленным до невозможности использования. Даже перемещение маркера с одной линии на другую занимает полсекунды или около того.
Есть ли способ разрешить это?
(defun display-code-line-counts (ov)
(overlay-put ov 'display
(format "...%d..."
(count-lines (overlay-start ov)
(overlay-end ov))
))
(overlay-put ov 'face '(:foreground "red" :box (:line-width 1 :style none)))
)
(setq hs-set-up-overlay 'display-code-line-counts)
EDIT: Оказывается, причина, Emacs становится очень медленной из-за незначительным режимом Linum, который создает тысячи (скрытые) накладок, которые разрушились с укрытием шоу. Есть ли способ исправить это? Или лучший режим номера линии?
Вы пробовали профилировать код? – Nick
Спасибо. Я сделал это, и я думаю, что нашел главного виновника. См. Мои изменения – Tohiko
Перекрестные ссылки на http://emacs.stackexchange.com/q/30563 – phils