[O] latex code block evaluation

2013-02-10 Thread henry atting
I have this latex code block:

#+begin_src latex  :file foo.pdf
\documentclass{article}
\begin{document}
...some text...
\end{document}
#+end_src

After evaluation the resulting file looks like this:


article ...some text...

I do not understand this. As far as I know it is possible to define the
latex documentclass within a code block.

-- 
henry; http://literaturlatenight.de





Re: [O] latex code block evaluation

2013-02-10 Thread Sebastien Vauban
Hi Henry,

henry atting wrote:
> I have this latex code block:
>
> #+begin_src latex  :file foo.pdf
> \documentclass{article}
> \begin{document}
> ...some text...
> \end{document}
> #+end_src
>
> After evaluation the resulting file looks like this:
>
> article ...some text...
>
> I do not understand this. As far as I know it is possible to define the
> latex documentclass within a code block.

Could you be more explicit?  Do you want to use that to pass parameters to the
LaTeX backend?  If yes, why not using the "#+LaTeX:" directive (not sure
they're still supported with the exact same syntax as before -- I've not yet
merged my documents). And that brings us to the most important question: old
or new exporter?

Eventually, can you send a real ECM, or your real use case?

Best regards,
  Seb

-- 
Sebastien Vauban




Re: [O] latex code block evaluation

2013-02-11 Thread henry atting
Hi Sebastien,

"Sebastien Vauban"
 writes:

> Hi Henry,
>
> henry atting wrote:
>> I have this latex code block:
>>
>> #+begin_src latex  :file foo.pdf
>> \documentclass{article}
>> \begin{document}
>> ...some text...
>> \end{document}
>> #+end_src
>>
>> After evaluation the resulting file looks like this:
>>
>> article ...some text...
>>
>> I do not understand this. As far as I know it is possible to define the
>> latex documentclass within a code block.
>
> Could you be more explicit?  Do you want to use that to pass parameters to the
> LaTeX backend?  If yes, why not using the "#+LaTeX:" directive (not sure
> they're still supported with the exact same syntax as before -- I've not yet
> merged my documents). And that brings us to the most important question: old
> or new exporter?
>
> Eventually, can you send a real ECM, or your real use case?

Ah, I see, I was unclear.
In this case I simply want to evalutate this code block with `C-c C-c'. 
I do not use the orgmode LaTeX exporter, only the HTML exporter.
Finally I will create org files with LaTeX code blocks which I will export to
HTML. And that's all. HTML export works fine with the old or the new
exporter.

Though in this case it is not really indispensable I only was wondering why
code block evalution does not work as expected. Why is
`\documentclass{article}' not recognized properly?


> Best regards,
>   Seb


Greetings,
henry




Re: [O] latex code block evaluation

2013-02-11 Thread Eric Schulte
henry atting  writes:

> I have this latex code block:
>
> #+begin_src latex  :file foo.pdf
> \documentclass{article}
> \begin{document}
> ...some text...
> \end{document}
> #+end_src
>
> After evaluation the resulting file looks like this:
>
>
> article ...some text...
>
> I do not understand this. As far as I know it is possible to define the
> latex documentclass within a code block.

Currently the machinery used to generate images of inline latex
equations is used to evaluate latex code blocks.  So e.g., the following
works as "expected".

#+begin_src latex :file write-fisher.pdf :results raw
\begin{equation*}
  P_{i} = \frac{(2N)!}{i! (2N-i)!} p^{i}q^{2N-i}
\end{equation*}
#+end_src

#+RESULTS:
[[file:write-fisher.pdf]]

In this case it is all a matter of balancing what the majority of users
think is "expected".  If specifying a particular document class is
important, than I am sure that it shouldn't be hard to update the
org-babel-execute:latex function to check for the presence of
\begin{document} and handle those cases differently (in a similar way to
how org-babel-execute:C checks for a main function).

If specifying the document class is not required your example could be
converted to the (arguably preferable) example below.

#+begin_src latex  :file foo.pdf :results raw
...some text...
#+end_src

#+RESULTS:
[[file:foo.pdf]]

Cheers,

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



Re: [O] latex code block evaluation -- Eric?

2013-02-11 Thread Sebastien Vauban
Hi Henry,

henry atting wrote:
> "Sebastien Vauban" writes:
>> henry atting wrote:
>>> I have this latex code block:
>>>
>>> #+begin_src latex  :file foo.pdf
>>> \documentclass{article}
>>> \begin{document}
>>> ...some text...
>>> \end{document}
>>> #+end_src
>>>
>>> After evaluation the resulting file looks like this:
>>>
>>> article ...some text...
>>>
>>> I do not understand this. As far as I know it is possible to define the
>>> latex documentclass within a code block.
>>
>> Could you be more explicit?  Do you want to use that to pass parameters to 
>> the
>> LaTeX backend?  If yes, why not using the "#+LaTeX:" directive (not sure
>> they're still supported with the exact same syntax as before -- I've not yet
>> merged my documents). And that brings us to the most important question: old
>> or new exporter?
>>
>> Eventually, can you send a real ECM, or your real use case?
>
> Ah, I see, I was unclear.
> In this case I simply want to evalutate this code block with `C-c C-c'. 
> I do not use the orgmode LaTeX exporter, only the HTML exporter.
> Finally I will create org files with LaTeX code blocks which I will export to
> HTML. And that's all. HTML export works fine with the old or the new
> exporter.
>
> Though in this case it is not really indispensable I only was wondering why
> code block evalution does not work as expected. Why is
> `\documentclass{article}' not recognized properly?

To be sure to understand, what are you expecting when you're evaluating the
LaTeX code block?  Its content to be automagically converted to a PDF file
thru the LaTeX chain?

AFAIK, this does not work. I'd like it to be the case, but Eric Schulte once
explained it was (too?) difficult. Dunno if it's still on his task list.

The workaround was to tangle to a TeX file, and from there to compile to a PDF
via AUCTeX. Yes, not sexy, I know.

Best regards,
  Seb

-- 
Sebastien Vauban