我已升级到Emacs 23.3,现在*Compile-Log*
缓冲区一直打开 ,错误如下:
Warning: `font-lock-beginning-of-syntax-function' is an obsolete variable (as
of Emacs 23.3); use `syntax-begin-function' instead.
我假设上游作者将来会处理这些警告。在那之前,我如何防止这些错误出现并打开一个新窗口?
答案 0 :(得分:22)
由于另一个问题,我目前回到23.2,但是当我尝试23.3时,我在这个问题上遇到了解决方法。它只是阻止变量被认为是过时的,但是直到Mumamo自行解决,这似乎更合适!
;; Mumamo is making emacs 23.3 freak out:
(when (and (equal emacs-major-version 23)
(equal emacs-minor-version 3))
(eval-after-load "bytecomp"
'(add-to-list 'byte-compile-not-obsolete-vars
'font-lock-beginning-of-syntax-function))
;; tramp-compat.el clobbers this variable!
(eval-after-load "tramp-compat"
'(add-to-list 'byte-compile-not-obsolete-vars
'font-lock-beginning-of-syntax-function)))
答案 1 :(得分:7)
答案 2 :(得分:4)
我通过在elisp上运行它来修复它:
sed -i.bak 's/font-lock-beginning-of-syntax-function/syntax-begin-function/g' `find . -name '*.el' -exec grep -l 'font-lock-beginning-of-syntax-function' {} \;`
答案 3 :(得分:0)
Phils的解决方案由于某种原因对我不起作用。这是一种更低级的方法。
(remprop 'flet 'byte-obsolete-info)
(remprop 'labels 'byte-obsolete-info)