From: "Sébastien Vauban" <wxhgmqzgwmuf-geNee64TY+gS+FvcfC7Uqw@public.gmane.org>
To: emacs-orgmode-mXXj517/zsQ@public.gmane.org
Subject: Re: [Babel] Can't export to LaTeX anymore (args-out-of-range 0 0)
Date: Tue, 21 Sep 2010 22:54:21 +0200 [thread overview]
Message-ID: <87eicmhl6q.fsf@mundaneum.com> (raw)
In-Reply-To: 87hbhj9ihj.fsf@gmail.com
Hi Eric,
"Eric Schulte" wrote:
> Sébastien Vauban <wxhgmqzgwmuf-geNee64TY+gS+FvcfC7Uqw@public.gmane.org> writes:
>> "Eric Schulte" wrote:
>>> [...]
>>> #+srcname: subject
>>> #+begin_src org :results org replace :noweb yes
>>> Composing letters using *Org mode* and the LaTeX isodoc class
>>>
>>> <<me>>
>>> #+end_src
>>
>> Question: =:results org replace= (instead of =:results org=) is necessary
>> if we wanna see the results expanded in the Org buffer, on key =C-c C-v
>> C-e=. Why?
>
> by default org mode blocks do not insert their results, this was due to
> their initial use to wrap results of code blocks. This can be changed in
> your personal configuration by customizing the value of the
> `org-babel-default-header-args:org' variable.
OK. Clear.
>> Asking for Org results, as you mentioned, made me dream about a direct
>> export to PDF on =C-c C-v C-e=. However, when the Org results block
>> =letter= is surrounded by LaTeX code, items and tables aren't translated
>> anymore to their LaTeX counterparts.
>
> true, your outer-most block would have to be an org-mode block, which could
> include LaTeX sections if they were already surrounded in begin/end_latex
> blocks.
Never thought about having blocks *inside* blocks...
Tried things such as the following:
--8<---------------cut here---------------start------------->8---
#+OPTIONS: H:3 num:nil toc:nil
#+LaTeX_CLASS: isodoc
#+LaTeX_HEADER: \setupdocument{
#+LaTeX_HEADER: to = {%
#+LaTeX_HEADER: Org mode user group \\
#+LaTeX_HEADER: World Wide Web
#+LaTeX_HEADER: },
#+LaTeX_HEADER: subject = {Composing letters using Org mode and the \LaTeX{} isodoc class},
#+LaTeX_HEADER: opening = {Dear Org mode users},
#+LaTeX_HEADER: closing = {Yours Truly}
#+LaTeX_HEADER: }
#+source: contents
#+begin_src org :results silent :exports none
My body includes a list:
- one
- two
and a small table:
| here | second |
| other | last |
Not more.
#+end_src
#+BEGIN_SRC org
#+BEGIN_LaTeX
\letter{%
#+END_LaTeX
#+srcname: letter
#+begin_src org :results raw :noweb yes
Composing letters using *Org mode* and the LaTeX isodoc class
<<contents>>
#+end_src
#+BEGIN_LaTeX
}
#+END_LaTeX
#+END_SRC
--8<---------------cut here---------------end--------------->8---
> It may not be possible to export directly to a latex letter using Org-mode's
> build latex exporter. I think the tangling solution you mention below may be
> preferable.
I'm approaching, but am not still where I need to be: the =#+END_SRC= does not
seem to be correctly nested... The inner one gets related to the outer
=#+BEGIN_SRC=.
>> Then, if I understand correctly, the only fallback is the tangling
>> solution:
>
> agreed.
>
>> Here, the above results is perfectly translated into LaTeX. But trying to
>> export this buffer raises the =Args out of range: 0, 0= error.
>
> This is the same error we discovered earlier, namely trying to export the
> body of an Org-mode block to latex in the middle of a latex export. I've
> pushed up a more useful error message.
Yes. I was re-injecting previous results, to make the overview complete.
>> The solution is to tangle it, and launch pdflatex on the tangled file.
>
> agreed. BTW: I've just pushed up a code block to the library of babel which
> makes it possible to include headlines into noweb exports. I imagine this
> would be very useful when composing letters in this manner. See the email
> where I initially mention this
> http://thread.gmane.org/gmane.emacs.orgmode/29926/focus=30667
Thanks.
>> - Couldn't =C-c C-v C-e= tangle to files, when the =tangle= parameter is
>> present? FYI, I've lost some amount of time (won't tell you how much, I'm
>> ashamed) thinking that the tangling process did not work anymore on my
>> machine, because I was expecting it on =C-c C-v C-e=. At my discharge, I
>> only used tangling once, a couple of months ago, but...
>>
>> ... and I think I already had once that request in mind, maybe even asked
>> on the list.
>
> =C-c C-v C-e= is already used for executing code blocks, unfortunately
> key-bindings are at a premium, so I don't think it is worth re-binding this
> -- although I do see how you could be confused
I meant: for me, when there is a tangle directive, executing the code block
*is* tangling. Or, at least, tangling should be done at the same time as the
execution.
Maybe, you want to explicitly separate both functions, though.
>> Idealistic goal that I have in mind (so that I share upfront which
>> directions I would enjoy to be able to follow):
>>
>> - be able to produce =isodoc= letter in PDF just by =C-c C-v C-e=
>
> by =C-c C-v C-e= do you mean tangle or execute?
I meant, thus, when executing (here, producing the letter).
>> - next step: be able to produce /mail merge/ ("publiposting"), having in
>> Org the list of recipients and the letter's contents -- both in one
>> unique Org file --, and producing all the letters at once (in one PDF),
>> just by =C-c C-v C-e=...
>
> this shouldn't be impossible with the current setup, maybe use sbe to call a
> code block on every row of a table with the table holding the recipients.
> Certainly wouldn't be trivial though.
I'll try to understand all of this in my next work session...
Thanks for all help provided so far...
Best regards,
Seb
--
Sébastien Vauban
_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode-mXXj517/zsQ@public.gmane.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode
prev parent reply other threads:[~2010-09-21 20:54 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-13 11:33 [Babel] Can't export to LaTeX anymore (args-out-of-range 0 0) Sébastien Vauban
2010-09-17 14:08 ` Eric Schulte
2010-09-17 15:18 ` Sébastien Vauban
2010-09-17 16:55 ` Eric Schulte
2010-09-20 22:10 ` Sébastien Vauban
2010-09-21 16:19 ` Eric Schulte
2010-09-21 20:54 ` Sébastien Vauban [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87eicmhl6q.fsf@mundaneum.com \
--to=wxhgmqzgwmuf-genee64ty+gs+fvcfc7uqw@public.gmane.org \
--cc=emacs-orgmode-mXXj517/zsQ@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.