Forráskód Böngészése

org-element: Fix error when parsing lowercase keywords

* lisp/org-element.el (org-element-context): Fix error when parsing
  affiliated keywords, e.g. "caption".
* testing/lisp/test-org-element.el: Add test.
Nicolas Goaziou 11 éve
szülő
commit
757f00811d
2 módosított fájl, 8 hozzáadás és 2 törlés
  1. 3 2
      lisp/org-element.el
  2. 5 0
      testing/lisp/test-org-element.el

+ 3 - 2
lisp/org-element.el

@@ -4856,9 +4856,10 @@ Providing it allows for quicker computation."
 	((let ((post (org-element-property :post-affiliated element)))
 	   (and post (< origin post)))
 	 (beginning-of-line)
-	 (looking-at org-element--affiliated-re)
+	 (let ((case-fold-search t)) (looking-at org-element--affiliated-re))
 	 (cond
-	  ((not (member (upcase (match-string 1)) org-element-parsed-keywords))
+	  ((not (member-ignore-case (match-string 1)
+				    org-element-parsed-keywords))
 	   (throw 'objects-forbidden element))
 	  ((< (match-end 0) origin)
 	   (narrow-to-region (match-end 0) (line-end-position)))

+ 5 - 0
testing/lisp/test-org-element.el

@@ -2961,6 +2961,11 @@ Paragraph \\alpha."
        (org-test-with-temp-text "#+CAPTION: {{{macro}}}\n| a | b |."
 	 (progn (search-forward "{")
 		(org-element-type (org-element-context))))))
+  (should
+   (eq 'bold
+       (org-test-with-temp-text "#+caption: *bold*\nParagraph"
+	 (progn (search-forward "*")
+		(org-element-type (org-element-context))))))
   ;; Correctly set `:parent' property.
   (should
    (eq 'paragraph