emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] org-e-html and table of contents


From: Eric Schulte
Subject: Re: [O] org-e-html and table of contents
Date: Thu, 23 Aug 2012 12:42:31 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.50 (gnu/linux)

Nick Dokos <address@hidden> writes:

> Eric Schulte <address@hidden> wrote:
>
>> Nick Dokos <address@hidden> writes:
>> 
>> > Eric Schulte <address@hidden> wrote:
>> >
>> >> Hi,
>> >> 
>> >> I've been using the new html exporter (org-e-html) recently, and I'm
>> >> surprised that it does not add tables of contents by default.  Is there
>> >> a user variable which I can customize to change this default?  Currently
>> >> the only way I see to add a table of contents is to add a TOC keyword to
>> >> the buffer.
>> >> 
>> >
>> > org-export-with-toc perhaps?
>> >
>> > Nick
>> >
>> 
>> Nope,
>> 
>> With this variable set to t the e-html backend does *not* produce a
>> table of contents.  To demonstrate, run the following from the command
>> line with the attached Org-mode file (although any file will do) saved
>> to /tmp/example.org.
>> 
>>     # -*- shell-script -*-
>>     emacs --batch -l path/to/org-mode/lisp/org-element.el \
>>                   -l path/to/org-mode/contrib/lisp/org-export.el \
>>                   -l path/to/org-mode/contrib/lisp/org-e-html.el \
>>                   /tmp/example.org \
>>           --eval '(let ((org-export-with-toc t)) (org-export-to-file (quote 
>> e-html) "/tmp/example.html"))'
>
> Try setting it to 4: org-e-html.el says (around line 1475)
>
>
> --8<---------------cut here---------------start------------->8---
>    ;; table of contents
>    (let ((depth (plist-get info :with-toc)))
>      (when (wholenump depth) (org-e-html-toc depth info)))
> --8<---------------cut here---------------end--------------->8---
>
> even though that contradicts the docstring for the variable.
>

Indeed, setting this variable to 4 does result in TOC generation.

I'd recommend the attached patch.

Thanks,

>From 228c4bbdd2fc145b135de233632e8884d1d53cd7 Mon Sep 17 00:00:00 2001
From: Eric Schulte <address@hidden>
Date: Thu, 23 Aug 2012 12:41:52 -0600
Subject: [PATCH] Better use of default org-export-with-toc value

* contrib/lisp/org-e-html.el (org-e-html-template): Default value of t
  for org-export-with-toc has no impact, so instead when t set TOC depth
  to 4.
---
 contrib/lisp/org-e-html.el | 1 +
 1 file changed, 1 insertion(+)

diff --git a/contrib/lisp/org-e-html.el b/contrib/lisp/org-e-html.el
index 4e9d398..ee0f247 100644
--- a/contrib/lisp/org-e-html.el
+++ b/contrib/lisp/org-e-html.el
@@ -1473,6 +1473,7 @@ original parsed data.  INFO is a plist holding export 
options."
 <h1 class=\"title\">%s</h1>\n" (org-export-data (plist-get info :title) info))
    ;; table of contents
    (let ((depth (plist-get info :with-toc)))
+     (when (eq t depth) (setq depth 4))
      (when (wholenump depth) (org-e-html-toc depth info)))
    ;; document contents
    contents
-- 
1.7.12

-- 
Eric Schulte
http://cs.unm.edu/~eschulte

reply via email to

[Prev in Thread] Current Thread [Next in Thread]