emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Eric Schulte <eric.schulte@gmx.com>
To: nicholas.dokos@hp.com
Cc: Richard Stanton <stanton@haas.berkeley.edu>,
	"emacs-orgmode@gnu.org" <emacs-orgmode@gnu.org>
Subject: Re: Question on latex source block
Date: Sun, 09 Sep 2012 10:49:18 -0600	[thread overview]
Message-ID: <87bohfywdt.fsf@gmx.com> (raw)
In-Reply-To: <8243.1347174432@alphaville> (Nick Dokos's message of "Sun, 09 Sep 2012 03:07:12 -0400")

[-- Attachment #1: Type: text/plain, Size: 2382 bytes --]

>
> Nothing - it's a bug introduced by commit a9d3ce0bcd3492eb0cd2aa7b0d1f6ee93276114b:
>
> ,----
> | commit a9d3ce0bcd3492eb0cd2aa7b0d1f6ee93276114b
> | Author: Feng Shu <tumashu@gmail.com>
> | Date:   Fri Apr 20 19:21:43 2012 +0200
> | 
> |     Allow to use imagemagick for previewing LaTeX fragements.
> |     
> |     * org.el (org-latex-create-formula-image-program): New option
> |     to use either dvipng or imagemagick to convert and preview
> |     LaTeX fragments.
> |     (org-preview-latex-fragment, org-format-latex): Handle the new
> |     option.
> |     (org-create-formula-image-with-dvipng): Rename from
> |     `org-create-formula-image'.
> |     (org-create-formula-image-with-imagemagick): New defun to
> |     handle LaTeX preview with imagemagick.
> |     (org-latex-color, org-latex-color-format): New defuns to
> |     handle color conversions.
> |     
> |     * org-latex.el (org-latex-to-pdf-process, org-export-as-pdf):
> |     Allow to use imagemagick to convert LaTeX fragments.
> |     
> |     * org-html.el (org-export-html-preprocess): Ditto.
> |     
> |     * org-exp.el (org-export-with-LaTeX-fragments): Ditto.
> |     
> |     * org.texi (@LaTeX{} fragments): Document imagemagick as an
> |     alternative to dvipng.
> | 
> `----
>
> org-create-formula-image got renamed, but the reference in ob-latex.el
> to the original name was not changed.
>
> The quick-and-dirty "fix" is to change the reference in ob-latex.el to
> org-create-formula-image-dvipng or org-create-formula-image-imagemagick,
> depending on which method you happen to be using. But one would resort
> to that only in the direst emergency in order to get something working
> as quickly as possible.
>
> IMO, it would be better to have split the dvipng/imagemagick decision at
> a lower level in the code. That way, both org-format-latex and
> org-babel-execute:latex would use the common function. As it is,
> org-format-latex is a fairly "dirty" function and with the split, it got
> even dirtier.
>
> But there may be difficulties that my quick glance through the code has
> not uncovered: it needs a deeper look.
>

So, what would you recommend as a full fix in ob-latex.el?  The attached
commit selects an alternate function based on the value of the
`org-latex-create-formula-image-program' variable.  Does this seem like
an appropriate fix to the problem?

Thanks,


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-replace-org-create-formula-image-w-new-functions.patch --]
[-- Type: text/x-patch, Size: 1369 bytes --]

From 4ad24215f86f24d44439e013c16a4d78e1df68b6 Mon Sep 17 00:00:00 2001
From: Eric Schulte <eric.schulte@gmx.com>
Date: Sun, 9 Sep 2012 10:48:02 -0600
Subject: [PATCH] replace org-create-formula-image w/new functions

A previous commit deleted the definition of `org-create-formula-image'
without removing all calls to the function.  This commit fixes the
resultant bug in ob-latex by replacing the deleted function with a
conditional call to one of the two replacement functions.
---
 lisp/ob-latex.el | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/lisp/ob-latex.el b/lisp/ob-latex.el
index 43f673e..339584e 100644
--- a/lisp/ob-latex.el
+++ b/lisp/ob-latex.el
@@ -86,7 +86,12 @@ This function is called by `org-babel-execute-src-block'."
 		      org-export-latex-packages-alist)))
         (cond
          ((and (string-match "\\.png$" out-file) (not imagemagick))
-          (org-create-formula-image
+          (funcall
+	   (case org-latex-create-formula-image-program
+	     ('dvipng #'org-create-formula-image-with-dvipng)
+	     ('imagemagick #'org-create-formula-image-with-imagemagick)
+	     (t (error
+		 "invalid value of `org-latex-create-formula-image-program'")))
            body out-file org-format-latex-options in-buffer))
          ((or (string-match "\\.pdf$" out-file) imagemagick)
 	  (require 'org-latex)
-- 
1.7.12


[-- Attachment #3: Type: text/plain, Size: 46 bytes --]


-- 
Eric Schulte
http://cs.unm.edu/~eschulte

  parent reply	other threads:[~2012-09-09 16:49 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-09  5:15 Question on latex source block Richard Stanton
2012-09-09  7:07 ` Nick Dokos
2012-09-09  7:17   ` Nick Dokos
2012-09-09 16:49   ` Eric Schulte [this message]
2012-09-09 17:44     ` Nick Dokos
2012-09-09 19:39       ` Eric Schulte
2012-09-09 20:31         ` Nick Dokos
2012-09-13  6:00         ` Jambunathan K
2012-09-13  7:28           ` Nick Dokos
2012-09-13  7:58             ` Nick Dokos
2012-09-13 15:07           ` Eric Schulte
2012-09-13 16:04             ` Nick Dokos
2012-09-13 17:09               ` Eric Schulte
2012-09-13 19:12                 ` Abdó Roig-Maranges
2012-09-13 19:42                   ` Jambunathan K
2012-09-14  7:27                     ` Bastien
     [not found] <mailman.113.1347292828.2054.emacs-orgmode@gnu.org>
2012-09-10 16:49 ` Richard Stanton
2012-09-10 19:07   ` Nick Dokos
2012-09-10 20:43     ` Richard Stanton
2012-09-10 20:53       ` Nick Dokos
2012-09-11  6:52         ` Giovanni Ridolfi

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

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87bohfywdt.fsf@gmx.com \
    --to=eric.schulte@gmx.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=nicholas.dokos@hp.com \
    --cc=stanton@haas.berkeley.edu \
    /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 public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).