= Wiki Creole = [http://www.wikicreole.org/ Wiki Creole] is a tentative to create a compatibility layer between Wikis, by trying to define a kind of common syntax: ''Creole is a common wiki markup language to be used across different Wikis. It's not replacing existing markup but instead enabling wiki users to transfer content seamlessly across wikis, and for novice users to contribute more easily.'' While our current Wiki engine doesn't yet allow to implement compatibility with WikiCreole by the way of a plugin, our [WikiFormatting Wiki Syntax] happens to be ''close enough'' to the spec that only small tweaking would be needed to reach a good compatibility level. As MoinMoin switched to a creole friendlier markup in 1.6 and BitBucket also supports fully the WikiCreole 1.0 spec, the Trac wiki syntax should also become more creole-friendly. Complete compatibility is probably out of reach, but there are a number of things we can adopt without breaking anything. ---- {{{#!table style="margin:auto" ||= Cheat Sheet for Wiki Creole 1.0 =|| || [[Image(http://www.wikicreole.org/attach/CheatSheet/creole_cheat_sheet.png)]] || }}} ---- Possible changes: ||= Wiki Markup =||= Display =||= Status =|| |------------------------------------------ additional inline formatting: || `//italics//` || //italics// || in #4356 || || `**bold**` || **bold** || in #4356 || |------------------------------------------ alternate syntax for lists: {{{#!td {{{ * Bullet list * Second item ** Sub item }}} }}} {{{#!td * Bullet list * Second item ** Sub item }}} {{{#!td `** Sub item` will conflict with bold; we therefore really need to parse the structural markup before the inline markup here (see [TracDev/Proposals/VerticalHorizontalParsing vertical/horizontal parsing]). }}} |------------------------------------------ {{{#!td {{{ # Numbered list ## Second item ## Sub item }}} }}} {{{#!td # Numbered list ## Second item ## Sub item }}} {{{#!td No conflict but needs symmetry with the unordered lists }}} |------------------------------------------ alternate syntax for links: || `Link to [[wikipage]]` ||\ || Link to [[wikipage]] ||\ {{{#!td Obvious conflict with the syntax of WikiMacros. Fix is obvious as well: anything ''not'' recognized as a macro will be linkified in the `wiki:` realm (by default), instead of generating an error. See also [MoinMoin:HelpOnLinking#Linking]. }}} |------------------------------------------ || `[[URL|linkname]]` ||\ || [[URL|linkname]] ||\ || in #4356 (though not optimal) || |------------------------------------------ variant for headings: {{{#!td {{{ == Large heading === Medium heading ==== Small heading }}} }}} {{{#!td style="padding-left: 2em" == Large heading === Medium heading ==== Small heading }}} || in trunk || |------------------------------------------ white space: {{{#!td {{{ No linebreak! Use empty row (sic) }}} }}} {{{#!td No linebreak! Use empty row (sic) }}} || || |------------------------------------------ || `Force\\linebreak` ||\ || Force\\linebreak ||\ || || |------------------------------------------ {{{#!td {{{ ---- Horizontal line }}} }}} {{{#!td ---- Horizontal line }}} {{{#!td Note: for symmetry with `[[br]]` we could have an `[[hr]]` macro }}} |------------------------------------------ alternative to [[Image]] macro: || `{{Image.jpg|title}}` ||\ || {{Image.jpg|title}} ||\ || see also [MoinMoin:HelpOnLinking#Embedding] || |------------------------------------------ variant for pipe-based tables: {{{#!td {{{ |=|=table|=header| |a|table|row| |b|table|row| }}} }}} {{{#!td |=|=table|=header| |a|table|row| |b|table|row| }}} {{{#!td Probably a bit too extreme, as we already have issues like #6630. However, it must be noted that nearly the same example works with double pipes: {{{ ||=||=table||=header|| ||a||table|row|| ||b||table||row|| }}} {{{#!div ||=||=table||=header|| ||a||table||row|| ||b||table||row|| }}} }}} |------------------------------------------ blocks: {{{#!td {{{ {{{ == [[Nowiki]]: //**don't** format// }}} }}} }}} {{{#!td {{{ == [[Nowiki]]: //**don't** format// }}} }}} || || |------------------------------------------ Btw, another TODO for row separators: {{{ |------------------- }}} the should be ignored, or placed in an HTML comment. See also: * ticket #4356 * [http://www.wikicreole.org/wiki/Creole0.3 Creole 0.3] * [http://www.aifb.uni-karlsruhe.de/Publikationen/showPublikation_english?publ_id=1242 WIF] * [http://www.wikicreole.org/wiki/TracWiki TracWiki page on WikiCreole] * TracDev/Proposals/AdvancedWikiFormatting * [http://trac-hacks.org/wiki/WikiCreoleRendererPlugin Trac plugin which renders WikiCreole as HTML]