Emacs:使用字体锁定/语法着色非常慢的滚动

时间:2010-10-03 09:25:12

标签: emacs font-lock emacs-faces

我正试图从Vim切换到Emacs几个月并遇到了一个奇怪的问题: 当font-lock打开时,在emacs中滚动变得非常慢。配置相关部分的示例:

(require 'vimpulse)
(require 'font-lock)
(require 'color-theme)

(global-font-lock-mode 1)
;;(setq font-lock-maximum-decoration t
;;font-lock-maximum-size nil)
;;(setq font-lock-support-mode 'fast-lock-mode ; lazy-lock-mode
;;  fast-lock-cache-directories '("~/.emacs-flc"))

即使是以几百行开头的相对较小的文件,它也很慢。似乎是这样 这不是一个非常普遍的问题,因为到目前为止我没有找到任何明确的解决方案。

GNU Emacs 23.1.1 Ubuntu 10.04

3 个答案:

答案 0 :(得分:2)

粗体字可能就是问题。

我个人在.emacs.el中获得了一个颜色主题定义的副本 并改变它以摆脱许多大胆的属性。 通过这种方式,我得到了一个我喜欢的主题而没有太多的惩罚。

(require 'color-theme)
(defun color-theme-youlike ()
  (interactive)
  (color-theme-install
   '(color-theme-youlike
     ((foreground-color . "black")
      (background-color . "white")
      (mouse-color . "sienna3")
      (cursor-color . "HotPink")
      (border-color . "Blue")
      (background-mode . light))
     (default ((t (nil))))
...
     (show-paren-mismatch-face ((t (:foreground "white" :background "purple")))))))
(set-default-font "Monaco-12")
(color-theme-youlike)

希望它也适合你。

答案 1 :(得分:0)

你关掉了快速和懒惰的锁定。我认为这两个都是为了改善各种场景中字体锁的响应性和行为而设计的。我很好奇为什么要把它们关掉。要了解有关这些内容的更多信息,他们做什么以及何时应该使用它们,请阅读lasy-lock和font-lock.el文件中的注释。 (我认为)

答案 2 :(得分:0)

您可以从'emacs -Q',eval(global-font-lock-mode 1)开始,看看它是否仍然可以重现。如果是,请提交错误;如果不是,请检查您安装的site-lisp ..