瀏覽代碼

ox-html: Allow "Figure %d:", etc. to be styled

* lisp/ox-html.el (org-html-paragraph): Wrap "Figure %d:" in
  <span class="figure-number">.
  (org-html-list-of-tables, org-html-table): Wrap "Table %d:" in
   <span class="table-number">.
  (org-html-list-of-listings): Wrap "Listing %d:" in
  <span class="listing-number">.
* doc/org.text (CSS support): Mention .figure-number,
  .listing-number, and .table-number.

I didn't change org-html-style-default, so these labels won't
appear special by default.

TINYCHANGE
Kodi Arfer 11 年之前
父節點
當前提交
03040dd44d
共有 2 個文件被更改,包括 12 次插入5 次删除
  1. 3 0
      doc/org.texi
  2. 9 5
      lisp/ox-html.el

+ 3 - 0
doc/org.texi

@@ -11345,6 +11345,9 @@ p.creator           @r{creator info, about org mode version}
 div.outline-N       @r{div for outline level N (headline plus text))}
 div.outline-text-N  @r{extra div for text at outline level N}
 .section-number-N   @r{section number in headlines, different for each level}
+.figure-number      @r{label like "Figure 1:"}
+.table-number       @r{label like "Table 1:"}
+.listing-number     @r{label like "Listing 1:"}
 div.figure          @r{how to format an inlined image}
 pre.src             @r{formatted source code}
 pre.example         @r{normal example}

+ 9 - 5
lisp/ox-html.el

@@ -2010,7 +2010,8 @@ of listings as a string, or nil if it is empty."
 		      org-html-toplevel-hlevel)
 	      "<div id=\"text-list-of-listings\">\n<ul>\n"
 	      (let ((count 0)
-		    (initial-fmt (org-html--translate "Listing %d:" info)))
+		    (initial-fmt (format "<span class=\"listing-number\">%s</span>"
+					 (org-html--translate "Listing %d:" info))))
 		(mapconcat
 		 (lambda (entry)
 		   (let ((label (org-element-property :name entry))
@@ -2044,7 +2045,8 @@ of tables as a string, or nil if it is empty."
 		      org-html-toplevel-hlevel)
 	      "<div id=\"text-list-of-tables\">\n<ul>\n"
 	      (let ((count 0)
-		    (initial-fmt (org-html--translate "Table %d:" info)))
+		    (initial-fmt (format "<span class=\"table-number\">%s</span>"
+					 (org-html--translate "Table %d:" info))))
 		(mapconcat
 		 (lambda (entry)
 		   (let ((label (org-element-property :name entry))
@@ -2789,12 +2791,13 @@ the plist used as a communication channel."
 		    'org-html--has-caption-p))
 	       (if (not (org-string-nw-p raw)) raw
 		 (concat
+                  "<span class=\"figure-number\">"
 		  (format (org-html--translate "Figure %d:" info)
 			  (org-export-get-ordinal
 			   (org-element-map paragraph 'link
 			     'identity info t)
 			   info nil 'org-html-standalone-image-p))
-		  " " raw))))
+		  "</span> " raw))))
 	    (label (org-element-property :name paragraph)))
 	(org-html--wrap-image contents info caption label)))
      ;; Regular paragraph.
@@ -3203,8 +3206,9 @@ contextual information."
 			     "<caption align=\"above\">%s</caption>"
 			   "<caption align=\"bottom\">%s</caption>")
 			 (concat
-			  (format (org-html--translate "Table %d:" info) number)
-			  " " (org-export-data caption info))))
+			  "<span class=\"table-number\">"
+                          (format (org-html--translate "Table %d:" info) number)
+			  "</span> " (org-export-data caption info))))
 	       (funcall table-column-specs table info)
 	       contents)))))