emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Bug: ob-ditaa fails in generating pdf correctly


From: Eric Schulte
Subject: Re: [O] Bug: ob-ditaa fails in generating pdf correctly
Date: Fri, 06 Jun 2014 12:22:48 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux)

Anders Johansson <address@hidden> writes:

> Hi,
> Example input:
> #+header: :eps t
> #+header: :file hello.pdf
> #+BEGIN_SRC ditaa
> +--------------+
> |              |
> |    Hello     |
> |              |
> +--------------+
> #+END_SRC
>
>
> When using the above code (which I guessed should be the correct way) 
> with ob-ditaa to produce a pdf (through  DitaaEps -> epstopdf) it fails 
> in producing the pdf correctly and instead writes an eps to "hello.pdf". 
> This isn't surprising, looking at the code where "cmd" should be 
> constructed to produce the eps as an intermediary file in /tmp (which is 
> expected in the construction of pdf-cmd) but doesn't.
>
> An ugly patch to fix it is attached

Applied.

> (this is ugly because it repeats the line:
> (org-babel-process-file-name (concat in-file ".eps")) )
>

I un-duplicated this line.

Thanks,

>
> Cheers,
> Anders Johansson
>
> --- "/home/aj/H\303\244mtningar/ob-ditaa.el"  2014-05-22 17:15:35.489071991 
> +0200
> +++ ob-ditaa.el       2014-05-22 17:08:46.617089186 +0200
> @@ -90,6 +90,12 @@
>        (java (cdr (assoc :java params)))
>        (in-file (org-babel-temp-file "ditaa-"))
>        (eps (cdr (assoc :eps params)))
> +      (pdf-cmd (when (and (or (string= (file-name-extension out-file) "pdf")
> +                              (cdr (assoc :pdf params))))
> +                 (concat
> +                  "epstopdf"
> +                  " " (org-babel-process-file-name (concat in-file ".eps"))
> +                  " -o=" (org-babel-process-file-name out-file))))
>        (cmd (concat org-babel-ditaa-java-cmd
>                     " " java " " org-ditaa-jar-option " "
>                     (shell-quote-argument
> @@ -97,13 +103,10 @@
>                       (if eps org-ditaa-eps-jar-path org-ditaa-jar-path)))
>                     " " cmdline
>                     " " (org-babel-process-file-name in-file)
> -                   " " (org-babel-process-file-name out-file)))
> -      (pdf-cmd (when (and (or (string= (file-name-extension out-file) "pdf")
> -                              (cdr (assoc :pdf params))))
> -                 (concat
> -                  "epstopdf"
> -                  " " (org-babel-process-file-name (concat in-file ".eps"))
> -                  " -o=" (org-babel-process-file-name out-file)))))
> +                   " " (if pdf-cmd
> +                                       (org-babel-process-file-name (concat 
> in-file ".eps"))
> +                                       (org-babel-process-file-name 
> out-file))))
> +      )
>      (unless (file-exists-p org-ditaa-jar-path)
>        (error "Could not find ditaa.jar at %s" org-ditaa-jar-path))
>      (with-temp-file in-file (insert body))

-- 
Eric Schulte
https://cs.unm.edu/~eschulte
PGP: 0x614CA05D (see https://u.fsf.org/yw)



reply via email to

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