Tiki-Flavored Markdown
New in Tiki25 is an option to use Tiki Flavored Markdown, which is essentially GitHub Flavored Markdown (GFM) with additional syntax, which itself is essentially CommonMark with additional syntax, which itself is a standardized Markdown.
GFM is a strict superset of CommonMark.
CommonMark is a "A strongly defined, highly compatible specification of Markdown": https://commonmark.org/
Over the last few years, it has become the de facto standard for textual syntax on the web.
Why did Tiki move to this?
Tiki has always supported Open Standards. If such a standard had existed when Tiki started, we would have used it.
History
When Tiki started in 2002, there was no standard for textual syntaxes. So the Tiki community, like other wiki engines just invented a syntax. No grand design. Just grew organically.
In 2006, wiki engines got together to elaborate a standard:
And Tiki was on board with moving to a standard:
- https://dev.tiki.org/item1781-Support-for-the-Wiki-creole-markup-syntax
- http://www.wikicreole.org/wiki/TikiWikiCMSGroupware
Some believed that WYSIWYG editors would make this need go away. We didn't see how that was possible:
Unfortunately, Wiki Creole didn't gather significant adoption. Why? Likely many reasons, but one is: MediaWiki (huge market share with Wikipedia and many other projects) didn't adopt it.
Be it Wiki Creole or something else, it seemed inevitable that a wiki/textual syntax would eventually become a de facto standard. But which one?
- MediaWiki's syntax?
- https://en.wikipedia.org/wiki/AsciiDoc (started in 2002)
- https://en.wikipedia.org/wiki/Markdown (started in 2004)
- https://en.wikipedia.org/wiki/ReStructuredText (started in 2002)
- Or one of the many others?: https://en.wikipedia.org/wiki/Lightweight_markup_language
Over time, Markdown popularity grew, and the CommonMark project made it easy to adopt for developers.
Also, a new crop of Markdown WYSIWYG editors appeared, and matured. Either
- Open Source or proprietary
- Web-based, mobile or desktop apps.
In 2019, Tiki20 added the possibility to add CommonMark to a section of a page: PluginMarkdown.
In 2022, Tiki25 added the possibility to add Tiki Flavored Markdown by default to all content, and use the TOAST UI Editor.
The Future
Next steps:
- Tiki Flavored Markdown will become the default syntax at one point.
What will happen to Tiki syntax?
For the foreseeable future, it will remain an option in Tiki
- The code is stable so we don't need to invest time on it.
- 2 decades of Tiki users have content using it. Migration is just too much work.
However, development and innovation will shift to Tiki Flavored Markdown so over time, there will be more and more incentive to migrate.
In 2023, we will see a lot of work on migration as Tiki instances big and small upgrade to Tiki25 and Tiki26.
FAQ
Is it possible to use Tiki Flavored Markdown for new content, while old content remains in Tiki syntax.
Yes, this is the default behavior.
What parser does Tiki use?
league/commonmark which has over 130 million downloads.
Why didn't Tiki move to something else sooner?
Changing wiki syntax is one of the most disruptive things you can do to a wiki engine. It affects all the content. And it affects all the users. Thus, it is a huge quantity of work, and has the risk of alienating members of the community (they feel it imposes work on them, and they don't see the benefits).
The recent availability of WYSIWYG editors for Markdown increased the impetus to move forward.
Also, it's acceptable to do a change like this every 10 or 15 years. So you need to be confident in your decision. And while CommonMark has become the de facto standard, the spec has still not reached 1.0.
What does Tiki offer that goes beyond the Markdown standard?
- All Plugins continue to work, with same syntax (which is quite good)
- wiki-style links including links to wiki pages (both internal and sister wiki) - CamelCased ones with wiki words enabled
- Heading with extra features like open/close and numbering
- Wiki Argument Variables
- ~ np ~ ~ /np ~ style of not parsed blocks. (kept from Tiki syntax)
- Smileys will be converted to Emojis
- User Mentions
- Dynamic variables
- Typography
- and likely more as we test more.
Related
- Converting from Tiki syntax to Markdown
- WYSIWYG and Markdown
- The Relentless March of Markdown And its arrival in Tiki 25: https://fosdem.org/2023/schedule/event/collab_tiki/
- Slides: The Relentless March of Markdown