emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [BABEL] Bugin :session? Export html - works --- export pdf not
@ 2010-07-08 10:42 Rainer M Krug
  2010-07-08 18:40 ` Eric Schulte
  0 siblings, 1 reply; 5+ messages in thread
From: Rainer M Krug @ 2010-07-08 10:42 UTC (permalink / raw)
  To: emacs-orgmode


[-- Attachment #1.1: Type: text/plain, Size: 921 bytes --]

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

-- 
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:          Rainer@krugs.de

Skype:          RMkrug
Google:         R.M.Krug@gmail.com

[-- Attachment #1.2: Type: text/html, Size: 1310 bytes --]

[-- Attachment #2: R.org --]
[-- Type: application/octet-stream, Size: 644 bytes --]

#+TITLE:     R.org
#+AUTHOR:    Rainer M Krug
#+EMAIL:     rkrug@ecolmod
#+DATE:      2010-07-08 Thu
#+DESCRIPTION: 
#+KEYWORDS: 
#+LANGUAGE:  en
#+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
#+OPTIONS:   TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc
#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
#+EXPORT_SELECT_TAGS: export
#+EXPORT_EXCLUDE_TAGS: noexport
#+LINK_UP:   
#+LINK_HOME: 
#+XSLT: 
#+BABEL: :session *R_test* 

* test 1
#+begin_src R  :exports both
  x <- log(1:10)
#+end_src
#+begin_src R  :exports both :results output
  x + x
#+end_src

[-- Attachment #3: R2.org --]
[-- Type: application/octet-stream, Size: 682 bytes --]

#+TITLE:     R.org
#+AUTHOR:    Rainer M Krug
#+EMAIL:     rkrug@ecolmod
#+DATE:      2010-07-08 Thu
#+DESCRIPTION: 
#+KEYWORDS: 
#+LANGUAGE:  en
#+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
#+OPTIONS:   TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc
#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
#+EXPORT_SELECT_TAGS: export
#+EXPORT_EXCLUDE_TAGS: noexport
#+LINK_UP:   
#+LINK_HOME: 
#+XSLT: 
#+BABEL: :session *R_test* 

* test 1
#+begin_src R  :exports both :session *R_test* 
  x <- log(1:10)
#+end_src
#+begin_src R  :exports both :results output :session *R_test* 
  x + x
#+end_src

[-- Attachment #4: Type: text/plain, Size: 201 bytes --]

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [BABEL] Bugin :session? Export html - works --- export pdf not
  2010-07-08 10:42 [BABEL] Bugin :session? Export html - works --- export pdf not Rainer M Krug
@ 2010-07-08 18:40 ` Eric Schulte
  2010-07-09  7:21   ` Rainer M Krug
  0 siblings, 1 reply; 5+ messages in thread
From: Eric Schulte @ 2010-07-08 18:40 UTC (permalink / raw)
  To: Rainer M Krug; +Cc: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 1392 bytes --]

Hi Rainer,

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]).

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.

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.

Cheers -- Eric

Rainer M Krug <r.m.krug@gmail.com> 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]  

[-- Attachment #2: R.3.org --]
[-- Type: application/octet-stream, Size: 661 bytes --]

#+TITLE:     R.org
#+AUTHOR:    Rainer M Krug
#+EMAIL:     rkrug@ecolmod
#+DATE:      2010-07-08 Thu
#+DESCRIPTION: 
#+KEYWORDS: 
#+LANGUAGE:  en
#+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
#+OPTIONS:   TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc
#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
#+EXPORT_SELECT_TAGS: export
#+EXPORT_EXCLUDE_TAGS: noexport
#+LINK_UP:   
#+LINK_HOME: 
#+XSLT:

* test 1
  :PROPERTIES:
  :session:  *R_test* 
  :END:
#+begin_src R  :exports both
  x <- log(1:10)
#+end_src
#+begin_src R  :exports both :results output
  x + x
#+end_src

[-- Attachment #3: Type: text/plain, Size: 58 bytes --]



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


[-- Attachment #4: Type: text/plain, Size: 201 bytes --]

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [BABEL] Bugin :session? Export html - works --- export pdf not
  2010-07-08 18:40 ` Eric Schulte
@ 2010-07-09  7:21   ` Rainer M Krug
  2010-07-09  8:00     ` Carsten Dominik
  0 siblings, 1 reply; 5+ messages in thread
From: Rainer M Krug @ 2010-07-09  7:21 UTC (permalink / raw)
  To: Eric Schulte; +Cc: emacs-orgmode


[-- Attachment #1.1: Type: text/plain, Size: 2539 bytes --]

On Thu, Jul 8, 2010 at 8:40 PM, Eric Schulte <schulte.eric@gmail.com> 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.



>
> Cheers -- Eric
>

Cheers,

Rainer


>
> Rainer M Krug <r.m.krug@gmail.com> 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:          Rainer@krugs.de

Skype:          RMkrug
Google:         R.M.Krug@gmail.com

[-- Attachment #1.2: Type: text/html, Size: 4179 bytes --]

[-- Attachment #2: Type: text/plain, Size: 201 bytes --]

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [BABEL] Bugin :session? Export html - works --- export pdf not
  2010-07-09  7:21   ` Rainer M Krug
@ 2010-07-09  8:00     ` Carsten Dominik
  2010-07-09 15:54       ` Eric Schulte
  0 siblings, 1 reply; 5+ messages in thread
From: Carsten Dominik @ 2010-07-09  8:00 UTC (permalink / raw)
  To: Rainer M Krug; +Cc: emacs-orgmode


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

>
>
> On Thu, Jul 8, 2010 at 8:40 PM, Eric Schulte  
> <schulte.eric@gmail.com> 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 <r.m.krug@gmail.com> 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:          Rainer@krugs.de
>
> Skype:          RMkrug
> Google:         R.M.Krug@gmail.com
>
> _______________________________________________
> Emacs-orgmode mailing list
> Please use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode

- Carsten

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [BABEL] Bugin :session? Export html - works --- export pdf not
  2010-07-09  8:00     ` Carsten Dominik
@ 2010-07-09 15:54       ` Eric Schulte
  0 siblings, 0 replies; 5+ messages in thread
From: Eric Schulte @ 2010-07-09 15:54 UTC (permalink / raw)
  To: Carsten Dominik; +Cc: emacs-orgmode, Rainer M Krug

Carsten Dominik <carsten.dominik@gmail.com> writes:

[...]
>
> No, we really need to fix this.
>
> Can someone please try if the following patch does fix this issue?
>

Hi Carsten,

I've just tested your patch against the following minimal example, and
it does fix the problem, in that both of the R blocks now use the
session from the #+BABEL: header.

--8<---------------cut here---------------start------------->8---
#+Title: testing preservation of babel header
#+Author: Eric
#+BABEL: :session *R*

* top header

#+begin_src R :exports code
  x <- 1
#+end_src

The result from the above block + 1 should be src_R{x+1}.
--8<---------------cut here---------------end--------------->8---

Additionally I tested it against the in example which my previous patch
was causing errors, namely

--8<---------------cut here---------------start------------->8---
#+OPTIONS: skip:nil

text before first
* Test


\begin{equation}
E=mc^2
\end{equation}
--8<---------------cut here---------------end--------------->8---

and this exported without problem.  So it looks to me like this patch
should be applied.

Thanks for implementing a solution here.

Best -- Eric

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-07-09 15:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-08 10:42 [BABEL] Bugin :session? Export html - works --- export pdf not Rainer M Krug
2010-07-08 18:40 ` Eric Schulte
2010-07-09  7:21   ` Rainer M Krug
2010-07-09  8:00     ` Carsten Dominik
2010-07-09 15:54       ` Eric Schulte

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).