From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Hendy Subject: Re: Exporting via babel to LaTeX Date: Mon, 28 May 2012 21:33:17 -0500 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([208.118.235.92]:51687) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SZCFO-0006IP-CU for emacs-orgmode@gnu.org; Mon, 28 May 2012 22:33:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SZCFM-0003FV-3t for emacs-orgmode@gnu.org; Mon, 28 May 2012 22:33:21 -0400 Received: from mail-bk0-f41.google.com ([209.85.214.41]:62993) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SZCFL-0003F9-MX for emacs-orgmode@gnu.org; Mon, 28 May 2012 22:33:20 -0400 Received: by bkcjm19 with SMTP id jm19so3194462bkc.0 for ; Mon, 28 May 2012 19:33:17 -0700 (PDT) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: "Thomas S. Dye" Cc: emacs-orgmode On Mon, May 28, 2012 at 6:35 PM, Thomas S. Dye wrote: > John Hendy writes: > >> On Mon, May 28, 2012 at 4:32 PM, Thomas S. Dye wrote: >>> John Hendy writes: >>> >>>> I've only ever used src blocks to make plots or create files to >>>> include. I have my first opportunity to actually try and include both >>>> code and results and have a question about spacing. You won't have my >>>> data, but this is pretty simple stuff.: >>>> >>>> #+begin_src R :session basic :results output :exports both >>>> nrow(data) >>>> #+end_src >>>> #+begin_src R :session basic :results output :exports both >>>> nrow(nonzero.data) >>>> #+end_src >>>> >>>> I split them up because I wanted the results like so: >>>> >>>> Code-A >>>> Results-A >>>> Code-B >>>> Results-B >>>> >>>> If I kept them together, it came out Code-A, Code-B, then Results-A, R= esults-B. >>>> >>>> Anyway, the LaTeX output is creating the following: >>>> >>>> \begin{verbatim} >>>> nrow(data) >>>> \end{verbatim} >>>> >>>> \begin{verbatim} >>>> =C2=A0[1] 681 >>>> \end{verbatim} >>>> >>>> \begin{verbatim} >>>> nrow(nonzero.data) >>>> \end{verbatim} >>>> >>>> \begin{verbatim} >>>> =C2=A0[1] 455 >>>> \end{verbatim} >>>> >>>> This gives really, really spaced out results. I'd prefer output that >>>> looks more like an R terminal output, which can be done by not putting >>>> code and results in separate verbatim blocks. Is this standard >>>> spacing/behavior or is there an option/exporter tweak I can use on >>>> this? It just ends up taking so much space. >>>> >>>> I'm super new to this and barely know anything about the header >>>> arguments at all. I will say I was thrilled to find out about the >>>> :session option. I was worried about "walking through code" because I >>>> rely on initial block results to carry through to the others. What do >>>> you know? There's a way to do that :) Thanks for this wonderful >>>> implementation. I've seen it come up on the list hundreds of time and >>>> have to say it's really cool actually getting to work with it! >>>> >>>> >>>> Best regards, >>>> John >>>> >>>> >>> Hi John, >>> >>> One way to do this would be to redefine the verbatim environment in >>> LaTeX. =C2=A0There is a fancyvrb package for LaTeX that might help with= this. >>> >>> I think a better answer to your query has two parts. >> >> Thanks for the input! >> >>> >>> 1) Make Org-mode distinguish your code and results, instead of having >>> them both be verbatim environments. =C2=A0One way to do this would be t= o use >>> listings or minted to typeset the source code blocks: see >>> http://orgmode.org/worg/org-tutorials/org-latex-export.html#sec-12. >>> >>> Then use :wrap foo to wrap the results in a foo environment. >>> >> >> So... foo could be verbatim or something like that shaded example in >> the worg tutorial above? I'm thinking the code and results would still >> be in different environments when the PDF is generated, right? You're >> just suggesting that I put them in an environment that doesn't insert >> so much white space? >> > You'll probably have to create a LaTeX environment that doesn't insert so > much white space. =C2=A0Best to do this with a new environment, rather th= an > redefining one of the existing LaTeX environments, IMHO. > > The white space problem is something to correct at the LaTeX step, after > Org-mode has wrapped the blocks in semantically meaningful environments. > I took a look at this and have managed to modify that example to tweak the R blocks. How do I pick up the results, though? LaTeX is still putting them in verbatim and I don't see how the listings package could know what Org-mode babel is doing as it's not really "source code" at that point in some sort of language? Also, yes, I didn't have org-special-blocks enabled, hence it not allowing me to create custom #+begin_... blocks. Thanks! John > hth, > Tom > >>> 2) Configure LaTeX to typeset the new environments in a way that please= s >>> you. LaTeX specifies for each environment the space to leave before it >>> and after it. =C2=A0You should be able to set these so the results plea= se >>> you. =C2=A0Here is one example for how to modify the results block: >>> http://orgmode.org/worg/org-tutorials/org-latex-export.html#sec-10-2. >>> Note that this was written for an earlier version of Org-mode, before >>> results blocks were stored in drawers. =C2=A0Instead of "results" use "= foo". >>> >> >> It will take me a while to figure all of this out. I don't know either >> of these packages! >> >>> You'll need to consult the listings or minted packages to configure one >>> of them. >>> >>> In effect, you will be taking advantage of LaTeX's semantic markup. >> >> Thanks again! I'll have a look into this this week. >> >> John >> >>> >>> hth, >>> Tom >>> -- >>> Thomas S. Dye >>> http://www.tsdye.com >> > > -- > T.S. Dye & Colleagues, Archaeologists > 735 Bishop St, Suite 315, Honolulu, HI 96813 > Tel: 808-529-0866, Fax: 808-529-0884 > http://www.tsdye.com