LaTeX 与 OCaml 顶层系统的交互

LaTeX 与 OCaml 顶层系统的交互

我希望能够写一篇OCaml表达式在 LaTeX 文档中,并将其加载到 OCaml 顶层系统中,后者将对其进行编译和求值。然后表达式及其结果都将使用语法高亮进行排版。

可能是这样的环境

\begin{ocamltoplevel}
  let x = 2 + 3*4}
\end{ocamltoplevel}

我怎样才能做到这一点?

pyconsole与环境提供的想法相同PythonTeX包。PythonTeX 支持添加更多语言。也许有人可以将 OCaml 添加到列表中。

答案1

在此处输入图片描述

我现在没有 OCaml,但我有 Fsharp,它们没什么不同……

我正在使用mintedpymentize 进行语法突出显示,pygments 有一个 fsharp 词法分析器,但没有针对 fsharp 的特定词法分析器输出尽管像这里一样将其解析为输入可以合理地尝试进行合理的着色。

输入直接传递给minted,输出写入临时文件,然后输入到mintedminted(以及此处完成的额外文件写入)需要pdflatex --shell-escape

\documentclass{article}

\usepackage{minted}

\begin{document}

\begin{minted}{fsharp}
let x = 2 + 3*4
\end{minted}

\immediate\write18{echo "let x = 2 + 3*4" | fsi> \jobname.tmp}
\inputminted{fsharp}{\jobname.tmp}

\end{document}

相关内容