From 4efab7681e36beac0481a29a592d77a9f6dc4ca5 Mon Sep 17 00:00:00 2001 From: Sameer Rahmani Date: Mon, 8 Feb 2021 22:46:51 +0000 Subject: [PATCH] ox-html.el: Add HTML_CONTENT_CLASS to support css classes in content tag * lisp/ox-html.el (org-html-template): Added the support for a CSS class name to the content tag which wraps the entire content. The CSS class name can be set via in buffer HTML_CONTENT_CLASS property or :html-content-class for org publish. TINYCHANGE --- etc/ORG-NEWS | 4 ++++ lisp/ox-html.el | 16 +++++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS index bf1577b84..a9b353a22 100644 --- a/etc/ORG-NEWS +++ b/etc/ORG-NEWS @@ -105,6 +105,10 @@ behavior. By default ox-html now inlines webp images. +*** New option ~org-html-content-class~ + +This is the CSS class name to use for the top level content wrapper. + ** New features *** =ob-python= improvements to =:return= header argument diff --git a/lisp/ox-html.el b/lisp/ox-html.el index adda7365e..20d609591 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -113,6 +113,7 @@ :options-alist '((:html-doctype "HTML_DOCTYPE" nil org-html-doctype) (:html-container "HTML_CONTAINER" nil org-html-container-element) + (:html-content-class "HTML_CONTENT_CLASS" nil org-html-content-class) (:description "DESCRIPTION" nil nil newline) (:keywords "KEYWORDS" nil nil space) (:html-html5-fancy nil "html5-fancy" org-html-html5-fancy) @@ -1080,6 +1081,16 @@ org-info.js for your website." :package-version '(Org . "8.0") :type 'string) +(defcustom org-html-content-class "content" + "CSS class name to use for the top level content wrapper. +Can be set with the in-buffer HTML_CONTENT_CLASS property or for +publishing, with :html-content-class." + :group 'org-export-html + :version "27.2" + :package-version '(Org . "9.5") + :type 'string) + + (defcustom org-html-divs '((preamble "div" "preamble") (content "div" "content") @@ -2091,7 +2102,10 @@ holding export options." (org-html--build-pre/postamble 'preamble info) ;; Document contents. (let ((div (assq 'content (plist-get info :html-divs)))) - (format "<%s id=\"%s\">\n" (nth 1 div) (nth 2 div))) + (format "<%s id=\"%s\" class=\"%s\">\n" + (nth 1 div) + (nth 2 div) + (plist-get info :html-content-class))) ;; Document title. (when (plist-get info :with-title) (let ((title (and (plist-get info :with-title)