emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/org d74a824 54/85: org.el (org-fontify-extend-region):


From: ELPA Syncer
Subject: [elpa] externals/org d74a824 54/85: org.el (org-fontify-extend-region): Fix headline fontification in edge case
Date: Mon, 27 Sep 2021 15:57:49 -0400 (EDT)

branch: externals/org
commit d74a82448bc28dd9be7b57611038bbb4c7172bce
Author: Sébastien Miquel <sebastien.miquel@posteo.eu>
Commit: Bastien <bzg@gnu.org>

    org.el (org-fontify-extend-region): Fix headline fontification in edge case
    
    * lisp/org.el (org-fontify-extend-region): Fix fontification of
    headline or meta line created by inserting a newline.
    
    Unrelated to the fix: `org-fontify-extend-region' is added to
    `font-lock-extend-after-change-region-function' and doesn't need to
    use `save-excursion'.
---
 lisp/org.el | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/lisp/org.el b/lisp/org.el
index 66ca73d..96d0e8a 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -5440,7 +5440,9 @@ by a #."
          t)))))
 
 (defun org-fontify-extend-region (beg end _old-len)
-  (let ((begin-re "\\(\\\\\\[\\|\\(#\\+begin_\\|\\\\begin{\\)\\S-+\\)")
+  (let ((end (if (progn (goto-char end) (looking-at-p "^[*#]"))
+                 (1+ end) end))
+        (begin-re "\\(\\\\\\[\\|\\(#\\+begin_\\|\\\\begin{\\)\\S-+\\)")
        (end-re "\\(\\\\\\]\\|\\(#\\+end_\\|\\\\end{\\)\\S-+\\)")
        (extend
          (lambda (r1 r2 dir)
@@ -5450,15 +5452,14 @@ by a #."
                        "[][]" r2
                       (match-string-no-properties 0)))))
             (re-search-forward (regexp-quote re) nil t dir)))))
+    (goto-char beg)
+    (back-to-indentation)
     (save-match-data
-      (save-excursion
-       (goto-char beg)
-       (back-to-indentation)
-       (cond ((looking-at end-re)
-              (cons (or (funcall extend "begin" "[" -1) beg) end))
-             ((looking-at begin-re)
-              (cons beg (or (funcall extend "end" "]" 1) end)))
-             (t (cons beg end)))))))
+      (cond ((looking-at end-re)
+            (cons (or (funcall extend "begin" "[" -1) beg) end))
+           ((looking-at begin-re)
+            (cons beg (or (funcall extend "end" "]" 1) end)))
+           (t (cons beg end))))))
 
 (defun org-activate-footnote-links (limit)
   "Add text properties for footnotes."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]