Merge branch 'maint'

This commit is contained in:
Nicolas Goaziou 2012-09-13 13:17:17 +02:00
commit 0b13ec8c1b
2 changed files with 37 additions and 3 deletions

View File

@ -3514,7 +3514,7 @@ CDR a plist of keywords and values."
output)
(unless (bobp)
(while (and (not (bobp)) (progn (forward-line -1) (looking-at key-re)))
(let* ((raw-kwd (upcase (or (match-string 2) (match-string 1))))
(let* ((raw-kwd (upcase (match-string 1)))
;; Apply translation to RAW-KWD. From there, KWD is
;; the official keyword.
(kwd (or (cdr (assoc raw-kwd trans-list)) raw-kwd))
@ -3528,7 +3528,7 @@ CDR a plist of keywords and values."
;; value. Maybe parse it.
(dual-value
(and (member kwd duals)
(let ((sec (org-match-string-no-properties 3)))
(let ((sec (org-match-string-no-properties 2)))
(if (or (not sec) (not (member kwd parsed))) sec
(org-element-parse-secondary-string sec restrict)))))
;; Attribute a property name to KWD.

View File

@ -154,6 +154,40 @@ Some other text
;;; Test Parsers
;;;; Affiliated Keywords
(ert-deftest test-org-element/affiliated-keywords-parser ()
"Test affiliated keywords parsing."
;; Read simple keywords.
(should
(equal "para"
(org-element-property
:name
(org-test-with-temp-text "#+NAME: para\nParagraph"
(org-element-at-point)))))
;; Parse multiple keywords.
(should
(equal
'("line1" "line2")
(org-element-property
:attr_ascii
(org-test-with-temp-text
"#+ATTR_ASCII: line1\n#+ATTR_ASCII: line2\nParagraph"
(org-element-at-point)))))
;; Parse "parsed" keywords.
(should
(equal
'("caption")
(org-test-with-temp-text "#+CAPTION: caption\nParagraph"
(car (org-element-property :caption (org-element-at-point))))))
;; Parse dual keywords.
(should
(equal
'(("long") "short")
(org-test-with-temp-text "#+CAPTION[short]: long\nParagraph"
(org-element-property :caption (org-element-at-point))))))
;;;; Babel Call
(ert-deftest test-org-element/babel-call-parser ()
@ -1636,7 +1670,7 @@ Outside list"
;;; Test Interpreters.
(ert-deftest test-org-element/interpret-affiliated-keywords ()
(ert-deftest test-org-element/affiliated-keywords-interpreter ()
"Test if affiliated keywords are correctly interpreted."
;; Interpret simple keywords.
(should