[Top][All Lists]
[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/