emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Bug: ditaa breaks export [7.8.03]


From: Eric Schulte
Subject: Re: [O] Bug: ditaa breaks export [7.8.03]
Date: Wed, 29 Feb 2012 09:30:25 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.93 (gnu/linux)

Thomas Holst <address@hidden> writes:

> Hello orgers,
>
> ยท Ian Dalton <address@hidden> wrote:
>
>> When I run `emacs -q' and evaluate `(setq org-babel-load-languages
>> '((ditaa . t)))', then try to export an org document to PDF, after
>> answering yes to "Evaluate this ditaa code block", I get:
>>
>> Wrong type argument: stringp, nil
>>
>> Emacs  : GNU Emacs 24.0.93.1 (i486-pc-linux-gnu, GTK+ Version 2.20.1)
>>  of 2012-02-22 on cw-bkp0, modified by Debian
>> Package: Org-mode version 7.8.03
>
> I can confirm this.
>
> A little investigation shows that there are two definitions for
> `org-ditaa-jar-path':
>

Thanks for running down the cause of this problem and suggesting a fix.
I've just applied your suggestion.  The redundant definition is now
removed from ob-ditaa and ob-ditaa requires org-exp-blocks.

Cheers,

>
> - in =lisp/ob-ditaa.el=:
>   #+begin_src emacs-lisp
>     (defcustom org-ditaa-jar-path nil
>       "Path for the ditaa jar file."
>       :group 'org-babel
>       :type 'string)
>   #+end_src
>
>   This results in nil and so the error occurs.
>   
> - in =lisp/org-exp-blocks.el=
>   #+begin_src emacs-lisp
>     (defvar org-ditaa-jar-path (expand-file-name
>                           "ditaa.jar"
>                           (file-name-as-directory
>                            (expand-file-name
>                             "scripts"
>                             (file-name-as-directory
>                              (expand-file-name
>                               "../contrib"
>                               (file-name-directory (or load-file-name 
> buffer-file-name)))))))
>       "Path to the ditaa jar executable.")
>   #+end_src
>
>   On my machine this results in the correct path.
>
> So the value of `org-ditaa-jar-path' depends on the loading sequence of
> el-files.
>
> A quick solution for OP would be to the set the path
>
> #+begin_src emacs-lisp
>   (setq org-ditaa-jar-path "<path-to-ditaa-jar>")
> #+end_src
>
> I am not too deep into dependencies of org files, but ob-ditaa.el could
> require org-exp-blocks and skip the definition of `org-ditaa-jar-path'.
> Or vice versa.
>
> HTH

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



reply via email to

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