emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Org Babel blocks exports dollar signs to LaTeX verbatim


From: Matthew MacLean
Subject: Re: [O] Org Babel blocks exports dollar signs to LaTeX verbatim
Date: Fri, 4 Sep 2015 10:00:32 -0600

Ah, thanks! So it was configuration then...

I initially figured it was language-dependant, which was why I tried it in Ruby, since "$" is a valid character in that language... What I didn't anticipate was that the boxes came from intelligent-syntax checking--I figured that it was just some sort of fancy character I was unfamiliar with that needed to be escaped.

So, the way I fixed the issue in my Org file was to add the following to override the syntax error checking:

    #+LATEX_HEADER: \expandafter\def\csname address@hidden@err\endcsname{}

It was recommended on that Stack Exchange answer not to do this, but we aren't writing code directly in LaTeX, we're using Org mode..! That means we don't really need error highlighting in our exporting, since that sort of thing is already covered by existing language support.

On Fri, Sep 4, 2015 at 5:57 AM, Alan Schmitt <address@hidden> wrote:
(Still catching up on orgmode mail … sorry if you already found a way to
address the issue)

On 2015-08-18 18:13, Matthew MacLean <address@hidden> writes:

> When working with Org Babel source code blocks, if I have a dollar sign in my
> code and export it to PDF using LaTeX, it appears to parse as an internal
> link. (Maybe?)
>
> This is what it looks like:
> Inline image 1
> That comes from the following source code block:
>
> #+BEGIN_SRC sql :eval no :var id=1
> SELECT * FROM blah
> WHERE id=$id
> #+END_SRC
>
> The resulting LaTeX from the source code block is:
>
> \begin{minted}[]{sql}
> SELECT * FROM blah
> WHERE id=$id
> \end{minted}
>
> I have verified that SQL is not the only block type to do this by having a
> Ruby block with nothing except a "$" in it, and got the same result.

These red boxes often come from signaling a syntax error from pygments,
which I confirmed by putting the code in a test.sql file and running:

% pygmentize -f latex test.sql
\begin{Verbatim}[commandchars=\\\{\}]
\PY{k}{SELECT} \PY{o}{*} \PY{k}{FROM} \PY{n}{blah}
\PY{k}{WHERE} \PY{n}{id}\PY{o}{=}\PY{err}{\PYZdl{}}\PY{n}{id}
\end{Verbatim}

You can see the “\PY{err}” that signals a parser error around the dollar
sign.

There are some solutions to hide these boxes here:
http://tex.stackexchange.com/questions/14166/red-box-drawn-around-question-mark-operator-in-minted-erlang-code

Best,

Alan

--
OpenPGP Key ID : 040D0A3B4ED2E5C7
Last week athmospheric CO₂ average (Updated August 31, 2015, Mauna Loa Obs.):
377.82 ppm


reply via email to

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