forked from mirrors/org-mode
org-e-odt: Handle caption/label for src blocks.
Add Listing-related entries to OrgOdtContentTemplate.xml, OrgOdtStyles.xml.
This commit is contained in:
parent
5841dbd5ec
commit
bb291df296
|
@ -1149,7 +1149,7 @@ ATTR is a string of other attributes of the a element."
|
||||||
;; grok language setting
|
;; grok language setting
|
||||||
(en-strings (assoc-default "en" org-e-odt-category-strings))
|
(en-strings (assoc-default "en" org-e-odt-category-strings))
|
||||||
(lang (plist-get info :language)) ; FIXME
|
(lang (plist-get info :language)) ; FIXME
|
||||||
(lang-strings (assoc-default lang org-export-odt-category-strings))
|
(lang-strings (assoc-default lang org-e-odt-category-strings))
|
||||||
;; retrieve localized category sting
|
;; retrieve localized category sting
|
||||||
(pos (- (length org-e-odt-category-map-alist)
|
(pos (- (length org-e-odt-category-map-alist)
|
||||||
(length (memq label-props org-e-odt-category-map-alist))))
|
(length (memq label-props org-e-odt-category-map-alist))))
|
||||||
|
@ -1799,6 +1799,7 @@ standard Emacs.")
|
||||||
(src . "OrgSrcBlock")
|
(src . "OrgSrcBlock")
|
||||||
(illustration . "Illustration")
|
(illustration . "Illustration")
|
||||||
(table . "Table")
|
(table . "Table")
|
||||||
|
(listing . "Listing")
|
||||||
(definition-term . "Text_20_body_20_bold")
|
(definition-term . "Text_20_body_20_bold")
|
||||||
(horizontal-line . "Horizontal_20_Line")))
|
(horizontal-line . "Horizontal_20_Line")))
|
||||||
(character . ((bold . "Bold")
|
(character . ((bold . "Bold")
|
||||||
|
@ -1974,7 +1975,7 @@ specifiers - %e and %n. %e is replaced with the CATEGORY-NAME.
|
||||||
`org-e-odt-format-label-reference'.")
|
`org-e-odt-format-label-reference'.")
|
||||||
|
|
||||||
(defcustom org-e-odt-category-strings
|
(defcustom org-e-odt-category-strings
|
||||||
'(("en" "Table" "Figure" "Equation" "Equation"))
|
'(("en" "Table" "Figure" "Equation" "Equation" "Listing"))
|
||||||
"Specify category strings for various captionable entities.
|
"Specify category strings for various captionable entities.
|
||||||
Captionable entity can be one of a Table, an Embedded Image, a
|
Captionable entity can be one of a Table, an Embedded Image, a
|
||||||
LaTeX fragment (generated with dvipng) or a Math Formula.
|
LaTeX fragment (generated with dvipng) or a Math Formula.
|
||||||
|
@ -2001,6 +2002,9 @@ below.
|
||||||
(const :tag "Use Default" nil)
|
(const :tag "Use Default" nil)
|
||||||
(string :tag "Category string"))
|
(string :tag "Category string"))
|
||||||
(choice :tag "Dvipng Image"
|
(choice :tag "Dvipng Image"
|
||||||
|
(const :tag "Use Default" nil)
|
||||||
|
(string :tag "Category string"))
|
||||||
|
(choice :tag "Listing"
|
||||||
(const :tag "Use Default" nil)
|
(const :tag "Use Default" nil)
|
||||||
(string :tag "Category string")))))
|
(string :tag "Category string")))))
|
||||||
|
|
||||||
|
@ -2009,6 +2013,7 @@ below.
|
||||||
("__Figure__" "Illustration" "value")
|
("__Figure__" "Illustration" "value")
|
||||||
("__MathFormula__" "Text" "math-formula")
|
("__MathFormula__" "Text" "math-formula")
|
||||||
("__DvipngImage__" "Equation" "value")
|
("__DvipngImage__" "Equation" "value")
|
||||||
|
("__Listing__" "Listing" "value")
|
||||||
;; ("__Table__" "Table" "category-and-value")
|
;; ("__Table__" "Table" "category-and-value")
|
||||||
;; ("__Figure__" "Figure" "category-and-value")
|
;; ("__Figure__" "Figure" "category-and-value")
|
||||||
;; ("__DvipngImage__" "Equation" "category-and-value")
|
;; ("__DvipngImage__" "Equation" "category-and-value")
|
||||||
|
@ -3866,6 +3871,8 @@ INFO is a plist holding contextual information. See
|
||||||
; FIXME: Check if it is
|
; FIXME: Check if it is
|
||||||
; acutally latex eqn.
|
; acutally latex eqn.
|
||||||
"__MathFormula__")
|
"__MathFormula__")
|
||||||
|
((eq (org-element-type destination) 'src-block)
|
||||||
|
"__Listing__")
|
||||||
(t (error "Handle enumeration of %S" destination)))))
|
(t (error "Handle enumeration of %S" destination)))))
|
||||||
(org-e-odt-format-label-reference label default-category number)))))))
|
(org-e-odt-format-label-reference label default-category number)))))))
|
||||||
;; Coderef: replace link with the reference name or the
|
;; Coderef: replace link with the reference name or the
|
||||||
|
@ -4065,13 +4072,20 @@ CONTENTS holds the contents of the item. INFO is a plist holding
|
||||||
contextual information."
|
contextual information."
|
||||||
(let* ((lang (org-element-property :language src-block))
|
(let* ((lang (org-element-property :language src-block))
|
||||||
(caption (org-element-property :caption src-block))
|
(caption (org-element-property :caption src-block))
|
||||||
|
(short-caption (and (cdr caption) (org-export-secondary-string
|
||||||
|
(cdr caption) 'e-odt info)))
|
||||||
|
(caption (and (car caption) (org-export-secondary-string
|
||||||
|
(car caption) 'e-odt info)))
|
||||||
(label (org-element-property :name src-block)))
|
(label (org-element-property :name src-block)))
|
||||||
;; FIXME: Handle caption
|
;; FIXME: Handle caption
|
||||||
;; caption-str (when caption)
|
;; caption-str (when caption)
|
||||||
;; (main (org-export-secondary-string (car caption) 'e-odt info))
|
;; (main (org-export-secondary-string (car caption) 'e-odt info))
|
||||||
;; (secondary (org-export-secondary-string (cdr caption) 'e-odt info))
|
;; (secondary (org-export-secondary-string (cdr caption) 'e-odt info))
|
||||||
;; (caption-str (org-e-odt--caption/label-string caption label info))
|
;; (caption-str (org-e-odt--caption/label-string caption label info))
|
||||||
(org-e-odt-format-code src-block info)))
|
(concat
|
||||||
|
(org-e-odt-format-stylized-paragraph
|
||||||
|
'listing (org-e-odt-format-entity-caption label caption "__Listing__"))
|
||||||
|
(org-e-odt-format-code src-block info))))
|
||||||
|
|
||||||
|
|
||||||
;;;; Statistics Cookie
|
;;;; Statistics Cookie
|
||||||
|
|
|
@ -256,6 +256,7 @@
|
||||||
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
|
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
|
||||||
<text:sequence-decl text:display-outline-level="0" text:name="Equation"/>
|
<text:sequence-decl text:display-outline-level="0" text:name="Equation"/>
|
||||||
<text:sequence-decl text:display-outline-level="0" text:name="Figure"/>
|
<text:sequence-decl text:display-outline-level="0" text:name="Figure"/>
|
||||||
|
<text:sequence-decl text:display-outline-level="0" text:name="Listing"/>
|
||||||
</text:sequence-decls>
|
</text:sequence-decls>
|
||||||
</office:text>
|
</office:text>
|
||||||
</office:body>
|
</office:body>
|
||||||
|
|
|
@ -319,6 +319,11 @@
|
||||||
<style:style style:name="Table" style:family="paragraph" style:parent-style-name="Caption" style:class="extra">
|
<style:style style:name="Table" style:family="paragraph" style:parent-style-name="Caption" style:class="extra">
|
||||||
<style:paragraph-properties fo:text-align="center" style:justify-single-word="false"/>
|
<style:paragraph-properties fo:text-align="center" style:justify-single-word="false"/>
|
||||||
</style:style>
|
</style:style>
|
||||||
|
<style:style style:name="Listing" style:family="paragraph" style:parent-style-name="Caption" style:class="extra">
|
||||||
|
<style:paragraph-properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" fo:keep-with-next="always">
|
||||||
|
<style:tab-stops/>
|
||||||
|
</style:paragraph-properties>
|
||||||
|
</style:style>
|
||||||
<style:style style:name="Horizontal_20_Line" style:display-name="Horizontal Line" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body" style:class="html">
|
<style:style style:name="Horizontal_20_Line" style:display-name="Horizontal Line" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body" style:class="html">
|
||||||
<style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0.499cm" style:border-line-width-bottom="0.002cm 0.035cm 0.002cm" fo:padding="0cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.039cm double #808080" text:number-lines="false" text:line-number="0" style:join-border="false"/>
|
<style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0.499cm" style:border-line-width-bottom="0.002cm 0.035cm 0.002cm" fo:padding="0cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.039cm double #808080" text:number-lines="false" text:line-number="0" style:join-border="false"/>
|
||||||
<style:text-properties fo:font-size="6pt" style:font-size-asian="6pt" style:font-size-complex="6pt"/>
|
<style:text-properties fo:font-size="6pt" style:font-size-asian="6pt" style:font-size-complex="6pt"/>
|
||||||
|
|
Loading…
Reference in a new issue