Wiki markup languages: syntax confusion
17 Nov 2005
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:
- create a limited number of standard wiki markup syntaxes (let’s say 4),
- let every wiki system offer their users a choice between them.
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==
|
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
|
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.