Qu'est ce donc ?
Une fois que vous saurez que ce nom un peu idiot signifie Yet Another Syntax Highlighter
, vous vous douterez de ce que propose ce plugin.
Il s'agit donc encore d'un plugin de colorisation syntaxique de fragments de code qui pourraient être glissés dans un billet.
Contrairement à certains de ses compères pour Dotclear2, YASH n'utilise pas GeSHi, ni n'opère la colorisation côté serveur. YASH est principalement un plugin permettant d'intégrer et d'utiliser facilement la librairie Javascript Syntax Highlighter
, opérant la colorisation côté client.
Comment ça s'installe ?
L'installation et la configuration de YASH sont quasiment identiques à ce qui est nécessaire pour le plugin commentsWikibar
: il suffit d'installer le plugin et d'aller l'activer via son interface d'administration. Il est également possible de contrôler un peu le rendu en fournissant une feuille de style personnalisée.
Quelles sont les possibilités ?
La version de la librairie Javascript Syntax Highlighter
embarquée est une version 1.6, en provenance du SVN au 29/05/2008. L'ensemble des scripts core
et brushes
constitue le fichier yash.js, sous forme minifiée
.
Il est donc possible d'avoir la colorisation pour les langages suivants :
- XML, XSLT, XHTML et HTML,
- CSS,
- Javascript,
- PHP,
- SQL,
- Python,
- Ruby,
- Java,
- C++,
- C#,
- Delphi,
- et Visual Basic[1]
Comment l'utilise-t-on ?
Au moment de la rédaction, deux solutions s'offrent à vous. Si vous êtes un adepte du clavier, vous pouvez avoir recours directement à la macro wiki yash.
Vous l'utiliserez de la sorte :
///yash php
<?php
echo 'Hello World !';
?>
///
Vous indiquez donc le langage en guise de paramètre lors de l'appel de la macro. Pour la saisie en XHTML, vous devrez insérer des blocs sous la forme :
<pre class="brush: html">
...
</pre>
Mais si vous êtes plutôt un adepte du clic, le plugin ajoute également un bouton[2] dans la barre de mise en forme de l'éditeur Dotclear.
Et à part ça ?
Rien. J'ai fini. Ou presque.
Les derniers détails scabreux :
- Il s'agit d'une version beta, mais je pense (j'espère) qu'elle ne devrait pas poser de problèmes particuliers.
- Le plugin nécessite Dotclear2 RC1, évidemment, mais également un thème tirant pleinement partie des
behaviors
de présentation. - L'archive ZIP (23 Ko) est disponible ici-même et le sera bientôt via plugins.dotaddict.org.
Commentaires
#1
Chty
vendredi 30 mai 2008, 15:02
Est-ce normal que je ne puisse pas voir le bouton dans la barre de mise en forme de l'éditeur Dotclear lors de la redaction d'une pages avec le plugin Pages ?
#2
Moe
vendredi 30 mai 2008, 15:56
Bonjour,
le prends pas mal, mais je vois pas trop l'intérêt de ce plugin face à SyntaxeHL qui utilise GeSHi. D'un côté on a un plugin qui colorie le code lors de l'enregistrement du billet et qui permet un affichage sur tous les navigateurs. De l'autre on a ton plugin qui nécessite de charger une bibliothéque de 30 ko pour colorer le code, et qui ne marche pas si Javascript (et Flash pour copier dans le presse-papier ?) est désactivé. Alors, pouquoi utiliser YASH ?
#3
Pep
vendredi 30 mai 2008, 16:22
Chty > Non, pas normal : il manque le behavior qui va bien côté admin. Je viens également de remarquer que c'était aussi le cas pour externalMedia. Ça va être corrigé.
Moe > C'est juste une alternative, rien de plus. Les avantages que je trouve (à titre purement personnel) dans cette approche :
Il s'agit donc juste d'une question de goût : pour ma part, ne pas offrir une colorisation m'a parfois manqué, mais je n'ai jamais pu me résoudre à la graver dans le marbre avec GeSHi ou un dérivé.
#4
Pep
vendredi 30 mai 2008, 16:57
Chty > Une beta2 est disponible.
#5
Chty
vendredi 30 mai 2008, 18:12
Pep > Tu es si rapide ! Merci !
#6
Sacha
vendredi 30 mai 2008, 19:22
Et puis Moe, la concurrence c'est bien ! Pour l'utilisateur, c'est de la diversité, de la liberté du choix.
Et même si rassembler les efforts donnerait des choses sans doute plus productives, ce n'est pas toujours évident de collaborer car chacun se voit obligé d'aller dans une seule direction qui n'est pas forcément la meilleure de son point de vue.
Enfin en Open Source, je pense qu'on peut assez facilement profiter du travail des autres sans nécessairement collaborer.
#7
julien
samedi 31 mai 2008, 10:05
Beuh, contrairement à Geshi, cela ne fait pas les scripts shell ou Perl. :-/
Par contre, une suggestion pour ce greffon : ajouter une petite page d'aide rappelant la syntaxe à utiliser et la liste des langages supportés (ma mémoire ressemblant plus à une passoire qu'autre chose et au vu de la faible fréquence d'utilisation que j'en aurais, c'est certain que je ne saurai plus l'utiliser le jour où je le voudrai).
#8
Chty
samedi 31 mai 2008, 10:14
julien: +1
#9
Pep
samedi 31 mai 2008, 13:34
julien > Mince ! Avec Python et Ruby dans la liste, je n'avais pas remarqué l'absence de Perl. C'est vrai que c'est bien dommage. Je vais voir ce que je peux faire moi-même de ce côté là.
Et j'ouvre également un ticket pour l'ajout d'une page d'aide.
#10
julien
samedi 31 mai 2008, 14:58
Et pas d'espoir pour le shell (bash) ? ;-)
Pour le Perl, je suis tombé sur cela. Peut-être est-ce facile à intégrer à ton greffon... et peut-être est-ce totalement n'importe quoi. (Je n'ai pas pris le temps de voir si cela semblait utilisable ou non.)
#11
Pep
samedi 31 mai 2008, 15:28
julien > Merci pour le lien concernant Perl, ça me semble moumoute. Pour le shell, si on se limite au bash, c'est jouable.
Je crois également que je vais revoir la façon de prendre en charge les langages ... ;-)
#12
julien
dimanche 1 juin 2008, 11:50
Ah, petit bug : le bouton de la baguette magique apparaît même sur les blogues où l'on n'a pas activé le plugin (testé lors de l'édition en mode wiki).
#13
Osku
jeudi 5 juin 2008, 15:19
Pas glop : http://www.sakeco.net/blog/post/200...
J'ai deux "pre"s dans la visualisation du billet. Une interférence qqpart ?
Quid de la localisation ? (view source/copy to clipboard/print)
#14
NiKo
jeudi 5 juin 2008, 22:00
J'applaudis !
Reste plus qu'à migrer 580 billets.
#15
Pep
mardi 17 juin 2008, 01:08
Osku > Noté. ;-)
Je regarderai tout ça dès que j'aurai de nouveau un peu de temps à consacrer à ce plugin.
NiKo > 580 ? Une paille ! :-p
#16
julien
dimanche 22 juin 2008, 19:40
Tiens, je viens de constater un petit détail de rien du tout : il y a un petit problème de canal alpha sur les icônes (dans l'interface d'admin) de la Wikibarre et de ce greffon YASH. Avec IE6, le fond de ces deux icônes s'affiche d'un gris pas joli plutôt que de la transparence souhaitée.
(Il y a le même problème avec les icônes des greffons Informations, Galerie et Blogroll, mais là tu n'y es pour rien. ;-) )
#17
julien
dimanche 22 juin 2008, 19:57
Pendant que j'y suis : il y a le même problème avec les icônes des greffons dayMode et Packager.
#18
Pep
mardi 24 juin 2008, 18:00
julien > C'est noté.
#19
Chty
mardi 12 août 2008, 14:01
Le bouton Yash dans l'edition d'un billet, apparait aussi quand le plugin est inactif :/
De plus tu devrais rajouter un petit texte de description / d'aide dans le plugin lui meme dans le cadre de gauche.
Vala
#20
brol
mardi 21 avril 2009, 17:34
Juste pour dire que 'copier vers le presse-papier' ne fonctionne pas chez moi quand je clique sur le lien dans abc de dotclear.