|
|
A lightweight markup language is a markup language with a simple syntax, designed to be easy for a human to enter with a simple text editor, and easy to read in its raw form.Lightweight markup languages are used in applications where people might be expected to read the document source as well as the rendered output. For instance, a person downloading a software library might prefer to read the documentation in a text editor instead of a browser.A further application is for entry in web-based publishing, such as weblogs and wikis, where the input interface is a simple text box. The server software converts the input to a common document markup language like HTML or XHTML. History
Lightweight markup languages were originally used on text-only displays which could not display characters in italics or bold, so informal methods to convey this information had to be developed. This formatting choice was naturally carried forth to plain-text email communications. List of lightweight markup languages
The following is a partial list of lightweight markup languages. Presentation oriented
Almost Free Text ()Almost Plain Text ()AsciiDoc ()atx (markup language) ()BBCodeBlogMe ()Creole (proposed common wiki markup)CrossMarkDeplate ()Epytext ()EtText ()Grutatext ()Haml ()jemdoc ()JsonML ()Markdown ()WakabaMark ()Muse Mode () of Emacso7aCode ()Pandoc ()Perl Text To HTML ()PODreStructuredText ()Ruby Document formatSetext ()SiSU ()Skribe ()Spip ()Structured textStx2any()Texy! ()TextileTerence's Markup Language ()txt2tags ()UDO ()WikitextXilize ()Yodl () Data serialization oriented
CurlyMLJSON ()OGDLPL ()Record-Jar ()Simple Declarative Language ()YAML () Comparison of lightweight markup language syntax
Text/font-face formatting
Comparing text formatting syntax| Language | Bold | Italic | Monospace (teletype) | Notes |
|---|
| Almost Free Text | _bold text_ | ''italic text'' | |monospace text| | Formatting will not occur across line breaks unless the first formatting character is the first character on the line. |
|---|
| BBCode | bold text | italic text | [code]monospace text[/code] | Formatting works across line breaks. |
|---|
| Creole | **bold text** | //italic text | {{{monospace text}}} | Triple curly braces are for nowiki which is optionally monospace in Creole (the choice of the implementor). Future Creole additions may introduce double hash marks (##) for monospace. |
|---|
| Markdown | **bold text**or__bold text__ | *italic text*or_italic text_ | Non-monospace text monospace text more monospace textInline `monospaced` text. | Markdown doesn't use bold and italic tags, but rather em (typically italic) and strong (typically bold) tags.Monospace text is created by indenting that line 4 spaces or one tab character, or enclosing text in backticks: `monospaces`. | |
|---|
| o7aCode | '''bold text''' | ''italic text'' | °°°monospace textmonospace text°°° | o7aCode uses em (typically italic) and strong (typically bold) tags.All attributes of all markups can be filled in.Monospace text can be colored up by GeSHi. |
|---|
| POD | B | I | C | Indented text is also shown as monospaced code. |
|---|
| reStructuredText | **bold text** | *italic text* | ``monospace text`` | |
|---|
| Textile | *bold text*or**bold text** | _italic text_or__italic text__ | @monospace text@ | Textile uses em (typically italic) and strong (typically bold) tagson single symbols, and i and b tags on double symbols. |
|---|
| Texy! | **bold text** | *italic text*or//italic text | `monospace text` | Texy uses by default em (typically italic) and strong (typically bold) tags. It is possible to configure library to use another tags. |
|---|
| txt2tags | **bold text** | //italic text | ``monospace text`` | |
|---|
| MediaWiki | '''bold text''' | ''italic text'' | monospace text | |
|---|
Section headers
Comparing section header formatting| Language | Format | Notes |
|---|
| Almost Free Text | * Level 1 Header** Level 2 Header | Up to 4 levels |
|---|
| BBCode | | Does not support section headers |
|---|
| Markdown | # Level 1 Header## Level 2 HeaderorLevel 1 Header==============Level 2 Header-------------- | It's possible to optionally "close" the #-style headers with an equal number of #'s. The #-style headers support up to 6 levels. The = and - style headers support only the two shown. |
|---|
| o7aCode | = Level 3 Header === Level 4 Header == | The title first level can be set (by default : 3). |
|---|
| POD | =head1 Level 1 heading=head2 Level 2 heading | |
|---|
| reStructuredText | Chapter 1 Title===============Section 1.1 Title-----------------Subsection 1.1.1 Title~~~~~~~~~~~~~~~~~~~~~~Section 1.2 Title-----------------Chapter 2 Title=============== | Any of the following characters can be used as the "underline": = - ` : ' " ~ _ * + # < >. The same character must be used for the same indentation level and may not be used for a new indentation level. |
|---|
| Textile | h1. Level 1 Headerh2. Level 2 Header | Up to 6 levels |
|---|
| Texy! | ### Level 1 Header## Level 2 HeaderorLevel 1 Header==============Level 2 Header-------------- | It's possible to optionally "close" the #-style headers with an equal number of #'s. The #-style headers support up to 6 levels. The underlined style headers support four levels (### *** === ----). Real levels are calculated dynamically. |
|---|
| txt2tags | = Level 1 Header === Level 2 Header ===== Level 3 Header === | Using + characters instead of = characters creates numbered headers (the default being unnumbered). |
|---|
| MediaWiki | == Level 2 Header ===== Level 3 Header === | = is available for level 1 header, but its use is discouraged in Wikipedia (reserved for page title). More = are possible, up to 6. |
|---|
Link Syntax
Comparing link syntax| Language | Syntax | Notes |
|---|
| Almost Free Text | [Link text (http://www.example.com)] | Also has support for targeting references within the same text, not just URLs. |
|---|
| BBCode | [url]http://www.example.com[/url][url=http://www.example.com]Link text[/url] | Some BBCode implementations can auto-parse URLs as well and convert them to a elements. |
|---|
| Markdown | [Link text](http://www.example.com "optional title attribute")or[Link text]and elsewhere: http://www.example.com "optional title attribute" | Allows for an optional title attribute. |
|---|
| o7aCode | [http://o7aCode.net/ :: official website of o7aCode :: en]o7aCode[http://o7aCode.net/]o7aCode[]http://o7aCode.net/[http://o7aCode.net/ ;; id = id_for_the_link :: official website]o7aCodeLightweight markup language... | All attributes can be filled in (href, title, lang ...).The last example allows to make a link to a wikipedia article. |
|---|
| POD | LLL | The core POD standard does not support external links with titles. |
|---|
| reStructuredText | `Link text `_ | Can also be done in a non-embedded format which may be seen as more readable. |
|---|
| Textile | "Link text (optional title attribute)":http://www.example.comor"Link text":aliasand elsewhere[alias (optional title attribute)]http://www.example.com | Allows for an optional title attribute. |
|---|
| Texy! | "Link text .(optional title)[opt. class or ID]{opt. style}":http://www.example.comor"Link text":aliasand elsewhere[alias]: http://www.example.com .(optional title)[opt. class or ID]{opt. style} | Texy! modifiers allows for an optional title attribute, CSS classes, ID, inline style and HTML element attributes. Example: "Link .(title)[class#id]{color: blue;rel:nofollow}" |
|---|
| txt2tags | [[Link text www.example.com]] | |
|---|
| MediaWiki | [[Internal page]][[Internal page|Displayed text]][http://www.example.com][http://www.example.com External link] | Wikitext can auto-parse URLs as well and convert them to a elements. |
|---|
Comparison of language features
A lot of this was taken from http://bluebones.net/2005/02/humane-text-formats/Comparing language features| Language | HTML export tool | HTML import tool | Tables | Link titles | class attribute | id attribute | Exportable formats | License |
|---|
| Almost Free Text | Yes | No | No | No | No | No | HTML, LaTeX, lout, DocBook, RTF | Clarified Artistic License |
|---|
| BBCode | No | No | No | No | No | No | ? | ? |
|---|
| Markdown | Yes | Yes | No | Yes | No | No | XHTML | BSD-style & GPL (both) |
|---|
| o7aCode | Yes | Yes | No | Yes | Yes | Yes | XHTML HTML ... | ? |
|---|
| POD | Yes | ? | No | Yes | ? | ? | HTML, man, LaTeX, plain text | Artistic License, Perl's license |
|---|
| reStructuredText | Yes | No | Yes | No | Yes | auto | Latex, XML, PseudoXML, HTML | Python License |
|---|
| Textile | Yes | No | Yes | Yes | Yes | Yes | XHTML | Textile License |
|---|
| Texy! | Yes | Yes | Yes | Yes | Yes | Yes | XHTML or HTML (always valid wellformed code) | GNU GPL v2 License |
|---|
| txt2tags | Yes | ? | Yes | Yes | ? | ? | HTML, XHTML, SGML, LaTeX, Lout, UNIX man, MoinMoin, MagicPoint, PageMaker | GPL |
|---|
| MediaWiki | Yes | Yes | Yes | Yes | Yes | Yes | ? | GNU GPL |
|---|
Related Ads
|
|