Как заставить Emacs перекрасить - PullRequest
5 голосов
/ 02 ноября 2011

Время от времени Emacs терпит неудачу при подсветке синтаксиса, и раскраска становится все более фанковой в буфере.Есть ли способ заставить Emacs «перекрасить» синтаксис?Просто попробовать?Я не против, если это займет некоторое время.

Ответы [ 2 ]

9 голосов
/ 02 ноября 2011

Я думаю M-x font-lock-fontify-buffer сделает то, что вы ищете.Или выберите регион и выполните M-o M-o (или M-x font-lock-fontify-block).

0 голосов
/ 17 октября 2012

Однажды я написал следующую простую функцию для сброса буфера в его естественный режим, его повторной идентификации, перемещения строки, в которой находится курсор, к центру экрана, отключения строки меню, отключения панели инструментов и перемещенияполоса прокрутки влево.

(defun --normal-mode-no-gimmicks ()
  "Enable buffer `normal-mode' and refontify.
Disable frame menu, toolbar, scrollbars."
  (interactive)
  (menu-bar-mode 0)
  (tool-bar-mode 0)
  (set-scroll-bar-mode 'left)
  (toggle-scroll-bar 1)
  (normal-mode) (recenter-top-bottom)
  (font-lock-fontify-buffer))

Это может быть очень полезно при смене режима, Emacs внезапно отображает строку меню или что-то еще идет не так.Тогда я просто нажимаю M-g g, чтобы исцелить его.

(global-set-key [?\M-g ?g] '--normal-mode-no-gimmicks)

Я не знал о M-o M-o;кажется, что это может быть лучшей привязкой клавиш для этой функции.

...