Yes, The current wiki syntax is dreadful, and getting
worse with
every release. But using XML doesn't solve the problem, it just
puts up a big barrier to entry for newcomers.
Fully agreed, and here are some of the biggest problems with it:
1. It's not thought out
The whole syntax is something which just grew over time, it's not
clean, it's not pretty and it's not consistent, and neither is it easy
to parse since there's often no definition for how things are supposed
to work aside from the parser code itself and conventions of use.
2. Too much reliance on too few meta characters
* [] is used for one thing (good)
* [[]] is used for several different *completely different* things,
** [[Normal links]]
** [[Image:Magical includes of images.png]]
** [[th:is]] is an interwiki link, [[thi:s]] is not, how about [[:th:is]]?
** [[January 1]], [[1970]] <- things that get magical transformations.
** Go to a [[Wikipedia:Page]] and add a [[Category:Tag]] to it, it
might not do what you expect at first.
* {{this}} is used for one thing, and easy to distinguish from {{{this}}}.
I've sometimes pondered how to solve this, and I've often come to the
conclution that adding another type of double bracket (««»») for magic
stuff would solve a lot
««Image:Foo.png»» would work like [[Image:Foo.png]] does currently and
[[Image:Foo.png]] would work like [[:Image:Foo.png]] does now (no need
to escape the magicness since [[]] would never be used for anything
besides ordinary links), ««Category:Foo»» and [[Category:Foo]] would
be the same, so would interwiki links.
Then I've often thought that that might suck just as much as well,
because at least in the case of categories and interwiki links and
other metadata it would be best to just add them to some
yet-to-be-made metadata page, this would make it easier to maintain
these links (interwiki links could even be maintained automatically
across projects)
I'm sure others have alot of nice ideas on how to change the syntax to
be more consistent and/or easier to parse, which of course brings us
to the next problem:
3. We can't (easily) change it
It sucks but we really can't, in would instantly render gigabytes of
current wikitext incompatable with the parser, there are basically two
solutions to this problem: continue supporting two syntaxes for some
time which puts a big limit on what kind of changes can be made or
automatically convert them with some kind of bot bot.