[Top][All Lists]

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

Re: [O] Adding export option for babel language

From: Ken Mankoff
Subject: Re: [O] Adding export option for babel language
Date: Thu, 08 May 2014 16:09:42 -0400
User-agent: mu4e; emacs 24.3.1

I figured it out:

(setq org-latex-custom-lang-environments
         '((python "pyconsole")))

And of course \usepackage{pythontex} somewhere.

This is really nice. Now the Org buffer behaves as before, but the
exported LaTeX has the python code appear as if it were run right there
in an interactive session. I set ":export code" so the Org results are
not shown in the PDF, and PythonTeX re-generates the results and puts
them inline!


On 2014-05-08 at 15:53, Ken Mankoff <address@hidden> wrote:
> Hi Chuck,
> On 2014-05-08 at 12:17, Charles Berry <address@hidden> wrote:
>>> I'd like the python code blocks to behave just as they do now, but if I
>>> have set (setq org-latex-listings 'pythontex) instead of (setq
>>> org-latex-listings 'minted), then instead of wrapping python code blocks
>>> with:
>>> \begin{minted}[]{python}
>>> x+2
>>> print x
>>> \end{minted}
>>> It should wrap them with
>>> \begin{pyconsole}
>>> x+2
>>> print x
>>> \end{pyconsole}
>> A quick-and-dirty approach to do just that much would be to write an export
>> filter for `src-block' and maybe `inline-src-block', see
>>    (info "(org) Advanced configuration")
>>    http://orgmode.org/worg/dev/org-export-reference.html#filter-system
>> and 
>>     http://orgmode.org/worg/exporters/filter-markup.html
>> Also, `C-h f org--filter TAB' should give you a buffer of such filter
>> functions (and a couple of false positives) that you might browse.
> I've briefly looked at the filters. Yes, it seems like that might be one
> way to do this. But I have a hunch it is already implemented, and that I
> just don't know how to access it or what variable to set.
> See:
> http://orgmode.org/cgit.cgi/org-mode.git/tree/lisp/ox-latex.el#n2280
> Where Case 1 is no fontification, Case 3 is minted, and Case 2 is
> custom. I can see that if `custom-env` is set correctly, it wraps the
> code exactly as I want above:
>        (custom-env (format "\\begin{%s}\n%s\\end{%s}\n"
>                          custom-env
>                          (org-export-format-code-default src-block info)
>                          custom-env))
> But I'm not sure where to set custom-env, although I know I want to set
> it to `pyconsole`.
>   -k.

reply via email to

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