Nick Dokos <nicholas.do...@hp.com> writes: > Eric Schulte <eric.schu...@gmx.com> wrote: > >> Nick Dokos <nicholas.do...@hp.com> writes: >> >> > Eric Schulte <eric.schu...@gmx.com> 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 <eric.schu...@gmx.com> 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