From: Noam Postavsky Date: Tue, 21 Mar 2017 13:03:47 +0000 (-0400) Subject: Narrow scope of modification hook renabling in org-src fontification X-Git-Tag: emacs-25.2~17 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d38fd9229c07c531ebc0bec0ea65f7d7dffcd983;p=emacs.git Narrow scope of modification hook renabling in org-src fontification Modification hooks should be enabled while modifying text in the org-src temp buffer, but in 2017-01-29 "Call modification hooks in org-src fontify buffers" the hooks were enabled also for modifications to the original org buffer. This causes fontification errors when combined with certain packages, as reported in http://lists.gnu.org/archive/html/emacs-orgmode/2017-03/msg00420.html. * lisp/org/org-src.el (org-src-font-lock-fontify-block): Reduce scope of inhibit-modification-hooks let-binding. --- diff --git a/lisp/org/org-src.el b/lisp/org/org-src.el index a02402cf60e..16aa443232f 100644 --- a/lisp/org/org-src.el +++ b/lisp/org/org-src.el @@ -918,15 +918,15 @@ fontification of code blocks see `org-src-fontify-block' and ;; from `jit-lock-function' (Bug#25132). (let ((inhibit-modification-hooks nil)) (delete-region (point-min) (point-max)) - (insert string " ") ;; so there's a final property change - (unless (eq major-mode lang-mode) (funcall lang-mode)) - (org-font-lock-ensure) - (setq pos (point-min)) - (while (setq next (next-single-property-change pos 'face)) - (put-text-property - (+ start (1- pos)) (1- (+ start next)) 'face - (get-text-property pos 'face) org-buffer) - (setq pos next)))) + (insert string " ")) ;; so there's a final property change + (unless (eq major-mode lang-mode) (funcall lang-mode)) + (org-font-lock-ensure) + (setq pos (point-min)) + (while (setq next (next-single-property-change pos 'face)) + (put-text-property + (+ start (1- pos)) (1- (+ start next)) 'face + (get-text-property pos 'face) org-buffer) + (setq pos next))) (add-text-properties start end '(font-lock-fontified t fontified t font-lock-multiline t))