輕量級標記語言
外觀
輕量級標記語言(英語:Lightweight Markup Language,簡稱LML)是一類用簡單句法描述簡單格式的文本語言。輕量級標記語言作為一種標記語言,它的語法簡單,可方便地使用簡單的文本編輯器輸入,原生格式接近自然語言。所謂「輕量級」是相對於其他更豐富格式的標記語言而言的,比如:富文本格式語言RTF、超文本標記語言HTML、學術界排版語言TeX等。
特點及用途
[編輯]- 格式簡單,源文件容易閱讀和編輯。適合撰寫筆記,使作者的注意力集中於撰寫內容而非形式;
- 純文本有跨平台特性,適合網絡傳播。例如維基百科使用的MediaWiki語言就是輕量級標記語言的一種。
- 採用輕量級標記語言的文檔很容易轉換為更重量級的其他文檔,例如 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、Wiki標記語言。
以數據線性化為目標的輕量級標記語言有Curl、JSON、OGDL、Simple Declarative Language、YAML。