Wiki markup languages: syntax confusion


In the last couple of months I have been working with Twiki, PhpWiki, MediaWiki, WordPress and PBwiki (oh, the joys of being a freelancer). They all have their own pros and cons, but unfortunately also almost all have their own markup dialect. With markup I mean: the way you should indicate in regular text which parts should be bold/ italic/ heading/ code/ links/ …

The original C2 Wiki (1995) started with CamelCase keywords and ”‘bold”’ (that’s three single quotes) for bold, but quite some variants (sometimes improvements) have been created. The problem is that for each wiki system you use (admitted, I might be a heavier user than the average Joe) you have to reprogram your habits: how do I put a link, an image, a bullet list, a piece of code? It’s like switching between VBScript, VB.Net and C#, or QWERTY and AZERTY all the time.

Standard markup dialects

My suggestion:

I’m used to working on Wikipedia? I use the WikiText syntax everywhere. Or Textile, or Markdown. That way I just have to get used to one way of doing things.

Lightweight Markup languages

Wikimedia syntax
As used by Wikipedia: also called WikiText

Internal link [[keyword]] or [[keyword][text to show]]
External link [http://www.example.com text to show]
Image [[Image:example.jpg|Text to show]]
Bold/Italic '''bold'''/''italic''
Heading 1 =HEADING1=
Heading 2 ==HEADING==

Twiki syntax

Internal link CamelCase or [[keyword][text to show]]
External link http://www.example.com or [[http://xml.org XML]]
Image http://www.example.com/image.jpg
Bold/Italic *bold*/_italic_
Heading 1 ---+HEADING1
Heading 2 ---++HEADING

PBWiki syntax
Used on pbwiki hosted wikis.

Internal link CamelCase
External link http://www.example.com or [http://www.example.com|text to show]
Image http://www.example.com/image.jpg
Bold/Italic **bold**/''italic''
Heading 1 !HEADING1
Heading 2 !!HEADING

Textile syntax
Available as a plug-in for WordPress and some wiki systems

Internal link
External link "This is a link ":http://www.example.com
Image !http://www.example.com/image.jpg!
Bold/Italic *bold*/_italic_
Heading 1 h1. HEADING1
Heading 2 h2. HEADING

Markdown syntax

Internal link [text to show][id]
External link [This link](http://example.net/)
Image ![text to show](http://www.example.com/image.jpg)
Bold/Italic **bold**/_italic_
Heading 1 # HEADING1
Heading 2 ## HEADING

BBCode syntax
Used on lots of forums

Internal link
External link [URL=http://example.net/]Text to show[/URL]
Image [IMG]http://www.example.com/image.jpg[/IMG]
Bold/Italic [b]bold[/b]/[i]italic[/i]
Heading 1
Heading 2

And some more examples on List of lightweight markup languages.

💬 Web2.0