summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Goaziou <n.goaziou@gmail.com>2013-02-27 00:00:33 +0100
committerNicolas Goaziou <n.goaziou@gmail.com>2013-02-27 00:03:59 +0100
commit86563e0119e1f0b710fb833e58504d1dc607b660 (patch)
tree9bc3a9303973bd914fcb3cd541eb03d5a7daa75c
parentbb45dd1074783d2cfd2602e56400ecb97c28a0ca (diff)
downloadorg-mode-86563e0119e1f0b710fb833e58504d1dc607b660.tar.gz
org-element: OPTIONAL_TITLE becomes ALT_TITLE property
* lisp/org-element.el (org-element-headline-parser): Rename :optional-title into :alt-title. * lisp/ox.el (org-export-get-alt-title): Renamed from `org-export-get-optional-title'. * lisp/ox-ascii.el (org-ascii--build-title): Apply name change. * lisp/ox-html.el (org-html--format-toc-headline): Apply name change. * lisp/ox-latex.el (org-latex-headline): Apply name change. * lisp/ox-texinfo.el (org-texinfo--get-node, org-texinfo--generate-menu-items): Apply name change. * testing/lisp/test-ox.el: Update tests. * doc/org.texi (Table of contents): Update documentation.
-rw-r--r--doc/org.texi6
-rw-r--r--lisp/org-element.el12
-rw-r--r--lisp/ox-ascii.el2
-rw-r--r--lisp/ox-html.el2
-rw-r--r--lisp/ox-latex.el2
-rw-r--r--lisp/ox-texinfo.el4
-rw-r--r--lisp/ox.el10
-rw-r--r--testing/lisp/test-ox.el10
8 files changed, 26 insertions, 22 deletions
diff --git a/doc/org.texi b/doc/org.texi
index 88c9f5d..8295a96 100644
--- a/doc/org.texi
+++ b/doc/org.texi
@@ -9187,11 +9187,11 @@ The same @code{TOC} keyword can also generate a list of all tables
#+TOC: tables (build a list of tables)
@end example
-@cindex property, OPTIONAL_TITLE
+@cindex property, ALT_TITLE
The headline's title usually determines its corresponding entry in a table of
contents. However, it is possible to specifify an alternative title by
-setting @code{OPTIONAL_TITLE} property accordingly. It will then be used
-when building the table.
+setting @code{ALT_TITLE} property accordingly. It will then be used when
+building the table.
@node Lists, Paragraphs, Table of contents, Structural markup elements
@subheading Lists
diff --git a/lisp/org-element.el b/lisp/org-element.el
index fb12b41..e1f1708 100644
--- a/lisp/org-element.el
+++ b/lisp/org-element.el
@@ -728,7 +728,7 @@ CONTENTS is the contents of the footnote-definition."
"Parse a headline.
Return a list whose CAR is `headline' and CDR is a plist
-containing `:raw-value', `:title', `:optional-title', `:begin',
+containing `:raw-value', `:title', `:alt-title', `:begin',
`:end', `:pre-blank', `:hiddenp', `:contents-begin' and
`:contents-end', `:level', `:priority', `:tags',
`:todo-keyword',`:todo-type', `:scheduled', `:deadline',
@@ -847,13 +847,13 @@ Assume point is at beginning of the headline."
:quotedp quotedp)
time-props
standard-props))))
- (let ((opt-title (org-element-property :OPTIONAL_TITLE headline)))
- (when opt-title
+ (let ((alt-title (org-element-property :ALT_TITLE headline)))
+ (when alt-title
(org-element-put-property
- headline :optional-title
- (if raw-secondary-p opt-title
+ headline :alt-title
+ (if raw-secondary-p alt-title
(org-element-parse-secondary-string
- opt-title (org-element-restriction 'headline) headline)))))
+ alt-title (org-element-restriction 'headline) headline)))))
(org-element-put-property
headline :title
(if raw-secondary-p raw-value
diff --git a/lisp/ox-ascii.el b/lisp/ox-ascii.el
index 37418c2..f7a713f 100644
--- a/lisp/ox-ascii.el
+++ b/lisp/ox-ascii.el
@@ -566,7 +566,7 @@ possible. It doesn't apply to `inlinetask' elements."
(text
(org-trim
(org-export-data
- (if (and toc headlinep) (org-export-get-optional-title element info)
+ (if (and toc headlinep) (org-export-get-alt-title element info)
(org-element-property :title element))
info)))
(todo
diff --git a/lisp/ox-html.el b/lisp/ox-html.el
index 81551bf..4ccefe0 100644
--- a/lisp/ox-html.el
+++ b/lisp/ox-html.el
@@ -1605,7 +1605,7 @@ INFO is a plist used as a communication channel."
;; Body.
(concat section-number
(org-export-data
- (org-export-get-optional-title headline info) info)
+ (org-export-get-alt-title headline info) info)
(and tags "&nbsp;&nbsp;&nbsp;") (org-html--tags tags)))))
(defun org-html-list-of-listings (info)
diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el
index f7bb585..eadb47e 100644
--- a/lisp/ox-latex.el
+++ b/lisp/ox-latex.el
@@ -1481,7 +1481,7 @@ holding contextual information."
(funcall org-latex-format-headline-function
todo todo-type priority
(org-export-data
- (org-export-get-optional-title headline info) info)
+ (org-export-get-alt-title headline info) info)
(and (eq (plist-get info :with-tags) t) tags))))
(if (and opt-title (string-match "\\`\\\\\\(.*?[^*]\\){" section-fmt))
(format (replace-match "\\1[%s]" nil nil section-fmt 1)
diff --git a/lisp/ox-texinfo.el b/lisp/ox-texinfo.el
index a0b913d..9400b82 100644
--- a/lisp/ox-texinfo.el
+++ b/lisp/ox-texinfo.el
@@ -442,7 +442,7 @@ See `org-texinfo-text-markup-alist' for details."
(defun org-texinfo--get-node (headline info)
"Return node entry associated to HEADLINE.
INFO is a plist used as a communication channel."
- (let ((menu-title (org-export-get-optional-title headline info)))
+ (let ((menu-title (org-export-get-alt-title headline info)))
(org-texinfo--sanitize-menu
(replace-regexp-in-string
"%" "%%"
@@ -576,7 +576,7 @@ menu using `org-texinfo--format-menu'."
(loop for headline in items collect
(let* ((menu-title (org-texinfo--sanitize-menu
(org-export-data
- (org-export-get-optional-title headline info)
+ (org-export-get-alt-title headline info)
info)))
(title (org-texinfo--sanitize-menu
(org-texinfo--sanitize-headline
diff --git a/lisp/ox.el b/lisp/ox.el
index 30299f2..8c50983 100644
--- a/lisp/ox.el
+++ b/lisp/ox.el
@@ -3419,6 +3419,10 @@ INFO is the plist used as a communication channel."
;; `org-export-get-tags', `org-export-get-category' and
;; `org-export-get-node-property' extract useful information from an
;; headline or a parent headline. They all handle inheritance.
+;;
+;; `org-export-get-alt-title' tries to retrieve an alternative title,
+;; as a secondary string, suitable for table of contents. It falls
+;; back onto default title.
(defun org-export-get-relative-level (headline info)
"Return HEADLINE relative level within current parsed tree.
@@ -3552,11 +3556,11 @@ fail, the fall-back value is \"???\"."
(and file (file-name-sans-extension (file-name-nondirectory file))))
"???"))
-(defun org-export-get-optional-title (headline info)
- "Return optional title for HEADLINE, as a secondary string.
+(defun org-export-get-alt-title (headline info)
+ "Return alternative title for HEADLINE, as a secondary string.
INFO is a plist used as a communication channel. If no optional
title is defined, fall-back to the regular title."
- (or (org-element-property :optional-title headline)
+ (or (org-element-property :alt-title headline)
(org-element-property :title headline)))
(defun org-export-first-sibling-p (headline info)
diff --git a/testing/lisp/test-ox.el b/testing/lisp/test-ox.el
index c2ba86c..1e66a83 100644
--- a/testing/lisp/test-ox.el
+++ b/testing/lisp/test-ox.el
@@ -1046,20 +1046,20 @@ Paragraph[fn:1]"
(should (equal (org-export-number-to-roman 1449) "MCDXLIX")))
(ert-deftest test-org-export/get-optional-title ()
- "Test `org-export-get-optional-title' specifications."
- ;; If OPTIONAL_TITLE property is defined, use it.
+ "Test `org-export-get-alt-title' specifications."
+ ;; If ALT_TITLE property is defined, use it.
(should
(equal '("opt")
(org-test-with-parsed-data
- "* Headline\n:PROPERTIES:\n:OPTIONAL_TITLE: opt\n:END:"
- (org-export-get-optional-title
+ "* Headline\n:PROPERTIES:\n:ALT_TITLE: opt\n:END:"
+ (org-export-get-alt-title
(org-element-map tree 'headline 'identity info t)
info))))
;; Otherwise, fall-back to regular title.
(should
(equal '("Headline")
(org-test-with-parsed-data "* Headline"
- (org-export-get-optional-title
+ (org-export-get-alt-title
(org-element-map tree 'headline 'identity info t)
info)))))