我想要了解有哪些选项可以将语法高亮应用于 Plain TeX,从而将 Plain TeX 文档转换为高亮的 HTML。
目的是便于共享对 Plain TeX 文档的跟踪更改。我希望处理的文档相当简单,但它确实手动定义了几种字体、参考书目环境,并大量使用了\halign
宏。对这些进行一些自动或半自动处理将是一个优势。在紧要关头,我可以使用脚本来做到这一点sed
,但我宁愿节省一些时间。
Pygments 似乎不支持 Plain TeX。Emacs 的 AUCTeX 支持TeX-mode
Plain TeX,但尽管我似乎记得可以从 AUCTeX 导出 HTML,但我记不起任何细节。
答案1
将我的评论转换为答案。 :)
最新版本的 附带了一个Vim
名为的插件2html.vim
。其目的是将当前缓冲区(包括配色方案)导出到 HTML。例如,我将使用 Herbert 的代码如何开始使用纯 TeX:
% gettingstarted.tex
\input pstricks
\parindent=0pt
\special{papersize=72.27pt,72.27pt}
\pspicture(72.27pt,72.27pt)
\psframe(72.27pt,72.27pt)
\endpspicture
\bye
要使用此插件,请进入Vim
正常模式并输入:
:TOhtml
生成一个名为的文件yourcode.ext.html
,输出内容如下:
如果我没记错的话,颜色的选择与编辑器配色方案有关。
生成的 HTML 充满了内联样式。如果您想要更好的输出,我发现以下条目可以添加到您的_vimrc
文件中:
let html_use_css = 1 " Replaces the inline styles by CSS stylesheets. Values: 0 or 1
let html_number_lines = 0 " Shows line numbers. Values: 0 or 1
let html_no_pre = 1 " Don't wrap lines. Values: 0 or 1
希望能帮助到你。:)
答案2
您可以使用 emacs 做同样的事情。将代码加载到 emacs 中并执行M-x ps-print-buffer-with-faces
。它将打印缓冲区的 postscript 图像。