0

我正在使用 KaTeX 进行数学渲染的网站上工作。但是,输入数学内容的界面(真的)并不理想,所以我在编辑器中工作实际上更快,比如 Sublime Text 3 并导入工作;但是,我遇到的一个问题是,当我导入时,我发现 KaTeX 不支持(即模拟)各种功能/环境。

如果只有我在编写材料,我会边学习边学习并查阅 KaTeX 文档页面;但是,我有几个从事数字化内容的承包商,他们无权访问该网站(我也没有能力授予他们访问权限),因此无法通过反复试验学习。相反,我最终得到了成堆的文档,这些文档都需要手动调整,才能使用 KaTeX 按需要进行渲染。

因此,我想为 LaTeX 文档组装一个序言,该文档将重新创建 KaTeX 可以模拟的能力(即功能和环境),并且想知道这样的序言/包是否已经存在?我尝试了一些快速搜索,但因为我正在寻找模仿模拟器的东西,我发现找到正确的单词选择以获得相关结果很棘手。

我不确定这是最好的发布在这里还是在 TeX.se 上——我怀疑它介于两者之间——所以如果我的猜测是错误的,我很抱歉,我应该先在那里尝试。任何建议都将不胜感激,因为这在我的工作流程中造成了很大的瓶颈,但也超出了我自己解决的能力范围。

4

1 回答 1

0

支持的功能是一回事。为了解决这个问题,您实际上可能只是对输入进行标记,查找反斜杠名称序列并将它们与从 KaTeX 源中提取的列表进行检查,以查看哪些是受支持的。

我想人们甚至可以尝试从 LaTeX 中删除所有其他功能。或者更确切地说隐藏它们,这样用户输入无法访问它们,但第三方库可以。摆脱诸如\def可能更难的语言功能(与宏相反)。最好在 TeX 堆栈交换上询问您真正想要遵循这条路线的详细信息。

作为替代方案,我猜您也许可以在 TeX 中执行我上面描述的检查。编写一个将当前文件读取为纯文本而不是 TeX 源的宏来执行此分析。或者一些这样的。但是单独的独立工具会容易得多。

如果你想要一个单独的工具,你不妨用 JavaScript for Node 编写它,并让它在输入上运行 KaTeX。这样你至少可以判断它是否会被排版出错。

渲染是否是您对 LaTeX 的期望可能是另一个问题。一般来说,KaTeX 旨在重现 LaTeX 行为,因此任何差异都可能表明存在错误。但是存在错误,因此所有这些都可能无法避免检查的需要。您如何使用 KaTeX 将输入的数学部分处理为一些 HTML,作者可以在不访问该站点的情况下检查这些 HTML?

至于现有的工具或宏包,我一无所知,但工具或库问题无论如何都不是堆栈交换的主题。

于 2018-10-27T09:58:11.037 回答