From: Rasmus <rasmus@gmx.us>
To: emacs-orgmode@gnu.org
Subject: Re: [release_8.3beta-1062-gce4e64] Error when exporting to ODT
Date: Thu, 23 Apr 2015 12:44:46 +0200 [thread overview]
Message-ID: <87egnb3yzl.fsf@gmx.us> (raw)
In-Reply-To: CAMfbzvDK4DVR1ct-TF17xwcSi2Fj3rA3ohjv9Uy9Pk0=8ADqUA@mail.gmail.com
[-- Attachment #1: Type: text/plain, Size: 1148 bytes --]
Hi Vicente,
Thanks for catching another bug.
Vicente Vera <vicentemvp@gmail.com> writes:
> Just tried to export an Org file to ODT but this error appeared (taken
> from the Messages buffer):
>
> ...
> LaTeX to MathML converter not available.
> Formatting LaTeX using verbatim
> OpenDocument export failed: Assertion failed: (funcall predicate element info)
>
> Tried with a MWE and with a minimal init.el (because of
> org-export-backends and the "odt" symbol) but the error persists.
Yeah, my guess is that the error is in org-odt-format-label. It used to
be that an inline formula would not have a label. But now it does. So
label is non-nil. The attached patch seems to fix it, but
org-odt-format-label is pretty fragile in its assumptions...
I also pushed a fix to org.el that may be related if you e.g. use
latexmlmath.
For the record, it can be reproduced with the following example from
emacs -q.
—Rasmus
* set up :noexport:
#+BEGIN_SRC emacs-lisp
(require 'ox-odt)
(setq org-latex-to-mathml-convert-command
"latexmlmath \"%i\" --presentationmathml=%o")
#+END_SRC
* test
see \(x\)
--
Don't panic!!!
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-ox-odt-Fix-bug-links-without-labels.patch --]
[-- Type: text/x-diff, Size: 1485 bytes --]
From aad7dd24864f3ce988a67061a391d85e649aa375 Mon Sep 17 00:00:00 2001
From: Rasmus <rasmus@gmx.us>
Date: Thu, 23 Apr 2015 12:35:43 +0200
Subject: [PATCH 1/2] ox-odt: Fix bug links without labels.
* ox-odt.el (org-odt-format-label): Determine label more carefully.
Reported-by: Vicente Vera <vicentemvp@gmail.com>
<http://permalink.gmane.org/gmane.emacs.orgmode/97090>
---
lisp/ox-odt.el | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/lisp/ox-odt.el b/lisp/ox-odt.el
index a8544a4..faf0b1c 100644
--- a/lisp/ox-odt.el
+++ b/lisp/ox-odt.el
@@ -2152,13 +2152,15 @@ Return value is a string if OP is set to `reference' or a cons
cell like CAPTION . SHORT-CAPTION) where CAPTION and
SHORT-CAPTION are strings."
(assert (memq (org-element-type element) '(link table src-block paragraph)))
- (let* ((caption-from
+ (let* ((element-or-parent
(case (org-element-type element)
(link (org-export-get-parent-element element))
(t element)))
;; Get label and caption.
- (label (org-export-get-reference element info))
- (caption (let ((c (org-export-get-caption caption-from)))
+ (label (and (or (org-element-property :name element)
+ (org-element-property :name element-or-parent))
+ (org-export-get-reference element-or-parent info)))
+ (caption (let ((c (org-export-get-caption element-or-parent)))
(and c (org-export-data c info))))
;; FIXME: We don't use short-caption for now
(short-caption nil))
--
2.3.6
next prev parent reply other threads:[~2015-04-23 10:45 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-23 1:49 [release_8.3beta-1062-gce4e64] Error when exporting to ODT Vicente Vera
2015-04-23 10:44 ` Rasmus [this message]
-- strict thread matches above, loose matches on Subject: below --
2015-04-23 15:29 Vicente Vera
2015-04-24 7:47 ` Rasmus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87egnb3yzl.fsf@gmx.us \
--to=rasmus@gmx.us \
--cc=emacs-orgmode@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.