Hi,

Thanks for taking a look.
Afaict, the only difference between blank and [ \t] are some weird unicode characters. It isn't clear to me which one should be preferable and in what situation. I couldn't find any reference to this in any documentation of Org syntax.

I've replaced all instances of blank with (any " \t") in this function (that's the only instances in org.el).
The attached patch fixes the original issue.

Regards,
Sébastien Miquel

Nicolas Goaziou wrote:

Hello,

Sebastien Miquel <sebastien.mique...@orange.fr> writes:

           (rx bol (group (zero-or-more blank) "#"
                          (group (group (or (seq "+" (one-or-more (any "a-zA-Z")) 
(optional ":"))
-                                           space
+                                           blank
This looks wrong, but so does the current regexp. It should not be
`space' nor `blank', but [ \t] per Org syntax.

Regards,

>From 2bb847473f2199e1dfd03ddcafdd3563ed46ab78 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Miquel?= <sebastien.miq...@posteo.eu>
Date: Wed, 16 Sep 2020 07:49:34 +0200
Subject: [PATCH] org.el (org-fontify-meta-lines-and-blocks-1): Fix meta lines
 regexp

* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Fix meta lines
regexp to work correctly for lines with only a #.

Replace blank in regexp by (any " \t").

TINYCHANGE
---
 lisp/org.el | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/lisp/org.el b/lisp/org.el
index d09d6c8d2..053635c85 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -5219,14 +5219,14 @@ by a #."
   "Fontify #+ lines and blocks."
   (let ((case-fold-search t))
     (when (re-search-forward
-	   (rx bol (group (zero-or-more blank) "#"
+	   (rx bol (group (zero-or-more (any " \t")) "#"
 			  (group (group (or (seq "+" (one-or-more (any "a-zA-Z")) (optional ":"))
-					    space
+					    (any " \t")
 					    eol))
 				 (optional (group "_" (group (one-or-more (any "a-zA-Z"))))))
-			  (zero-or-more blank)
+			  (zero-or-more (any " \t"))
 			  (group (group (zero-or-more (not (any " \t\n"))))
-				 (zero-or-more blank)
+				 (zero-or-more (any " \t"))
 				 (group (zero-or-more any)))))
 	   limit t)
       (let ((beg (match-beginning 0))
@@ -5249,7 +5249,7 @@ by a #."
 		quoting (member block-type org-protecting-blocks))
 	  (when (re-search-forward
 		 (rx-to-string `(group bol (or (seq (one-or-more "*") space)
-					       (seq (zero-or-more blank)
+					       (seq (zero-or-more (any " \t"))
 						    "#+end"
 						    ,(match-string 4)
 						    word-end
@@ -5323,11 +5323,11 @@ by a #."
 	  ;; Handle short captions
 	  (save-excursion
 	    (beginning-of-line)
-	    (looking-at (rx (group (zero-or-more blank)
+	    (looking-at (rx (group (zero-or-more (any " \t"))
 				   "#+caption"
 				   (optional "[" (zero-or-more any) "]")
 				   ":")
-			    (zero-or-more blank))))
+			    (zero-or-more (any " \t")))))
 	  (add-text-properties (line-beginning-position) (match-end 1)
 			       '(font-lock-fontified t face org-meta-line))
 	  (add-text-properties (match-end 0) (line-end-position)
-- 
2.28.0

Reply via email to