spockz / lhs2texhl

http://alessandrovermeulen.me/lhs2texhl
MIT License
4 stars 2 forks source link

Underscores in constructors #10

Open mvarela opened 12 years ago

mvarela commented 12 years ago

Hi, I believe this is a bug in lhs2Tex-hl. When there is an underscore in a constructor declaration, e.g.:

data FOO = Bar_A | Bar_B

the formatting generated is

%format Bar_A = " {\lhsCHconstructor{Bar_{A}}}"

which causes LaTeX to choke, as the underscore is not in a math environment. Maybe outputting an escaped underscore

%format Bar_A = " {\lhsCHconstructor{Bar\_{A}}}"

or formatting the whole thing as a subscript

%format Bar_A = " {\lhsCHconstructor{Bar$_{A}$}}"

would be possible solutions.

Br, Martin

mvarela commented 12 years ago

Btw, uncommenting line 14 in Language/LaTeX.hs seems to make it work, though I haven't been able to test whether it breaks something else.

. replace "_" "\\_"

spockz commented 12 years ago

The idea is that the system takes care of some formatting for you when you insert a _. Apparently that is broken now, I will look into it.

mvarela commented 12 years ago

Ok, I had understood that from the documentation as well.