轻量级标记语言
轻量级标记语言(英语:lightweight markup language),是一类用简单句法描述简单格式的文本语言。
轻量级标记语言作为一种标记语言,它的语法简单,可方便地使用简单的文本编辑器输入,原生格式接近自然语言。
所谓“轻量级”是相对于其他更丰富格式的标记语言而言的,比如:富文本格式语言RTF、超文本标记语言HTML、学术界排版语言TeX等。
特点及用途 [编辑]
采用轻量级标记语言的文档很容易转换为更重量级的其他文档,例如 PDF/Tex/HTML等,被很多软件网站用来制作文档,例如python的官方文档采用reStructuredText语言。
应用程序中使用轻量标记语言的一个目的是使得用户能够像阅读编译后的结果一样阅读原始文档,比如当用户下载了一个软件库,那么会更期望在文本编辑器中阅读而不是打开浏览器阅读。
另外一个应用场景是网络出版,例如在博客和wiki,输入界面通常是一个简单的文本框,服务器软件会把输入转换为通常的的文档标记语言,如HTML或XHTML。
历史 [编辑]
轻量级标记语言最早出现在无法呈现斜体和粗体文本的只能显示文本的显示器,所以必须开发非常规的方法来表达这些信息,这些格式自然被带入了通常使用文本的电邮通信中。
1986年的国际标准SGML使用语法与标记使得定义与解析轻量级标记语言变得容易。1998年的W3CXML是SGML的一个子集,并没有充分利用到这些便利。
各种轻量标记语言 [编辑]
以表达为目标的轻量级标记语言有AsciiDoc, BBCode, JsonML, MakeDoc, Markdown, Org-mode, POD, reStructuredText, Ruby Document format, Texy!, Textile, txt2tags, UDO,Wikitext。
以数据线性化为目标的轻量级标记语言有Curl (programming language) (homoiconic, but also reads JSON; every object serializes), JSON, OGDL, Simple Declarative Language,YAML。