User:Nichtich/Wikisyntax evolution

From Meta, a Wikimedia project coordination wiki
  • A wiki enables documents to be written collectively in a very simple markup language using a web browser. (en:Wiki)

wikisyntax, wikitext, wiki markup... its all the same and so different.

how it all began[edit]

  • Ward's syntax
  • CamelCase

extensions[edit]

  • math
  • timelines
  • hiero etc.

Table markup[edit]

...

...

Above all HTML table syntax is still supported and you can even mix it with Wikitext table markup. So table markup has increased complexity not only because of its own complexity but also because you have to maintain two independent, mingled syntaxes.

Link syntax gets broken[edit]

Some time in 2005 dynamic date links where added. A link to a page that's title looks like a date will be changed according to MediaWiki's preferences. For instance in the English Wikipedia [[2005-01-15]] will be virtually changed to [[2005]] [[January 15]] and [[15 January]] will be changed to [[January 15]]. This was no problem if it was an editing feature like signatures with ~~~~. But its a syntax feature! Depending on a switch in your MediaWiki installation [[2005-01-15]] may not represent a link to the page 2005-01-15 but represent two links to the pages 2005 and January 15. Strictly speaking this was the end of a common syntax for all Wikipedias.

Templates[edit]

...

  • only-5-times
  • recursion detection
  • default values

Template Programming[edit]

When was if-template created with which content?

2005-11-22 user:AzaToth introduced boonot-template in en.wikipedia:

{{if|1={{{1|}}}|2=|3=1}}

2005-11-23 user:AzaToth introduced booleq-template in en.wikipedia:

booleq: {{booleq/eq2|{{{1}}}=1|2={{{2}}}}}
booleq/eq2: {{{{{{2}}}|}}}
meanwhile changed to:
booleq: {{booleq/eq2|{{{1}}}=1|@={{{2}}}}}
booleq/eq2: {{{{{{@}}}|}}}

2005-11-27 user:AzaToth introduced qif-template in en.wikipedia:

{{{else{{{test|}}}|{{{test{{{test|}}}|{{{then|}}}}}}}}}

Parser Functions[edit]

..

Fixup[edit]

June 6th, 2006: Template HTML fixups

More template nightmares[edit]

Attempts to formalize wikimarkup[edit]

  • Several unfinished parsers
  • WikiSym 2006
  • abstract document model (for instance Wikipedia DTD)

What's next?[edit]

  • No intention to make it a Turing-complete language
  • There is little chance to get back to a sane syntax because this would mean to break backwards compatibility.

Sources[edit]