Wiki Dotclear vs Markdown

Les deux syntaxes wiki, Dotclear et Markdown, sont disponibles pour écrire les billets (et les pages, commentaires, …). La première syntaxe est intégrée depuis quasiment le début de Dotclear 1, la seconde est utilisable en installant le plugin idoine.

Ça fait un moment déjà que j’envisage de basculer sur Markdown parce que certaines applications tierces proposent cette syntaxe et me permettrait ainsi de faire un simple copié-collé pour alimenter ce blog. Par contre, ce qui me retient encore est que je ne sais si toutes les possibilités offertes par la syntaxe Wiki Dotclear sont également proposées par Markdown.

Alors voilà une sorte de table de correspondance entre les deux[1]. J’indiquerai (DC) quand il s’agira de la syntaxe Wiki Dotclear et (MD) pour Markdown (MDE quand ce sera uniquement dans l’extension Extra de Michel Fortin implémentée dans le plugin). D’autre part, quand plusieurs syntaxes sont proposées par Markdown pour un balisage, j’indiquerai la syntaxe la plus proche de Dotclear.

Marqueurs de début de ligne :

Titres :

Les niveaux 1 et 2 sont historiquement réservés au titre du blog et au titre du billet.

  • Niveau 3 = !!! + Titre (DC), ### + Titre (MD)
  • Niveau 4 = !! + Titre (DC), #### + Titre (MD)
  • Niveau 5 = ! + Titre (DC), ##### + Titre (MD)

Vous noterez l’inversion du nombre de symboles utilisés (décroissant pour Dotclear, croissant pour Markdown).

Listes :

  • Numérotées = # + élément de liste (DC), 1. + élément de liste (MD)
  • Non numérotées = * + élément de liste” (DC et MD)
  • 2e niveau = ## , #* , *# ou ** + ”élément de liste’” (DC), <4 espaces ou une tabulation> + 1. ou * (MD)

Divers :

  • Trait horizontal : ---- (DC et MD)
  • Texte pré-formatté = <espace> + texte (DC), <4 espaces ou une tabulation> + texte (MD)
  • Bloc de citation = > + texte (DC et MD)

Bloc HTML (sera interprété) :

    ///html
    code HTML

(DC)

code HTML

(MD)

Marqueurs de fin de ligne :

  • Retour à la ligne = %%% (DC), <2 espaces ou plus> (MD)
  • Une ligne vide termine un bloc (paragraphe, liste, …), dans les deux syntaxes (DC et MD)

Marqueurs indépendants de la position :

  • Emphase = '' + texte + '' (DC), * + texte + * (MD)
  • Forte emphase = __ + texte + __ (DC et MD)
  • Insertion = ++ + texte + ++ (DC), pas d’équivalence (MD)
  • Suppression = -- + texte + -- (DC), pas d’équivalence (MD)

Pour l’insertion et la suppression, Markdown impose l’usage des balises HTML <ins> et <del>.

  • Lien =
    • [ + url + ] (DC), < + url + > (MD)
    • [ + nom + | + url + ] (DC), [ + nom + ]( + url + ) (MD)
    • [ + nom + | + url + | + langue + ] (DC), pas d’équivalence (MD)
    • [ + nom + | + url + | + langue + | + titre + ] (DC), pas d’équivalence (MD)

La mention de la langue n’est pas possible avec Markdown sans passer par les balises HTML <a…/>. Par contre l’ajout d’un titre est possible : [ + nom + ]( + url + " + titre + ") et n’a pas d’équivalence dans Dotclear sans ajouter également la langue ; dans Dotclear il suffit de ne pas préciser la langue entre les deux | (correction effectuée ce jour à 18h).

  • Image =
    • (( + url + | + texte alternatif + )) (DC), ![ + texte alternatif + ]( + url + ) (MD)
    • (( + url + | + texte alternatif + | + position (L/G,C,R/D) + )) (DC), pas d’équivalence (MD)
    • (( + url + | + texte alternatif + | + position + | + titre + )) (DC), pas d’équivalence (MD)

La mention de la position n’est pas possible avec Markdown sans passer par les balises HTML/CSS <img … />. Par contre l’ajout d’un titre est possible : ![ + nom + ]( + url + " + titre + ") et n’a pas d’équivalence dans Dotclear sans ajouter également la position ; dans Dotclear il suffit de ne pas préciser la position entre les deux | (correction effectuée ce jour à 18h).

  • Ancre = ~ + ancre + ~ (DC), pas d’équivalence (MD)

Markdown impose l’usage de la balise <a name="ancre"></a> pour l’insertion d’une ancre au sein du contenu.

  • Acronyme = ?? + acronyme + | + titre + ?? (DC), *[ + acronyme + ]: + titre (en fin de contenu, toutes les occurrences de l’acronyme seront remplacées dans le texte, MDE).
  • Citation =
    • {{ + citation + }} (DC), pas d’équivalence (MD)
    • {{ + citation + | + langue + }} (DC) pas d’équivalence (MD)
    • {{ + citation + | + langue + | + url + }} (DC) pas d’équivalence (MD)

Markdown impose l’usage de la balise <q> pour l’insertion de citation en ligne.

  • Code = @@ + code + @@ (DC), ` + code + ` (MD)
  • Note = $$ + corps de la note + $$ (DC), [^ + refnote + ] dans le texte et [^ + refnote + ]: + corps de la note (en fin de contenu, MDE)
  • Littéral = \ + caractère (DC et MD)
  • Code HTML (sera interprété) = `` + code HTML + `` (DC), code HTML (MD)

Conclusion

De mon point de vue et sans tenir compte des possibilités supplémentaires de Markdown par rapport à la syntaxe Wiki Dotclear (tables, listes de définition, gestion des éléments indentés, listes dont les éléments peuvent contenir plusieurs paragraphes, …) le manque le plus flagrant est l’absence de prise en compte de la langue pour les liens, qui peut assez souvent être différente de la langue du contenu (je rédige en français et moult ressources liées sont en anglais), ce qui m’obligerait à basculer sur la représentation HTML de la balise.

Idem pour les citations en ligne, que j’utilise assez régulièrement, qui sont complètement absentes et imposent l’usage de la balise HTML correspondante.

Après avoir fait cette comparaison (certes incomplète du point de vue de Markdown et de son extension Extra) il apparaît que le choix de la syntaxe pourrait essentiellement dépendre du type de contenu à éditer. Markdown m’apparaît plus geek à l’usage que le Wiki Dotclear, mais c’est peut-être qu’après plusieurs milliers de billets écrits avec cette dernière syntaxe, j’en connais parfaitement les possibilités et les limites.

Il serait par exemple intéressant que je refasse ce billet en utilisant la syntaxe Markdown plutôt que le Wiki Dotclear, et que je vois si je peux “mieux” présenter cette comparaison qu’actuellement.

Note

[1] Je ne retiens ici que ce qui existe dans la syntaxe Wiki Dotclear.

Ajouter un commentaire

Les champs suivis d'un * sont obligatoires

Les commentaires peuvent être formatés en utilisant la syntaxe Markdown Extra.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/10232

Haut de page