emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] Open Document Exporter


From: Georg Lehner
Subject: [O] Open Document Exporter
Date: Mon, 24 Jun 2013 23:29:15 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:10.0.12) Gecko/20130116 Icedove/10.0.12

Hello List!

I am doing a lot of technical documentation with org-mode - until now primarily with
the LaTeX (pdflatex) converter (Version 8.0.3 and git head respectively).

Now I have started to use the odt-exporter since my co-workers need something ... compatible.

It is working very well for me, however I would like to fine-tune several things:

1. content.xml changed on disk
==================

At the end of the export process I get the message:

content.xml changed on disk; really edit the buffer? (y, n, r or C-h)
Please type y, n or r; or ? for help

After typing 'y', I have to reconfirm with 'yes' and then with 'y' again to get a valid export.

Any tips how to fix or avoid this?


2. Blank lines after headlines
=================

After each headline I get a blank line. Can these be suppressed? I'd like to control the separation between
headline and text by styles and not by extra lines.


3. Internal links exporting as numbers
======================

In LaTeX export I have the following behaviour:

[[*Headline][Headline]] converts to a Hyperlink to the respective headline with description text 'Headline'.
[[*Headline]] converts to the respective headline number

In ODT export both convert to the headline number. I believe to have this tracked down to the 'org-odt-link' function in ox-odt.el where the first link form seems to fall through to 'org-odt-link--infer-description'.

If the link description differs from the fuzzy link, eg. [[*Headline][ Headline]] then the export happens inside the 'org-odt-link' function and works well - of course LaTeX export then shows the extra space.

The code in ox-odt.el seems to be based loosely on ox-latex.el's 'org-latex-link' function, however seems more contrincated.

My Lisp skills are far from being able to spot the right place to fix this behavior. Any help is highly appreciated.


4. Description Lists
===========

These are exported "HTML"-like similar to:

*definition 1*
text 1
* definition 2*
text 2

Where each definition element is an unnumbered list item without bullet and each text element is an
unnumbered sublist item also without bullet.

Of course I would like to have the definition lists formatted LaTeX-like:

*definition 1*<TAB>and text 1
with hanging indent
*definition 2*<TAB>text 2

And have tried to mangle around in the 'org-odt--translate-description-lists' function, however I failed bitterly
to get out something useful.

I understand that I have to boldface the description (don't know how to do this on the parsed tree) and concatenate somehow the definition text - recursively, because it could have nested text-material.

Any hints where to go?


5. Smart-Quotes cannot be disabled
=====================

The following patch disables smart-quotes when required so by a ':nil option. The (when ... clause was missing from the
original code.

--- SparkleShare/jorge/emacs/lib/org-8.0.3/lisp/ox-odt.el 2013-06-24 22:13:27.000000000 +0200
+++ progs/org-mode/lisp/ox-odt.el 2013-06-22 21:53:27.000000000 +0200
@@ -2967,8 +2967,7 @@
(setq output (org-odt--encode-plain-text output t))
;; Handle smart quotes. Be sure to provide original string since
;; OUTPUT may have been modified.
- (when (plist-get info :with-smart-quotes)
- (setq output (org-export-activate-smart-quotes output :utf-8 info text)))
+ (setq output (org-export-activate-smart-quotes output :utf-8 info text))
;; Convert special strings.
(when (plist-get info :with-special-strings)
(mapc



6. Table caption does not translate
====================

I have expanded the 'org-export-dictionary' constant with german (and spanisch) translations of all keywords. However my table captions still show the englisch "Table" prefix. With Figures (alias 'Illustrations' in ODT) things
work fine.

- - -

Best Regards,

Georg Lehner


Please find below the diff to current (yesterdays) ox.el with the translations.


diff -u SparkleShare/jorge/emacs/lib/org-8.0.3/lisp/ox.el progs/org-mode/lisp/ox.el --- SparkleShare/jorge/emacs/lib/org-8.0.3/lisp/ox.el 2013-06-22 21:55:54.000000000 +0200
+++ progs/org-mode/lisp/ox.el 2013-06-22 21:40:52.000000000 +0200
@@ -5260,19 +5260,15 @@
("zh-CN" :html "&#26085;&#26399;" :utf-8 "日期")
("zh-TW" :html "&#26085;&#26399;" :utf-8 "日期"))
("Equation"
- ("fr" :ascii "Equation" :default "Équation")
- ("de" :default "Gleichung")
- ("es" :html "Ecuaci&oacute;n" :default "Ecuación"))
- ("Figure"
- ("de" :default "Abbildung")
- ("es" :default "Figura"))
+ ("fr" :ascii "Equation" :default "Équation"))
+ ("Figure")
("Footnotes"
("ca" :html "Peus de p&agrave;gina")
("cs" :default "Pozn\xe1mky pod carou")
("da" :default "Fodnoter")
- ("de" :html "Fu&szlig;noten" :default "Fußnoten")
+ ("de" :html "Fu&szlig;noten")
("eo" :default "Piednotoj")
- ("es" :html "Nota al pie de p&aacute;gina" :default "Nota al pie de página")
+ ("es" :html "Pies de p&aacute;gina")
("fi" :default "Alaviitteet")
("fr" :default "Notes de bas de page")
("hu" :html "L&aacute;bjegyzet")
@@ -5291,41 +5287,26 @@
("zh-CN" :html "&#33050;&#27880;" :utf-8 "脚注")
("zh-TW" :html "&#33139;&#35387;" :utf-8 "腳註"))
("List of Listings"
- ("fr" :default "Liste des programmes")
- ("de" :default "Programmauflistungsverzeichnis")
- ("es" :default "Indice de Listados de programas"))
+ ("fr" :default "Liste des programmes"))
("List of Tables"
- ("fr" :default "Liste des tableaux")
- ("de" :default "Tabellenverzeichnis")
- ("es" :default "Indice de tablas"))
+ ("fr" :default "Liste des tableaux"))
("Listing %d:"
("fr"
:ascii "Programme %d :" :default "Programme nº %d :"
- :latin1 "Programme %d :")
- ("de" :default "Programmlisting %d")
- ("es" :default "Listado de programa %d"))
+ :latin1 "Programme %d :"))
("Listing %d: %s"
("fr"
:ascii "Programme %d : %s" :default "Programme nº %d : %s"
- :latin1 "Programme %d : %s")
- ("de" :default "Programlisting %d: %s")
- ("es" :default "Listado de programa %d: %s")
- )
+ :latin1 "Programme %d : %s"))
("See section %s"
- ("fr" :default "cf. section %s")
- ("de" :default "siehe Abschnitt %s")
- ("es" :default "vea seccion %s"))
+ ("fr" :default "cf. section %s"))
("Table %d:"
("fr"
- :ascii "Tableau %d :" :default "Tableau nº %d :" :latin1 "Tableau %d :")
- ("de" :default "Tabelle %d")
- ("es" :default "Tabla %d"))
+ :ascii "Tableau %d :" :default "Tableau nº %d :" :latin1 "Tableau %d :"))
("Table %d: %s"
("fr"
:ascii "Tableau %d : %s" :default "Tableau nº %d : %s"
- :latin1 "Tableau %d : %s")
- ("de" :default "Tabelle %d: %s")
- ("es" :default "Tabla %d: %s"))
+ :latin1 "Tableau %d : %s"))
("Table of Contents"
("ca" :html "&Iacute;ndex")
("cs" :default "Obsah")
@@ -5351,9 +5332,7 @@
("zh-CN" :html "&#30446;&#24405;" :utf-8 "目录")
("zh-TW" :html "&#30446;&#37636;" :utf-8 "目錄"))
("Unknown reference"
- ("fr" :ascii "Destination inconnue" :default "Référence inconnue")
- ("de" :default "Unbekannter Verweis")
- ("es" :default "referencia desconocida")))
+ ("fr" :ascii "Destination inconnue" :default "Référence inconnue")))
"Dictionary for export engine.

Alist whose CAR is the string to translate and CDR is an alist







reply via email to

[Prev in Thread] Current Thread [Next in Thread]