emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [Orgmode] [BABEL] Bugin :session? Export html - works --- export pdf


From: Carsten Dominik
Subject: Re: [Orgmode] [BABEL] Bugin :session? Export html - works --- export pdf not
Date: Fri, 9 Jul 2010 10:00:22 +0200


On Jul 9, 2010, at 9:21 AM, Rainer M Krug wrote:



On Thu, Jul 8, 2010 at 8:40 PM, Eric Schulte <address@hidden> wrote:
Hi Rainer,

Hi Eric


I am aware of this problem, and although I don't know any a good
solution, I do have a good workaround (example attached [1]).

That workaround looks really good - thanks. Much better then putting :session at the beginning of each source block.


The problem is that org-latex removes all of the #+ lines from the
beginning of any Org-mode file which has headlines as part of the export
process.  This means that by the time it's Babel's turn to run code
blocks, the #+BABEL line has been removed, and the session is not set.
If there are no headlines, then this problem does not arise.

OK - that explains.


I sent in a patch last week, [2] but it's application would have broken other features of the latex export, I've yet to work out a good solution
to this.

There is a decent work-around.  Whenever there are no headlines, then
the #+BABEL: line works fine on LaTeX export, when there are headlines,
then header arguments can be placed as properties in the headlines to
the same effect.

Would it be possible to issue a warning if a #+BABEL line is stripped by LaTeX? If I think back, this stripping cost me quite some time to figure out why things are working differently when exporting to LaTeX then html.

No, we really need to fix this.

Can someone please try if the following patch does fix this issue?

diff --git a/lisp/org-latex.el b/lisp/org-latex.el
index 70298fd..3cfa36c 100644
--- a/lisp/org-latex.el
+++ b/lisp/org-latex.el
@@ -1221,9 +1221,16 @@ If END is non-nil, it is the end of the region."
            :timestamps (plist-get opt-plist :timestamps)
            :footnotes (plist-get opt-plist :footnotes)))
        (org-unmodified
-        (let ((inhibit-read-only t))
-          (add-text-properties pt (max pt (1- end))
-                               '(:org-license-to-kill t))))))))
+        (let ((inhibit-read-only t)
+              (limit (max pt (1- end))))
+          (add-text-properties pt limit
+                               '(:org-license-to-kill t))
+          (save-excursion
+            (goto-char pt)
+            (while (re-search-forward "^[ \t]*#+.*\n?" limit t)
+              (remove-text-properties (match-beginning 0) (match-end 0)
+                               '(:org-license-to-kill t))))))))))
+       

 (defvar org-export-latex-header-defs nil
   "The header definitions that might be used in the LaTeX body.")


Thanks

- Carsten






Cheers -- Eric

Cheers,

Rainer


Rainer M Krug <address@hidden> writes:

> Hi
>
> I have the attached org file.
>
> It seems that when exporting to a pdf, the :session argument is ignored, as
> I get a
> Org-Babel Error Output buffer with:
> Error: object 'x' not found
> Execution halted
>
> and an Org-Babel Error buffer with the same text, and the resulting pdf does
> only show the code..
>
> HTML export, works as expected.
>
> If I put :session *R_test* behind #+begin_src (R2.org) it works.
>
> Cheers,
>
> Rainer

Footnotes:
[1]


[2]  http://thread.gmane.org/gmane.emacs.orgmode/27081





--
NEW GERMAN FAX NUMBER!!!

Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)

Centre of Excellence for Invasion Biology
Natural Sciences Building
Office Suite 2039
Stellenbosch University
Main Campus, Merriman Avenue
Stellenbosch
South Africa

Cell:           +27 - (0)83 9479 042
Fax:            +27 - (0)86 516 2782
Fax:            +49 - (0)321 2125 2244
email:          address@hidden

Skype:          RMkrug
Google:         address@hidden

_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

- Carsten






reply via email to

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