Re: [O] PATCH: Allow class attribute for headline in HTML export
Hello! On 2018-12-08, at 12:46, Nicolas Goaziou wrote: > Jens Lechtenboerger writes: > >> Function org-reveal-headline calls org-html-headline to generate >> h-elements. Of course, I could parse the generated HTML in >> ox-reveal and add a class attribute based on org properties, but >> doing so in ox-html seems much cleaner to me. (Besides, given the >> current situation of ox-reveal [1], that change would only make it >> into my fork, not into the original project.) > > Fair enough. I applied your patch on "next" branch. Thank you, I really appreciate this change! Best wishes Jens
Re: [O] PATCH: Allow class attribute for headline in HTML export
Hello, Jens Lechtenboerger writes: > Function org-reveal-headline calls org-html-headline to generate > h-elements. Of course, I could parse the generated HTML in > ox-reveal and add a class attribute based on org properties, but > doing so in ox-html seems much cleaner to me. (Besides, given the > current situation of ox-reveal [1], that change would only make it > into my fork, not into the original project.) Fair enough. I applied your patch on "next" branch. Thank you! Regards, -- Nicolas Goaziou
Re: [O] PATCH: Allow class attribute for headline in HTML export
Hello, On 2018-12-04, Nicolas Goaziou wrote: > Jens Lechtenboerger writes: > >> I plan to use that for a table-of-contents plugin [1] of reveal.js, >> which looks for class attributes inside h-elements to exclude them >> selectively. > > Then I suggest to submit it to "ox-reveal" > (https://github.com/yjwen/org-reveal/) instead. Function org-reveal-headline calls org-html-headline to generate h-elements. Of course, I could parse the generated HTML in ox-reveal and add a class attribute based on org properties, but doing so in ox-html seems much cleaner to me. (Besides, given the current situation of ox-reveal [1], that change would only make it into my fork, not into the original project.) Best wishes Jens [1] https://github.com/yjwen/org-reveal/issues/349
Re: [O] PATCH: Allow class attribute for headline in HTML export
Hello, Jens Lechtenboerger writes: > I plan to use that for a table-of-contents plugin [1] of reveal.js, > which looks for class attributes inside h-elements to exclude them > selectively. Then I suggest to submit it to "ox-reveal" (https://github.com/yjwen/org-reveal/) instead. Regards, -- Nicolas Goaziou
Re: [O] PATCH: Allow class attribute for headline in HTML export
On 2018-12-02, Nicolas Goaziou wrote: > Jens Lechtenboerger writes: > >> From 068fb45f5276d61e86271988efbcf6c29e08c411 Mon Sep 17 00:00:00 2001 >> From: Jens Lechtenboerger >> Date: Sun, 2 Dec 2018 20:25:38 +0100 >> Subject: [PATCH] ox-html.el: New property HTML_HEADLINE_CLASS for class of >> headline > > Thank you. > >> * lisp/ox-html.el (org-html-headline): Add new property >> HTML_HEADLINE_CLASS to assign class attribute to headline. > > Doesn't CUSTOM_ID already fit the bill? Good morning, I plan to use that for a table-of-contents plugin [1] of reveal.js, which looks for class attributes inside h-elements to exclude them selectively. Best wishes Jens [1] https://github.com/e-gor/Reveal.js-TOC-Progress
Re: [O] PATCH: Allow class attribute for headline in HTML export
Hello, Jens Lechtenboerger writes: > From 068fb45f5276d61e86271988efbcf6c29e08c411 Mon Sep 17 00:00:00 2001 > From: Jens Lechtenboerger > Date: Sun, 2 Dec 2018 20:25:38 +0100 > Subject: [PATCH] ox-html.el: New property HTML_HEADLINE_CLASS for class of > headline Thank you. > * lisp/ox-html.el (org-html-headline): Add new property > HTML_HEADLINE_CLASS to assign class attribute to headline. Doesn't CUSTOM_ID already fit the bill? Regards, -- Nicolas Goaziou
Re: [O] PATCH: Allow class attribute for headline in HTML export
On 2018-12-02, at 19:25, Jens Lechtenboerger wrote: > Dear all, > > the attached patch allows to add a class attribute to headline > elements in HTML export. Is that acceptable for inclusion? In that patch, "when" should have been "if", sorry. Fixed version attached. Best wishes Jens >From 068fb45f5276d61e86271988efbcf6c29e08c411 Mon Sep 17 00:00:00 2001 From: Jens Lechtenboerger Date: Sun, 2 Dec 2018 20:25:38 +0100 Subject: [PATCH] ox-html.el: New property HTML_HEADLINE_CLASS for class of headline * lisp/ox-html.el (org-html-headline): Add new property HTML_HEADLINE_CLASS to assign class attribute to headline. * doc/org-manual.org: Document new property HTML_HEADLINE_CLASS. --- doc/org-manual.org | 6 +- lisp/ox-html.el| 6 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/org-manual.org b/doc/org-manual.org index 458e59a4a..9d14c4cdc 100644 --- a/doc/org-manual.org +++ b/doc/org-manual.org @@ -12780,7 +12780,11 @@ external file. In order to add styles to a sub-tree, use the =HTML_CONTAINER_CLASS= property to assign a class to the tree. In order to specify CSS styles for a particular headline, you can use the ID specified in -a =CUSTOM_ID= property. +a =CUSTOM_ID= property or =HTML_HEADLINE_CLASS= as described next. + +#+cindex: @samp{HTML_HEADLINE_CLASS}, property +In order to assign a class to a headline, use the =HTML_HEADLINE_CLASS= +property. Never change the ~org-html-style-default~ constant. Instead use other simpler ways of customizing as described above. diff --git a/lisp/ox-html.el b/lisp/ox-html.el index 6a81be126..b043ab8fd 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -2608,6 +2608,7 @@ holding contextual information." (format "\n" html-type ;; Standard headline. Export it as a section. (let ((extra-class (org-element-property :HTML_CONTAINER_CLASS headline)) + (headline-class (org-element-property :HTML_HEADLINE_CLASS headline)) (first-content (car (org-element-contents headline (format "<%s id=\"%s\" class=\"%s\">%s%s\n" (org-html--container headline info) @@ -2616,9 +2617,12 @@ holding contextual information." (concat (format "outline-%d" level) (and extra-class " ") extra-class) - (format "\n%s\n" + (format "\n%s\n" level id + (if headline-class + (format " class=\"%s\"" headline-class) + "") (concat (and numberedp (format -- 2.17.1
[O] PATCH: Allow class attribute for headline in HTML export
Dear all, the attached patch allows to add a class attribute to headline elements in HTML export. Is that acceptable for inclusion? Best wishes Jens P.S. The change is tiny, but I assigned copyright to the FSF in 2015. >From e8f16b04903bc32c4ea006727c82dbcb40b591a8 Mon Sep 17 00:00:00 2001 From: Jens Lechtenboerger Date: Sun, 2 Dec 2018 19:05:55 +0100 Subject: [PATCH] ox-html.el: New property HTML_HEADLINE_CLASS for class of headline * lisp/ox-html.el (org-html-headline): Add new property HTML_HEADLINE_CLASS to assign class attribute to headline. * doc/org-manual.org: Document new property HTML_HEADLINE_CLASS. --- doc/org-manual.org | 6 +- lisp/ox-html.el| 5 - 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/doc/org-manual.org b/doc/org-manual.org index 458e59a4a..9d14c4cdc 100644 --- a/doc/org-manual.org +++ b/doc/org-manual.org @@ -12780,7 +12780,11 @@ external file. In order to add styles to a sub-tree, use the =HTML_CONTAINER_CLASS= property to assign a class to the tree. In order to specify CSS styles for a particular headline, you can use the ID specified in -a =CUSTOM_ID= property. +a =CUSTOM_ID= property or =HTML_HEADLINE_CLASS= as described next. + +#+cindex: @samp{HTML_HEADLINE_CLASS}, property +In order to assign a class to a headline, use the =HTML_HEADLINE_CLASS= +property. Never change the ~org-html-style-default~ constant. Instead use other simpler ways of customizing as described above. diff --git a/lisp/ox-html.el b/lisp/ox-html.el index 6a81be126..d9d976753 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -2608,6 +2608,7 @@ holding contextual information." (format "\n" html-type ;; Standard headline. Export it as a section. (let ((extra-class (org-element-property :HTML_CONTAINER_CLASS headline)) + (headline-class (org-element-property :HTML_HEADLINE_CLASS headline)) (first-content (car (org-element-contents headline (format "<%s id=\"%s\" class=\"%s\">%s%s\n" (org-html--container headline info) @@ -2616,9 +2617,11 @@ holding contextual information." (concat (format "outline-%d" level) (and extra-class " ") extra-class) - (format "\n%s\n" + (format "\n%s\n" level id + (when headline-class + (format " class=\"%s\"" headline-class)) (concat (and numberedp (format -- 2.17.1