数学轻量级标记语言

3

是否有一种简单的标记语言可用于数学公式?

我正在开发一款面向本科生的应用程序,我正在寻找一种比LaTex更简单,比MathML更易书写的东西。


需要为展示做标记吗?如果是,采用何种形式:屏幕还是纸张?还是其他形式?或者需要为以后处理(例如使用您喜爱的计算机代数系统)做标记? - High Performance Mark
@高性能标记:用于屏幕展示。它应该看起来好看且易于编写/编辑,无需后期处理。 - jbochi
LaTeX(特别是AMS-LaTeX)只会增加TeX数学标记的复杂性。TeX标记通常被数学家用于通过诸如Usenet之类的TTY论坛传达数学内容。 - Charles Stewart
4个回答

5

对于实际的方程,我认为TeX是简单而清晰的。只有当你担心除了方程之外的所有其他事情,比如文档和软件包等等时,TeX才会变得复杂。而且,TeX方程的质量远远优于其他一切。因此,我建议采用某种混合方法——使用TeX标记来表示实际的方程,但将它们嵌入到更简单的环境中。你可以查看一些关于直接将TeX方程转换为png的问题。


一个类似Markdown + TeX的混合解决方案可能确实是我目前需求中最好的方法,但我猜想在这种情况下我需要自己实现编辑器以及将文本转换为HTML+图片的功能。 - jbochi

4

你有没有看过ASCIIMathML?它将标记转换为MathML,但似乎更容易理解...


谢谢。这看起来很有前途,但我能否将其与另一种标记语言(如Markdown)一起使用?据我所了解,ASCIIMathML 只对方程式有用,而不适用于文本的其他部分。 - jbochi
你的问题只提到了数学标记。你应该在问题中添加其他要求。我不知道它是否与Markdown兼容 - 你需要同时查看两者才能找出答案。 - Oded
你说得对。我不知道我是否会使用ASCIIMathML,但这是问题的最佳答案。再次感谢。 - jbochi
我喜欢一些速记符号——最喜欢的是用于尖括号的(: & :)——但它似乎没有足够的压缩和透明度来克服TeX所具有的优势。 - Charles Stewart

1

在http://www.troff.org/prog.html#eqn有一个例子。 - Charles Stewart
eqn有点不错,但它不如TeX易读,也不如TeX紧凑和功能强大,而且它的知名度远不及TeX。 - Charles Stewart

0

答案将严重依赖于你想要的内容。请注意,如果你自己开发,则必须开发用于创作、验证、转换和呈现的完整工具包。你要么需要一个非常小的语言或付出大量的努力。

如果你想要排版,那么使用TeX或表现性MathML,因为它们有成熟的工具包。如果你想要语义数学,那么内容MathML是你最好的选择。

与数学标记相关的主要团体之一是数学知识管理社区(MKM),他们的选择是MathML。多年来,我与他们互动,因为化学和数学经常联系在一起。

恐怕答案是数学是一个复杂的主题,没有超级简单的解决方案。我相信MathML相当少无关紧要的复杂性,并代表了向前的最佳途径。此外,它是表现和内容/语义之间差异的绝佳指示。


谢谢,彼得。MathML和LaTex都非常适合方程式的呈现,但MathML的问题在于人类不能够很好/快速地编写XML。:( - jbochi
是的!你的答案取决于你想做什么。如果是为工程学生编写,我会使用TeX。如果是为了一般用途,找一个方程编辑器来保护它们。如果是数学方面的,让他们学习一些标记语言可能也不是坏主意。 - peter.murray.rust
MathML相比TeX来说冗长且晦涩难懂。MathML的设计文档表明它的意图是作为XML操作层面的表示,TeX则被用作输入格式。 - Charles Stewart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接