Cette page est née d'une question de
GiJo dans la
FAQ, et des réponses apportées par
DavidDelon.
Idée d'un dialecte wiki
On connait déjà les formattages spéciaux de
WikiNi qui permettent de rendre du code Delphi, PHP, etc.
Je souhaiterais que l'on généralise ces possibilités à d'autres formats. Dans d'autres CMS, j'utilise couramment les raccourcis typographiques. S'ils sont assez analogues à la syntaxe wiki telle qu'ele est illustrée dans
WikiNi, ils sont différents, et ont des buts différents. J'en prendrai 2 comme exemple : la syntaxe simplifiée SPIP, et la syntaxe élaborée wiki2xhtml, car je les cite souvent.
SPIP
La syntaxe SPIP est une version délibérément appauvrie de la syntaxe wiki des origines. Pour écrire un hyperlien, il suffit de taper le texte suivant: [Site SPIP->
http://www.spip.net]; ce qui donnera
Site SPIP. Pour créer des paragraphes, il suffit de laisser une ligne vide (deux retours chariots);
l'emphase est rendue par une paire d'accolades: "{mon texte}". Si on redouble ces accolades ("{{mon texte}}"), on obtient une
forte emphase.
La syntaxe SPIP a un immense défaut, à cette heure, elle ne permet pas de textes profondément structurés, avec plusieurs niveaux de titres. Elle ne permet que des titres de niveau <h3>, en triplant les accolades ("{{{mon texte}}}").
Mais sa qualité première est sa simplicité. SPIP est conçu pour permettre à un débutant complet de publier sur le web sans mettre les mains dans le code. En principe, si SPIP est installé par quelqu'un qui s'y connaît un peu, un novice doit pouvoir l'utiliser ensuite.
wiki2xhtml
Le principe de
wiki2xhtml est différent. C'est une tentative pour donner une syntaxe complète, fournissant un raccourci typographique pour chaque élément important de XHTML. Elle ne s'adresse pas d'abord au novice - même si celui-ci peut très bien apprendre rapidement à écrire rapidement et efficacement en wiki2xhtml -, mais au webmestre souhaitant formater de façon rapide et sans problèmes de sécurité des textes structurés, conformes aux standards, et intelligibles.
Rapidement, la bibliothèque programée par Olivier Meunier permet cela. Le texte est tout à fait lisible, facile et agréable à écrire; et c'est la seule syntaxe wikià ma connaissace qui permette d'écrire des hyperliens conformes aux standards (y compris les standards d'accessibilité), puisqu'elle prévoit de mentionner les atributs href, title, hreflang ; ce que ne prévoit pas la syntaxe de
WikiNi, ni celle de SPIP, ni celle d'aucun CMS que je connaisse (sauf
Dotclear, d'Olivier Meunier, qui supporte nativement la bibliothèque wiki2xhtml).
http://www.neokraft.net/sottises/wiki2xhtml/
Intérêt d'insérer des plages de dialectes
Ce que je propose, c'est que l'on donne à
WikiNi la possibilité d'interprêter d'autres syntaxes wiki, comme on lui donne la possibilité de présenter le code source en langage PHP. J'y vois des intérêts qui me sont personnels, mais qui pourraient intéresser d'autres utilisateurs de
WikiNi :
- L'import de textes écrits sous d'autres CMS serait facilité. Si je souhaite citer un billet que j'aurai écrit dans mon blog (qui tourne sous Dotclear), il me suffira d'insérer la citation entre les raccourcis suivants: %%(wiki2xhtml) ... %%; et le tour sera joué. Pas besoin de tour de passe-passe, et pas de perte de donnée.
- On pourra tirer parti des qualités de l'une ou l'autre syntaxe sans rompre la compatibilité descendante avec les versions antérieures de WikiNi. Si je souhaite formuler des hyperliens accessibles, la version actuelle de WikiNi ne me le permet pas; celle de wiki2xhtml si. La solution la plus lourde et la moins compatible est de réviser le formattage de WikiNi pour qu'il s'aligne sur les contraintes supérieures de wiki2xhtml, avec le risque de déconcerter les utilisateurs. La solution légère est de donner la possibilité aux utilisateurs le souhaitant (comme moi) d'insérer des plages d'une syntaxe alternative dans leurs textes.
[à poursuivre bientôt, plus ajout des liens hypertextes, mais on peut déjà commencer à réfléchir là-dessus]
--
GiJo
Cette idée n'est pas nouvelle, je l'avais suggérée il y a bien longtemps mais à l'époque nous n'avions pas jugé bon de se concentrer la dessus. Personnellement je suis toujours partant pour réalliser ce projet. Je pense qu'il serait génial de pouvoir utiliser différents dialectes dans Wikini. Et encore plus fort, ce serait qu'une page éditée dans un dialecte puisse l'être dans un autre. Je vais voir si je peux retrouver des discussions sur le sujet.
--
PatrickPaul
- Le problème qui se pose en fait véritablement c'est que les utilisateurs qui découvrent WikiNi risquent de se retrouver face à l'utilisation de plusieurs syntaxes différentes et finalement être complètement perdus... Je pense que le fait de pouvoir éditer dans son "dialecte" favori serait la chose la plus importante, de sorte que les non-initiés découvrent d'abord le dialecte de base, et puissent ensuite éventuellement s'intéresser à d'autres (notemment s'ils visitent d'autres sites). Le problème c'est que si tous les dialectes sont compatibles, on n'y gagne plus rien et même au contraire: on se limite aux fonctionnalités communes à tous les dialectes ! (si une fonctionnalité X n'existe pas dans tel dialecte, il faudrait tout de même pouvoir éditer le texte dans celui-ci, mais que deviendra la partie utilisant cette fonctionnalité après édition ?) De plus je crains que cela s'avère finalement extrêmement compliqué, et qu'on risque d'y passer vraiment beaucoup de temps sans que, finalement, cela serve tellement... Ce qui pourrait être bien par contre ce serait une fonction "d'importation" qui permettrait à l'utilisateur d'introduire une page dans un autre dialecte afin que le moteur la traduise en dialecte WikiNi et qu'ensuite l'utilisateur puisse éventuellement faire encore quelques modifications et enfin sauver la page. (la page serait donc toujours sauvée sous le format WikiNi, et l'utilisateur n'aurait ensuite pas la possibilité de le rééditer sous le dialecte d'origine après) L'avantage côté développement est que tout ce qu'il y a à faire ce sont des traducteurs dialecte étranger vers dialecte WikiNi (et non l'inverse), avec suppression de tout ce qui n'est pas supporté dans la syntaxe actuelle... -- LordFarquaad, qui redébarque ;-)
GiJoASuivre
Voir aussi :
DiscussionsRendreLesHandlersModulaire RendreModulaireLeFormateur WikiniSemantique
Voir egalement :
la contribution syntaxe spip