A lightweight markup language (LML), also termed a simple or humane markup language, is a markup language with simple, unobtrusive syntax. It is designed to be easy to write using any generic text editor and easy to read in its raw form. It is used in applications where it may be necessary to read the raw document and the final rendered output.
For instance, a person downloading a software library might prefer to read the documentation in a text editor rather than a web browser. Another use for such languages is to provide for data entry in web-based publishing, as in blogs and wikis, where the input interface is a simple text box. The server software then converts the input into a common document markup language like HTML.
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. Console browsers may also resort to similar display conventions.
In 1986 international standard SGML provided facilities to define and parse lightweight markup languages using grammars and tag implication. The 1998 W3C XML is a profile of SGML that omits these facilities. However, no SGML document type definition (DTD) for any of the languages listed below is known.
Types
Lightweight markup languages can be categorized by their tag types. Like HTML (<code><b>bold</b></code>), some languages use named elements that share a common format for start and end tags (e.g., BBCode <code>[b]bold[/b]</code>), whereas proper lightweight markup languages are restricted to ASCII-only punctuation marks and other non-letter symbols for tags, but some also mix both styles (e.g., Textile <code>bq.</code>) or allow embedded HTML (e.g., Markdown), possibly extended with custom elements (e.g., MediaWiki <syntaxhighlight lang="mediawiki" inline></syntaxhighlight>).
Most languages distinguish between markup for lines or blocks and for shorter spans of texts, but some only support inline markup.
Some markup languages are tailored for a specific purpose, such as documenting computer code (e.g., POD, reST, RD) or being converted to a certain output format (usually HTML or LaTeX) and nothing else, others are more general in application. This includes whether they are oriented on textual presentation or on data serialization.
Presentation oriented languages include AsciiDoc, atx, BBCode, Creole, Crossmark, Djot, Epytext, Haml, JsonML, MakeDoc, Markdown, Org-mode, POD (Perl), reST (Python), RD (Ruby), Setext, SiSU, SPIP, Xupl, Texy!, Textile, txt2tags, UDO and Wikitext.
Data serialization oriented languages include Curl (homoiconic, but also reads JSON; every object serializes), JSON, and YAML.
Comparison of language features
{| class="wikitable sortable" style="text-align:center"
|+ Comparing language features
|-
! Language
! HTML export tool
! HTML import tool
! Tables
! Link titles
! <code>class</code> attribute
! <code>id</code> attribute
! Release date
|-
! | AsciiDoc
|
|
|
|
|
|
| 2002-11-25
|-
! | BBCode
|
|
|
|
|
|
| 1998
|-
! | Creole
|
|
|
|
|
|
| 2007-07-04
|-
! | Djot
|
|
|
|
|
|
| 2022-07-30
|-
! | DokuWiki
|
|
|
|
|
|
| 2004-07-04
|-
! | Gemtext
|
|
|
|
|
|
| 2020
|-
! | GitHub Flavored Markdown
|
|
|
|
|
|
| 2011-04-28+
|-
! | Jira Formatting Notation
|
|
|
|
|
|
| 2002+
|-
! | Markdown
|
|
|
|
|
|
| 2004-03-19
|-
! | Markdown Extra
|
|
|
|
|
|
| 2013-04-11
|-
! | MediaWiki
|
|
|
|
|
|
| 2002
|-
! | MultiMarkdown
|
|
|
|
|
|
| 2009-07-13
|-
! | Org-mode
|
|
|
|
|
|
| 2003
|-
! | PmWiki
|
|
|
|
|
|
| 2002-01
|-
! | POD
|
|
|
|
|
|
| 1994
|-
! | reStructuredText
|
|
|-
! | setext<!--setext is the direct or indirect progenitor of (nearly?) all languages on this page, created 1991, introduced 1992; it should stay in this table, regardless of current use, to give context when the table is date-sorted-->
|
|
|
|
|
|
| 1992<!-- 1992-01-06 was the actual date first published use-->
|-
! | Slack
|
|
|
|
|
|
| 2013+
|-
! | Textile
|
|
|
|
|
|
| 2002-12-26
|-
! | Texy
|
|
|
|
|
|
| 2004
|-
! | TiddlyWiki
|
|
|
|
|
|
| 2004-09
|-
! | txt2tags
|
|
|
|
|
|
| 2001-07-26
|-
|
|
|
|
|
|
| 2016-03-16<!-- v2.12.535 -->
|}
Markdown's own syntax does not support class attributes or id attributes; however, since Markdown supports the inclusion of native HTML code, these features can be implemented using direct HTML. (Some extensions may support these features.)
txt2tags' own syntax does not support class attributes or id attributes; however, since txt2tags supports inclusion of native HTML code in tagged areas, these features can be implemented using direct HTML when saving to an HTML target.
DokuWiki does not support HTML import natively, but HTML to DokuWiki converters and importers exist and are mentioned in the official documentation. DokuWiki does not support class or id attributes, but can be set up to support HTML code, which does support both features. HTML code support was built-in before release 2023-04-04. In later versions, HTML code support can be achieved through plug-ins, though it is discouraged.
|colspan="9"
| CC BY-SA 1.0
|-
! | Djot
| Lua (originally), JavaScript, PHP, Prolog, Rust JavaScript, PHP, Python, Ruby
| Python, JavaScript, Haskell, C#, Java, PHP
| || || || || || ||
| || Man page, S5 etc.
| BSD-style & GPL (both)
|-
! | Markdown Extra
| PHP (originally), Python, Ruby
| || || || || || ||
| ||
| BSD-style & GPL (both)
|-
! | MediaWiki
| Perl, PHP, Haskell, Python
| || || || || || ||
| ||
| GNU GPL
|-
! | MultiMarkdown
| C, Perl
| || || || || || ||
| || OPML
| GPL, MIT
|-
! | Org-mode
| Emacs Lisp, Ruby (parser only), Perl, OCaml
| || || || || || || TaskJuggler, RSS, FreeMind
| GPL
|-
! | PmWiki
| PHP
| || || || || || ||
| ||
| GNU GPL
|-
! | POD
| Perl
| || || || || || ||
| || Man page, plain text
| Artistic License, Perl's license
|-
! | reStructuredText
| Python, Haskell (Pandoc), Java
| || || || || || ||
| || man, S5, Devhelp, Qt Help, CHM, JSON
| Public Domain
|-
! | Textile
| PHP, JavaScript, Java, Perl, Python, Ruby, ASP, C#, Haskell
| || || || || || ||
| ||
| Textile License
|-
! | Texy!
| PHP, C#, Java
| || || || || || ||
| ||
| GNU GPL v2 License
|-
! | txt2tags
| Python, PHP
| || || || || || || || Creole, AsciiDoc, MediaWiki, MoinMoin, PmWiki, DokuWiki, Google Code Wiki || roff, man, MagicPoint, Lout, PageMaker, ASCII Art, TXT
| GPL
|}
</div>
Comparison of lightweight markup language syntax
Inline span syntax
Although usually documented as yielding italic and bold text, most lightweight markup processors output semantic HTML elements <code>em</code> and <code>strong</code> instead. Monospaced text may either result in semantic <code>code</code> or presentational <code>tt</code> elements. Few languages make a distinction, e.g., Textile, or allow the user to configure the output easily, e.g., Texy.
LMLs sometimes differ for multi-word markup where some require the markup characters to replace the inter-word spaces (infix).
Some languages require one character as prefix and suffix, others need two or even three, or support both with slightly different meaning, e.g., different levels of emphasis.
{| class="wikitable sortable"
|+ Comparison of text formatting syntax
|-
!rowspan=2 | HTML output
!width="20%"| <code><strong>strongly emphasized</strong></code>
!width="20%"| <code><em>emphasized text</em></code>
!width="20%"| <code><code>code</code></code>
! semantic
|-
! <code><b>bold text</b></code>
! <code><i>italic text</i></code>
! <code><tt>monospace text</tt></code>
! presentational
|-
|rowspan=2 | AsciiDoc
|rowspan=2| <code><nowiki>*bold text*</nowiki></code>
| <code><nowiki>_italic text_</nowiki></code>
| <code><nowiki>`monospace text`</nowiki></code>
|rowspan=2| Can double operators to apply formatting where there is no word boundary (for example <code><nowiki>**b**old t**ex**t</nowiki></code> yields bold text).
|-
|
|
|-
! | BBCode
| <code><nowiki>[b]bold text[/b]</nowiki></code>
| <code><nowiki>[i]italic text[/i]</nowiki></code>
| <code><nowiki>[code]monospace text[/code]</nowiki></code>
| Formatting works across line breaks.
|-
! | Creole
| <code><nowiki>**bold text**</nowiki></code>
| <code><nowiki>//italic text//</nowiki></code>
| <code><nowiki>}</nowiki></code>
| Triple curly braces are for nowiki which is optionally monospace.
|-
! | Djot
| <code><nowiki>*bold text*</nowiki></code>
| <code><nowiki>_italic text_</nowiki></code>
| <code><nowiki>`monospace text`</nowiki></code>
|
|-
!rowspan=2 | DokuWiki
|rowspan=2 | <code><nowiki>**bold text**</nowiki></code>
|rowspan=2 | <code><nowiki>//italic text//</nowiki></code>
| <code><nowiki><code>code</code></nowiki></code>
|rowspan=2 |
|-
| <code><nowiki>monospace text</nowiki></code>
|-
! | Gemtext
|
|
| <code><nowiki>```</nowiki>alt text<br/>monospace text<br/><nowiki>```</nowiki></code>
| Text immediately following the first three backticks is alt-text.
|-
! | Jira Formatting Notation
| <code><nowiki>*bold text*</nowiki></code>
| <code><nowiki>_italic text_</nowiki></code>
| <code><nowiki></nowiki></code>
|
|-
!rowspan=2 | Markdown
| <code><nowiki>**bold text**</nowiki></code>
| <code><nowiki>*italic text*</nowiki></code>
|rowspan=2| <code><nowiki>`monospace text`</nowiki></code>
|rowspan=2| semantic HTML tags
|-
| <code><nowiki>__bold text__</nowiki></code>
| <code><nowiki>_italic text_</nowiki></code>
|-
! | MediaWiki
| <code><nowiki>bold text</nowiki></code>
| <code><nowiki>italic text</nowiki></code>
| <code><nowiki><code>monospace text</code></nowiki></code>
| mostly resorts to inline HTML
|-
!rowspan=2 | Org-mode
|rowspan=2| <code><nowiki>*bold text*</nowiki></code>
|rowspan=2| <code><nowiki>/italic text/</nowiki></code>
| <code><nowiki>=code=</nowiki></code>
|rowspan=2|
|-
| <code><nowiki>~verbatim~</nowiki></code>
|-
! | PmWiki
| <code><nowiki>bold text</nowiki></code>
| <code><nowiki>italic text</nowiki></code>
| <code><nowiki>@@monospace text@@</nowiki></code>
|
|-
! | POD
| <code><nowiki>B<bold text></nowiki></code>
| <code><nowiki>I<italic text></nowiki></code>
| <code><nowiki>C<monospace text></nowiki></code>
| Indented text is also shown as monospaced code.
|-
! | reStructuredText
| <code><nowiki>**bold text**</nowiki></code>
| <code><nowiki>*italic text*</nowiki></code>
| <code><nowiki>``monospace text``</nowiki></code>
|
|-
! | Setext
| <code><nowiki>**bold text**</nowiki></code>
| <code><nowiki>~italic text~</nowiki></code>
| <code><nowiki>`monospace text`</nowiki></code>
|
|-
! | Slack
| <code><nowiki>*bold text*</nowiki></code>
| <code><nowiki>_italic text_</nowiki></code>
| <code><nowiki>`monospace text`</nowiki></code>
| <code><nowiki>```block of monospaced text```</nowiki></code>
|-
!rowspan=2 | Textile
| <code><nowiki>*strong*</nowiki></code>
| <code><nowiki>_emphasis_</nowiki></code>
|rowspan=2| <code><nowiki>@monospace text@</nowiki></code>
| semantic HTML tags
|-
| <code><nowiki>**bold text**</nowiki></code>
| <code><nowiki>__italic text__</nowiki></code>
| presentational HTML tags
|-
!rowspan=2 | Texy!
|rowspan=2|<code><nowiki>**bold text**</nowiki></code>
| <code><nowiki>*italic text*</nowiki></code>
|rowspan=2|<code><nowiki>`monospace text`</nowiki></code>
|rowspan=2| semantic HTML tags by default, optional support for presentational tags
|-
| <code><nowiki>//italic text//</nowiki></code>
|-
!rowspan=2 | TiddlyWiki
|rowspan=2|<code><nowiki>bold text</nowiki></code>
|rowspan=2|<code><nowiki>//italic text//</nowiki></code>
| <code><nowiki>`monospace text`</nowiki></code>
|
|-
| <code><nowiki>``monospace text``</nowiki></code>
|-
! | txt2tags
| <code><nowiki>**bold text**</nowiki></code>
| <code><nowiki>//italic text//</nowiki></code>
| <code><nowiki>``monospace text``</nowiki></code>
|
|-
| <code><nowiki>*bold text*</nowiki></code>
| <code><nowiki>_italic text_</nowiki></code>
| <code><nowiki>```monospace text```</nowiki></code>
|
|}
Gemtext does not have any inline formatting, monospaced text (called preformatted text in the context of Gemtext) must have the opening and closing <code><nowiki>```</nowiki></code> on their own lines.
Emphasis syntax
In HTML, text is emphasized with the <code><em></code> and <code><strong></code> element types, whereas <code><i></code> and <code><b></code> traditionally mark up text to be italicized or bold-faced, respectively.
Microsoft Word and Outlook, and accordingly other word processors and mail clients that strive for a similar user experience, support the basic convention of using asterisks for boldface and underscores for italic style. While Word removes the characters, Outlook retains them.
<!-- This table is getting very wide, interfering with the Wikipedia sidebar. Maybe this table could be transposed? -->
{| class="wikitable sortable"
|+ Italic type or normal emphasis
|-
| Code
! !! !! !! !! !! !! !! !! !! !! !! !! !! !! !!
|-
! <code>*italic*</code>
| || || || || || || || || || || || || || || ||
|-
! <code>**italic**</code>
| || || || || || || || || || || || || || || ||
|-
! <code>_italic_</code>
| || || || || || || || || || || || || || || ||
|-
! <code>__italic__</code>
| || || || || || || || || || || || || || || ||
|-
! <code><nowiki>'italic'</nowiki></code>
| || || || || || || || || || || || || || || ||
|-
! <code><nowiki>italic</nowiki></code>
| || || || || || || || || || || || || || || ||
|-
! <code>/italic/</code>
| || || || || || || || || || || || || || || ||
|-
! <code>//italic//</code>
| || || || || || || || || || || || || || || ||
|-
! <code>~italic~</code>
| || || || || || || || || || || || || || || ||
|}
{| class="wikitable sortable"
|+ Bold face or strong emphasis
|-
| Code
! !! !! !! !! !! !! !! !! !! !! !! !! !! !! !!
|-
! <code>*bold*</code>
| || || || || || || || || || || || || || || ||
|-
! <code>**bold**</code>
| || || || || || || || || || || || || || || ||
|-
! <code>__bold__</code>
| || || || || || || || || || || || || || || ||
|-
! <code><nowiki>bold</nowiki></code>
| || || || || || || || || || || || || || || ||
|-
! <code><nowiki>bold</nowiki></code>
| || || || || || || || || || || || || || || ||
|}
Editorial syntax
In HTML, removed or deleted and inserted text is marked up with the <code><del></code> and <code><ins></code> element types, respectively. However, legacy element types <code><s></code> or <code><strike></code> and <code><u></code> are still also available for stricken and underlined spans of text.
{| class="wikitable sortable"
|+ Underlined or inserted text
|-
!
! DokuWiki !! Jira !! Markdown !! Org-mode !! Setext !! Texy! !! TiddlyWiki !! txt2tags
|-
! <code>_underline_</code>
| || || || || || || ||
|-
! <code>__underline__</code>
| || || || || || || ||
|-
! <code>+underline+</code>
| || || || || || || ||
|-
! <code>++underline++</code>
| || || || || || || ||
|}
AsciiDoc, ATX, Creole, MediaWiki, PmWiki, reST, Slack, Textile and WhatsApp do not support dedicated markup for underlining text. Textile does, however, support insertion via the <code>+inserted+</code> syntax.
{| class="wikitable sortable"
|+ Strike-through or deleted text
|-
!
! Jira !! Markdown !! Org-mode !! Slack !! Textile !! Texy !! TiddlyWiki !! txt2tags !! WhatsApp
|-
! <code>~stricken~</code>
| || || || || || || || ||
|-
! <code>~~stricken~~</code>
| || || || || || || || ||
|-
! <code>+stricken+</code>
| || || || || || || || ||
|-
! <code>-stricken-</code>
| || || || || || || || ||
|-
! <code>--stricken--</code>
| || || || || || || || ||
|}
ATX, Creole, MediaWiki, PmWiki, reST and Setext do not support dedicated markup for striking through text.
DokuWiki supports HTML-like <code><nowiki><del>stricken</del></nowiki></code> syntax, even with embedded HTML disabled. <!-- I would have added it to the table, but that would make it confusing for languages that do support the syntax but who interpret it as raw HTML instead of native syntax, making the syntax not 'dedicated' -->
AsciiDoc supports stricken text through a built-in text span prefix: <code><nowiki>[.line-through]#stricken#</nowiki></code>.
Programming syntax
Quoted computer code is traditionally presented in typewriter-like fonts where each character occupies the same fixed width. HTML offers the semantic <code><code></code> and the deprecated, presentational <code><tt></code> element types for this task.
{| class="wikitable sortable"
|+ Monospaced font, teletype text or code
|-
| Code
! !! !! !! !! !! !! !! !! !! !! !! !! !! !!
|-
! <code>@code@</code>
| || || || || || || || || || || || || || ||
|-
! <code>@@code@@</code>
| || || || || || || || || || || || || || ||
|-
! <code>`code`</code>
| || || || || || || || || || || || || || ||
|-
! <code>``code``</code>
| || || || || || || || || || || || || || ||
|-
! <code>```code```</code>
| || || || || || || || || || || || || || ||
|-
! <code>=code=</code>
| || || || || || || || || || || || || || ||
|-
! <code>~code~</code>
| || || || || || || || || || || || || || ||
|-
! <code>+code+</code>
| || || || || || || || || || || || || || ||
|-
! <code>++code++</code>
| || || || || || || || || || || || || || ||
|-
! <code><nowiki></nowiki></code>
| || || || || || || || || || || || || || ||
|-
! <code><nowiki>}</nowiki></code>
| || || || || || || || || || || || || || ||
|-
! <code><nowiki>|code|</nowiki></code>
| || || || || || || || || || || || || || ||
|-
!<code>;;code;;</code>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|}
Mediawiki and Gemtext do not provide lightweight markup for inline code spans.
Heading syntax
Headings are usually available in up to six levels, but the top one is often reserved to contain the same as the document title, which may be set externally. Some documentation may associate levels with divisional types, e.g., part, chapter, section, article or paragraph. This article uses 1 as the top level, but index of heading levels may begin at 1 or 0 in official documentation.
Most LMLs follow one of two styles for headings, either Setext-like underlines or atx-like line markers, or they support both.
Underlined headings
<pre>Level 1 Heading
===
Level 2 Heading
---------------
Level 3 Heading
~~~~~~~~~~~~~~~</pre>
The first style uses underlines, i.e., repeated characters (e.g., equals <code>=</code>, hyphen <code>-</code> or tilde <code>~</code>, usually at least two or four times) in the line below the heading text.
{| class="wikitable sortable"
|+ Underlined heading levels
!
! <code><nowiki>=</nowiki></code>
! <code><nowiki>-</nowiki></code>
! <code><nowiki>~</nowiki></code>
! <code><nowiki>*</nowiki></code>
! <code><nowiki>#</nowiki></code>
! <code><nowiki>+</nowiki></code>
! <code><nowiki>^</nowiki></code>
! <code><nowiki>_</nowiki></code>
! <code><nowiki>:</nowiki></code>
! <code><nowiki>"</nowiki></code>
! <code><nowiki>'</nowiki></code>
! <code><nowiki>`</nowiki></code>
! <code><nowiki>.</nowiki></code>
!title="Minimum of characters"| Min. length
<!--! mix-->
|-
! | AsciiDoc
| || || || || || || || || || || || || || 2
|-
! | Markdown
| || || || || || || || || || || || || || 1
|-
! | reStructuredText
| colspan="13" || heading width
|-
! | Setext
| || || || || || || || || || || || || ||
|-
! | Texy!
| || || || || || || || || || || || || || 3
|-
|}
Headings may optionally be overline in reStructuredText, in addition to being underlined.
Prefixed headings
<pre># Level 1 Heading
- Level 2 Heading ##
- Level 3 Heading ###</pre>
The second style is based on repeated markers (e.g., hash <code>#</code>, equals <code>=</code> or asterisk <code>*</code>) at the start of the heading itself, where the number of repetitions indicates the (sometimes inverse) heading level. Most languages also support the reduplication of the markers at the end of the line, but whereas some make them mandatory, others do not even expect their numbers to match.
{| class="wikitable sortable"
|+ Line prefix (and suffix) headings
!
! <code><nowiki>=</nowiki></code>
! <code><nowiki>#</nowiki></code>
! <code><nowiki>*</nowiki></code>
! <code><nowiki>!</nowiki></code>
! <code><nowiki>+</nowiki></code>
! Suffix
! Levels<!--i.e., more chars mean higher level, including smaller letters.-->
! Indentation<!-- possible either additional to or instead of repetition or not at all -->
|-
! | AsciiDoc
| || || || ||
| || 1–6 ||
|-
! | Creole
| || || || ||
| || 1–6 ||
|-
! | DokuWiki
| || || || || || || 6-1 ||
|-
! | Gemtext
| || || || ||
| || 1–3 ||
|-
! | Markdown
| || || || ||
| || 1–6 ||
|-
! | MediaWiki
| || || || ||
| || 1–6 ||
|-
! | Org-mode
| || || || ||
| || 1– +∞ ||
|-
! | PmWiki
| || || || ||
| || 1–6 ||
|-
! | Texy!
| || || || ||
| || 6–1, dynamic ||
|-
! | TiddlyWiki
| || || || ||
| || 1–6 ||
|-
! | txt2tags
| || || || ||
| || 1–6 || <!--Using <code>+</code> characters instead of <code>=</code> characters creates numbered headers (the default being unnumbered).-->
|-
|}
Org-mode supports indentation as a means of indicating the level.
BBCode does not support section headings at all.
POD and Textile choose the HTML convention of numbered heading levels instead.
{| class="wikitable sortable"
|+ Other heading formats
|-
! Language
! Format
|-
! | POD
|<pre>=head1 Level 1 Heading
=head2 Level 2 Heading</pre>
|-
! | Jira || || || || || || || || || || || 0+ || || indent
|-
! | Textile
| || || || || || || || || || || || 0 || 1+ || repeat
|-
! | Texy!
| || || || || || || || || || || || 2+ || || indent
|}
Microsoft Word automatically converts paragraphs that start with an asterisk <code>*</code>, hyphen-minus <code>-</code> or greater-than bracket <code>></code> followed by a space or horizontal tabulator as bullet list items. It will also start an enumerated list for the digit 1 and the case-insensitive letters a (for alphabetic lists) or i (for roman numerals), if they are followed by a period <code>.</code>, a closing round parenthesis <code>)</code>, a greater-than sign <code>></code> or a hyphen-minus <code>-</code> and a space or tab; in case of the round parenthesis an optional opening one <code>(</code> before the list marker is also supported.
Languages differ on whether they support optional or mandatory digits in numbered list items, which kinds of enumerators they understand (e.g., decimal digit 1, roman numerals i or I, alphabetic letters a or A) and whether they support to keep explicit values in the output format. Some Markdown dialects, for instance, will respect a start value other than 1, but ignore any other explicit value.
{| class="wikitable sortable sort-under"
|+ Ordered, enumerated list items
!
! <code><nowiki>+</nowiki></code>
! <code><nowiki>#</nowiki></code>
! <code><nowiki>-</nowiki></code>
! <code><nowiki>.</nowiki></code>
! <code><nowiki>#1</nowiki></code>
! <code><nowiki>1.</nowiki></code>
! <code><nowiki>1)</nowiki></code>
! <code><nowiki>1]</nowiki></code>
! <code><nowiki>1}</nowiki></code>
! <code><nowiki>(1)</nowiki></code>
! <code><nowiki>[1]</nowiki></code>
! <code><nowiki>{1}</nowiki></code>
!
!
!
!
!
!
! nest
|-
! | AsciiDoc
| || || || || || || || || || || || || colspan="4" || 0 || || repeat or alternate the marker
|-
! | DokuWiki
| || || || || || || || || || || || || || || || || 2+ || 0+ || indent
|-
! | Jira, MediaWiki, Textile, TiddlyWiki
| || || || || || || || || || || || || || || || || 0 || 1+ || repeat
|-
! | Markdown
| || || || || || || || || || || || || || || || || 0–3 || 1–3 || indent
|-
! | Org-mode
| || || || || || || || || || || || || colspan="2" || || || 0+ || || indent
|-
! | Texy!
| || || || || || || || || || || || || colspan="2" || || || 2+ || || indent
|-
|}
Slack assists the user in entering enumerated and bullet lists, but does not actually format them as such, i.e., it just includes a leading digit followed by a period and a space or a bullet character <code>•</code> in front of a line.
{| class="wikitable sortable"
|+ Labeled, glossary, description/definition list syntax
! Languages
! Term being defined !! Definition of the term
|-
! rowspan="3"| AsciiDoc
|<code><nowiki>Term::</nowiki></code>
| rowspan="3" |No specific requirements; may be mixed with ordered or unordered lists, with nesting optional
|-
|<code><nowiki>Term::::</nowiki></code>
|-
|<code><nowiki>Term;;</nowiki></code>
|-
! MediaWiki
|rowspan=3| <code><nowiki>; Term</nowiki></code>
|rowspan=3| <code><nowiki>: Definition</nowiki></code>
|-
! Textile
|-
!TiddlyWiki
|-
!Texy!
|colspan="2" | <pre><nowiki>Term:
- Definition</nowiki></pre>
|-
! Org-mode
|colspan="2" | <code><nowiki>- Term :: Definition </nowiki></code>
|-
|}
Quotation syntax
Table syntax
Historical formats
The following lightweight markup languages, while similar to some of those already mentioned, have not yet been added to the comparison tables in this article:
- EtText: circa 2000.
- Grutatext: circa 2002.
See also
- Comparison of document-markup languages
- Comparison of documentation generators
- Lightweight programming language
Notes
References
External links
de:Auszeichnungssprache#Lightweight Markup Language
