emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [Orgmode] Unable to export babel results


From: Nick Dokos
Subject: Re: [Orgmode] Unable to export babel results
Date: Tue, 19 Oct 2010 17:36:48 -0400

[Apologies: I replied to Suvayu but I forgot to cc: the list - again...]

Suvayu Ali <address@hidden> wrote:


> After this `org-version' returns "Org-mode version 7.01trans
> (release_7.01h.753.g5cdf)". However on opening the test org file and
> exporting to pdf I get a backtrace (attached). If I quit the backtrace
> and try to export again, I get a well formatted pdf as we would
> expect.
> 
> If I check the "*gnuplot*" buffer after the backtrace, I see none of
> the src block commands have been run. Where as after quiting the
> backtrace and re-exporting the file shows all the src block commands
> in the "*gnuplot*" buffer.
> 
> I have noticed this behaviour before. When I try to evaluate the src
> block after I have started emacs, it fails the first time giving me a
> "*gnuplot*" buffer with no commands. On repeated evaluations, it works
> as expected.
> 
> Do you think this is because of an incorrectly installed
> `gnuplot-mode'? Or could this be a problem with babel?
> 

Well, the backtrace is complaining about make-local-hook being an
void function, and C-h f make-local-hook says:

,----
| make-local-hook is a compiled Lisp function in `subr.el'.
| 
| (make-local-hook HOOK)
| 
| This function is obsolete since 21.1;
| not necessary any more.
`----

so either you don't load subr.el (which sounds unlikely but who
knows?) or the function has been deleted - maybe because it's been
obsolete for such a long time: I just checked a recent build of
emacs and it seems to be the latter.

The backtrace also shows that gnuplot-make-gnuplot-buffer is the
caller: 

,----
| (defun gnuplot-make-gnuplot-buffer ()
|   "Switch to the gnuplot program buffer or create one if none exists."
|   (or (and gnuplot-process (get-process gnuplot-process)
|          gnuplot-buffer (get-buffer gnuplot-buffer))
|       (progn
|       (message "Starting gnuplot plotting program...")
|       (setq gnuplot-buffer (make-comint gnuplot-process-name gnuplot-program)
|             gnuplot-process (get-process gnuplot-process-name))
|       (process-kill-without-query gnuplot-process nil)
|       (save-excursion
|         (set-buffer gnuplot-buffer)
|         (make-local-hook 'kill-buffer-hook)                 
;;<<<<<<<<<<<<<<<<<<<
|         (add-hook 'kill-buffer-hook 'gnuplot-close-down nil t)
|         (gnuplot-comint-start-function)
|           (make-local-variable 'comint-output-filter-functions)
|           (setq comint-output-filter-functions
|                 (append comint-output-filter-functions
|                         '(comint-postoutput-scroll-to-bottom
|                           gnuplot-protect-prompt-fn)))
|         (message "Starting gnuplot plotting program...Done")))))
`----

but it calls add-hook with the LOCAL arg set to t, which does what
make-local-hook used to do, so it is safe to just delete the marked
line above. And don't forget to submit a bug report to the gnuplot.el
people :-)

Nick

PS. OK, time for a second rant:

If you *have* to use attachments, *please* take the time to make the
MIME type correct. In particular, application/octet-stream is a last
ditch default for machines: it's a "I don't know what to do - I'm
throwing up my hands" response - perhaps OK for a machine, but never for
a human.

In particular, a backtrace attachment should be "text/plain" - as should
be the case for an org file too: your earlier attachment of an org file
was of type "application/vnd.lotus-organizer".

Remember the motto: It's "Org-mode: your life in plain text",
not "Org-mode: your life in lotus-organizer format" :-)



reply via email to

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