Browse Source

Allow setting :HTML_CONTAINER as a per-headline property.

* lisp/ox-html.el (org-html-headline): Use (new) org-html--container
  function to set container element.
(org-html--container): Returns appropriate element for headline
container:
        1. The element set on the headline :HTML_CONTAINER property.
        2. the :html-container element (if the relative headline level
        is 1.)
        3. The default ("div").
Rick Frankel 12 years ago
parent
commit
db8d3f5dcf
1 changed files with 8 additions and 6 deletions
  1. 8 6
      lisp/ox-html.el

+ 8 - 6
lisp/ox-html.el

@@ -2200,9 +2200,7 @@ holding contextual information."
 	     (level1 (+ level (1- org-html-toplevel-hlevel)))
 	     (first-content (car (org-element-contents headline))))
 	(format "<%s id=\"%s\" class=\"%s\">%s%s</%s>\n"
-		(if (= 1 (org-export-get-relative-level headline info))
-		    (plist-get info :html-container)
-		  "div")
+		(org-html--container headline info)
 		(format "outline-container-%s"
 			(or (org-element-property :CUSTOM_ID headline)
 			    (concat "sec-" section-number)))
@@ -2227,9 +2225,13 @@ holding contextual information."
 		    (concat (org-html-section first-content "" info)
 			    contents)
 		  contents)
-		(if (= 1 (org-export-get-relative-level headline info))
-		    (plist-get info :html-container)
-		  "div")))))))
+		(org-html--container headline info)))))))
+
+(defun org-html--container (headline info)
+  (or (org-element-property :HTML_CONTAINER headline)
+      (if (= 1 (org-export-get-relative-level headline info))
+	  (plist-get info :html-container)
+	"div")))
 
 ;;;; Horizontal Rule