如何评论文字haskell中的行

Mar*_*urg 5 latex haskell literate-programming

我无法在lhs风格的haskell程序中注释出代码行,所以haskell和Latex都忽略了这一行.

当我使用时,--我的lh2tex将尝试将haskell代码渲染为注释.但这通常会失败,因为代码中包含美元和其他令Latex混淆的东西.

当我使用时--%,Latex很高兴,因为它只是忽略了评论,但是haskell不喜欢--%.只有当我在--哈斯克尔之后放一个空格时才可以,但乳胶再次抱怨.

kos*_*kus 2

如果您正在使用 lhs2TeX(您似乎是这样),那么您可以使用 lhs2TeX 条件从 LaTeX 中隐藏代码:

%if False

> code seen by Haskell but not typeset
> -- comment that is not typeset

%endif

> code seen by Haskell and typeset
> -- comment that will be typeset
Run Code Online (Sandbox Code Playgroud)

正如 Daniel Wagner 在他的评论中建议的那样,另一种选择是为完整的行添加前缀,%将其转换为 LaTeX 注释。

lhs2TeX 始终将注释视为 LaTeX 文本,但它还会执行预处理。因此,在带有注释的行上使用 a %(如-- %)是行不通的,因为它将%最终出现在生成的 TeX 文件中部分相关代码的中间并触发错误。