[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] [PATCH] Allow mixed export of numbered and unnumbered sections in HT
From: |
Lawrence Mitchell |
Subject: |
[O] [PATCH] Allow mixed export of numbered and unnumbered sections in HTML |
Date: |
Wed, 23 Mar 2011 09:38:18 +0000 |
User-agent: |
Gnus/5.110014 (No Gnus v0.14) Emacs/24.0.50 (gnu/linux) |
* lisp/org-html.el (org-export-as-html): Get local value of
org-export-with-section-numbers from the buffer's plist. Deal
specially with the case the resulting value is an integer.
(org-html-level-start): New optional argument of the option plist used
instead of `org-export-with-section-numbers'. Also deal specially
with the case that the value is an integer.
When `org-export-with-section-numbers' (or the buffer-local
:section-numbers option) is an integer, we now export the first NUM
levels of headings with numbers and lower-level headings without.
---
lisp/org-html.el | 24 ++++++++++++++++++------
1 files changed, 18 insertions(+), 6 deletions(-)
Nick Dokos wrote:
> Suvayu Ali <address@hidden> wrote:
>> This works too, but Lawrence's patch makes it much easier and
>> probably works for other export formats too. Thanks a lot. :)
As Nick points out, each exporter backend needs a similar change.
> No doubt Lawrence's patch can be extended to work for other exports, but
> it's not there yet: each exporter would need a change similar to the one
> that he made to the LaTeX exporter.
Here's the matching change to the HTML exporter, which is the
only other one I'm familiar with. Maintainers, if you don't want
the special-casing on integerp, the change to move from
`org-export-with-section-numbers' to (plist-get opt-plist
:section-numbers) is the correct one anyway. I can split the
patches if required.
diff --git a/lisp/org-html.el b/lisp/org-html.el
index b13fb93..06305f6 100644
--- a/lisp/org-html.el
+++ b/lisp/org-html.el
@@ -1150,6 +1150,7 @@ PUB-DIR is set, use this as the publishing directory."
(language (plist-get opt-plist :language))
(keywords (plist-get opt-plist :keywords))
(description (plist-get opt-plist :description))
+ (num (plist-get opt-plist :section-numbers))
(lang-words nil)
(head-count 0) cnt
(start 0)
@@ -1355,7 +1356,7 @@ lang=\"%s\" xml:lang=\"%s\">
(if (string-match quote-re0 txt)
(setq txt (replace-match "" t t txt)))
(setq snumber (org-section-number level))
- (if org-export-with-section-numbers
+ (if (and num (integerp num) (>= num level))
(setq txt (concat snumber " " txt)))
(if (<= level (max umax umax-toc))
(setq head-count (+ head-count 1)))
@@ -1591,7 +1592,7 @@ lang=\"%s\" xml:lang=\"%s\">
(setq first-heading-pos (or first-heading-pos (point)))
(org-html-level-start level txt umax
(and org-export-with-toc (<= level umax))
- head-count)
+ head-count opt-plist)
;; QUOTES
(when (string-match quote-re line)
@@ -1684,7 +1685,7 @@ lang=\"%s\" xml:lang=\"%s\">
(org-html-level-start 1 nil umax
(and org-export-with-toc (<= level umax))
- head-count)
+ head-count opt-plist)
;; the </div> to close the last text-... div.
(when (and (> umax 0) first-heading-pos) (insert "</div>\n"))
@@ -2330,7 +2331,7 @@ If there are links in the string, don't modify these."
(insert (if (equal type "d") "</dd>\n" "</li>\n")))
(defvar body-only) ; dynamically scoped into this.
-(defun org-html-level-start (level title umax with-toc head-count)
+(defun org-html-level-start (level title umax with-toc head-count &optional
opt-plist)
"Insert a new level in HTML export.
When TITLE is nil, just close all open levels."
(org-close-par-maybe)
@@ -2341,6 +2342,7 @@ When TITLE is nil, just close all open levels."
(preferred (and target
(cdr (assoc target
org-export-preferred-target-alist))))
(l org-level-max)
+ (num (plist-get opt-plist :section-numbers))
snumber snu href suffix)
(setq extra-targets (remove (or preferred target) extra-targets))
(setq extra-targets
@@ -2395,10 +2397,20 @@ When TITLE is nil, just close all open levels."
(setq snumber (org-section-number level)
snu (replace-regexp-in-string "\\." "_" snumber))
(setq level (+ level org-export-html-toplevel-hlevel -1))
- (if (and org-export-with-section-numbers (not body-only))
+ (if (and num (not body-only))
(setq title (concat
(format "<span class=\"section-number-%d\">%s</span>"
- level snumber)
+ level
+ (if (and (integerp num)
+ ;; fix up num to take into
+ ;; account the top-level
+ ;; heading value
+ (>= (+ num
+ org-export-html-toplevel-hlevel
+ -1)
+ level))
+ snumber
+ ""))
" " title)))
(unless (= head-count 1) (insert "\n</div>\n"))
(setq href (cdr (assoc (concat "sec-" snu)
org-export-preferred-target-alist)))
--
1.7.4.rc2.18.gb20e9
- [O] Re: unnumbered subsections in latex export, (continued)
- [O] Re: unnumbered subsections in latex export, Sébastien Vauban, 2011/03/22
- Re: [O] Re: unnumbered subsections in latex export, Suvayu Ali, 2011/03/22
- [O] Re: unnumbered subsections in latex export, Sébastien Vauban, 2011/03/22
- [O] [PATCH] Allow mixed export of numbered and unnumbered sections in LaTeX, Lawrence Mitchell, 2011/03/22
- Re: [O] [PATCH] Allow mixed export of numbered and unnumbered sections in LaTeX, Suvayu Ali, 2011/03/22
- [Accepted] [O] Allow mixed export of numbered and unnumbered sections in LaTeX, Bastien Guerry, 2011/03/23
- Re: [O] [PATCH] Allow mixed export of numbered and unnumbered sections in LaTeX, Bastien, 2011/03/23
- Re: [O] Re: unnumbered subsections in latex export, Nick Dokos, 2011/03/22
- Re: [O] Re: unnumbered subsections in latex export, Suvayu Ali, 2011/03/22
- Re: [O] Re: unnumbered subsections in latex export, Nick Dokos, 2011/03/22
- [O] [PATCH] Allow mixed export of numbered and unnumbered sections in HTML,
Lawrence Mitchell <=
- [Accepted] [O] Allow mixed export of numbered and unnumbered sections in HTML, Bastien Guerry, 2011/03/23
- Re: [Accepted] [O] Allow mixed export of numbered and unnumbered sections in HTML, Nick Dokos, 2011/03/23
- Re: [Accepted] [O] Allow mixed export of numbered and unnumbered sections in HTML, Suvayu Ali, 2011/03/23
- Re: [O] Re: unnumbered subsections in latex export, Bastien, 2011/03/23
- Re: [O] Re: unnumbered subsections in latex export, Nick Dokos, 2011/03/23
- [O] Re: unnumbered subsections in latex export, Lawrence Mitchell, 2011/03/23
- Re: [O] Re: unnumbered subsections in latex export, Nick Dokos, 2011/03/23
- [O] Re: unnumbered subsections in latex export, Jambunathan K, 2011/03/23
- Re: [O] Re: unnumbered subsections in latex export, Nick Dokos, 2011/03/23
- [O] Re: unnumbered subsections in latex export, Jambunathan K, 2011/03/23