lhs2tex 包含文件扩展名
我们在一个大项目中使用 lhs2TeX。因此我们有许多(可执行)文档。我们有一个通用的 .sty 文件,还有一个通用文件,其中保存了所有常用的 lhs2TeX 指令,例如 %format alpha = "\alpha" 我已将此文件命名为 .l2t 后缀,但有没有更常见/更好的后缀? ...
我们在一个大项目中使用 lhs2TeX。因此我们有许多(可执行)文档。我们有一个通用的 .sty 文件,还有一个通用文件,其中保存了所有常用的 lhs2TeX 指令,例如 %format alpha = "\alpha" 我已将此文件命名为 .l2t 后缀,但有没有更常见/更好的后缀? ...
我在 Windows 上使用 MiKTeX,并lhs2tex使用 Literate Programming 编写 Haskell 程序。当我运行 lhs2tex code.lhs | pdflatex 在 CMD 上,我得到一个名为“texput.pdf”的 PDF 输出,但我希望它的名字与原始文件“code.pdf”相同。 我尝试添加%& -job-name=code到 .lhs 文件,但没有成功。我还尝试了 lhs2tex code.lhs | pdflatex -job-name=code 但失败了。当然我可以 lhs2tex ...
我试图定义一个命令\runx,它不仅可以评估 Haskell 表达式(这已经是\perform完成了),而且还可以在评估之前打印该表达式。 所以我尝试了 \newcommand{\runx}[1]{result=\ttfamily{#1} \perform{#1} } 并像使用它一样 \runx{pi} 事实证明,发送给 ghci 的表达式是一个文字#1,而不是pi。因此\perform,显然对于我的目的来说,应用 太早了,即在定义命令时。当要求评估时,Ghci 没有返回任何有用的信息,#1并且\perform{#1}评估结果为零。 因此 ...
我正在准备一个演示文稿,其中有些幻灯片包含 Haskell 代码,而其他幻灯片包含 Agda。但是,lhs2TeX由于输入语言由命令行开关--haskell或指定,因此会全局调度--agda。有没有办法将两者混合使用? ...
lhs2tex 工具是一款非常棒的代码格式化程序,尤其是对于 Haskell 来说,但它通常需要作为预处理器运行。现在我真的很喜欢能够只处理pdflatex我的文件,尤其是当我与他人合作时。 有没有办法让 latex 本身写出代码块的内容,在其上运行 lhs2tex 并透明地读回结果? ...
我想使用句法和开源TeX一起,但 Syntax 在生产规则名称中的使用<>似乎与 lhs2TeX 冲突: \documentclass{article} \usepackage[nounderscore]{syntax} %include lhs2TeX.fmt \begin{document} \begin{grammar} <foo> ::= <bar> \end{grammar} \end{document} 如果我尝试排版这个: $ lhs2TeX a.lhs -o a.tex $ pdflatex a...
考虑一份有多个打印版本的文档。在一个版本中,隐藏了一个位代码(例如使用%if 0或comment包)。在另一个版本中,现在有blocks实际上属于一起的相邻代码。 %if elaborate \begin{code} more code \end{code} %endif \begin{code} the meat \end{code} 在简短版本中,more code没有显示,一切正常。但在详细版本中,有两个相邻的code块,实际上应该是一个。通过断续,插入了与段落相对应的垂直空间。 我怎样才能去掉那个空格?一个想法是使用和\vspace的组合的负...
预处理器 lhs2tex 有一种非常简洁的代码对齐方式。请看以下代码片段: let t1 = foo x in let g x = if x > 10 then t1 else let t2 = bar x in let h y = if y > 10 then g (t2 y) else...
lhs2tex 的文档显示,默认情况下使用衬线字体作为预处理器的输出(http://www.andres-loeh.de/lhs2tex/Guide2-1.17.pdf): 但是,当我运行时lhs2tex --poly input.lhs > out.tex;pdflatex out.tex,Haskell 源代码被格式化为计算机现代字体: 我的输入文件是 \documentclass{article} \%include polycode.fmt \begin{document} Hello World! > main :: I...
设置\begin{code}/\end{code}或\begin{spec}/缩进的 (快速且) 简单方法是什么\end{spec}?也就是说,我只想设置整个块的缩进,而不是代码中列的缩进(可以通过\hsindent按照文档)。 一种解决方案是使用\texths(如上所述这里) 和minipage,但我怀疑还有更好/更好的选择。 ...
如何获得图中\begin{code}/\end{code}或\begin{spec}/周围适当的垂直空间?\end{spec} fancyhdr这是一个添加了内容以显示页面顶部的基本示例: \documentclass{article} \usepackage{fancyhdr} \pagestyle{fancy} \fancyhf{} \fancyhead[C]{} %include polycode.fmt \begin{document} Some text. \begin{figure}[t] \begin{code} main = putStr...
我正在使用 lhs2TeX 将代码转换为 LaTeX。它将代码排版为数学模式。由于我也在同一个文档中编写数学公式,因此我使用 unicode-math 在不同的数学模式字体之间切换,以使两者更加明显(并且在我的数学中使用 Unicode 符号)。 lhs2TeX 使用宏设置变量标识符\Varid,通常设置为\mathit。 这里的问题是,使用 unicode-math 时,\mathit无法正常工作。我不确定这是 unicode-math 的问题还是 OpenType 数学字体的问题,但最重要的是它没有将其参数排版为文本,而是像公式一样,字母之间有额外的...
我正在写一篇 Haskell 论文,我正在使用开源TeX让它看起来更漂亮。但是,lhs2TeX 似乎弄乱了我的缩进。我有一些源代码看起来像这样: \documentclass[a4paper]{article} %include polycode.fmt \begin{doc...
假设我有一个不完整的代码块,例如: \documentclass{article} %include polycode.fmt \begin{document} \begin{code} somefunction :: a -> a \end{code} \begin{spec} somefunction x = undefined \end{spec} \end{document} 它应该表达一项正在进行的工作,因为somefunction它只是在稍后定义,所以我想从 ghc 隐藏这个不完整的定义,但我想重用类型签名。不幸的是,在这个设置中,两...
如何在 beamer 中突出显示 lhs2TeX 代码的特定范围? 简单示例(需要用 进行预处理lhs2TeX --agda): \documentclass{beamer} %include agda.fmt \begin{document} \begin{frame} \begin{spec} somefunction : {-"\begin{alertenv}"-}importantaspect{-"\end{alertenv}"-} secondline \end{spec} \end{frame} \end{d...