Bonjour,
je cherche à écrire un plug-in qui permet de modifier une zone balisée dans un article écrit dans le back-end.
Par exemple :
blablabla blablablablabla blablabla
Dans spip, je sais que l’on peut réaliser des balises « simples » à l’aide des modèles ou des balises dynamiques par exemple, mais je n’ai pas trouvé comment on peut réaliser des balises délimitant « des zones ».
J’ai regardé les plug-in existant, et par exemple j’ai regardé le code de « couleurs » : https://contrib.spip.net/Des-couleurs-dans-le-texte-905
L’auteur obtient bien un système de « zones délimitées » avec lesquelles il peut jouer, mais au prix d’un passage par les pipelines et d’une analyse (par expression régulière) du texte qui y passe. Ca me semble périlleux parce que ca revient plus ou moins à réécrire un « parser » spip si j’ose dire.
N’y a-t-il aucune autre solution sous spip ? Par exemple, en natif sous spip il y a bien aaa qui existe. Peut-on reproduire cela ? Je n’ai pas su trouver où était le code (justement) associé pour m’en inspirer. Quelqu’un a une idée ?
En vous remerciant,
Mikhaël
Il reste peut-être à regarder le plugin enluminures typographiques qui augmente la barre typo de quelques raccourcis
Il me semble que ça passe de toute façon par des pipelines, expressions régulières, preg_replace…
Bonjour
Pour ce genre de petites choses il n’est pas forcément nécessaire de passer par un plugin. Les modèles sont là pour ça :
https://www.spip.net/fr_article3454.html
Et il est possible de pousser le vide un peu plus loin en fournissant une interface pour chaque modèle :
https://contrib.spip.net/Plugin-Inserer-Modeles
Et la cerise sur le gâteau : si on utilise ce plugin, on peut créer une icône qui permet d’appeler l’interface du modèle directement depuis la barre typo 
pw
Le 2017-08-15 22:24, Mikhaël MYARA a écrit :
Bonjour,
je cherche à écrire un plug-in qui permet de modifier une zone balisée dans un article écrit dans le back-end.
Par exemple :
blablabla blablablablabla blablabla
Dans spip, je sais que l’on peut réaliser des balises « simples » à l’aide des modèles ou des balises dynamiques par exemple, mais je n’ai pas trouvé comment on peut réaliser des balises délimitant « des zones ».
J’ai regardé les plug-in existant, et par exemple j’ai regardé le code de « couleurs » : https://contrib.spip.net/Des-couleurs-dans-le-texte-905
L’auteur obtient bien un système de « zones délimitées » avec lesquelles il peut jouer, mais au prix d’un passage par les pipelines et d’une analyse (par expression régulière) du texte qui y passe. Ca me semble périlleux parce que ca revient plus ou moins à réécrire un « parser » spip si j’ose dire.
N’y a-t-il aucune autre solution sous spip ? Par exemple, en natif sous spip il y a bien aaa qui existe. Peut-on reproduire cela ? Je n’ai pas su trouver où était le code (justement) associé pour m’en inspirer. Quelqu’un a une idée ?
En vous remerciant,
Mikhaël
Salut
C'est une extension à textwheel non ? Le moteur entre utilisé par SPIP
pour parser les textes.
Pas de lien de documentation en tête
Km
En fait les modèles ne sont pas tout à fait des balises enveloppantes. C’est le code généré par le modèle qui peut ensuite l’être. On y met tous les traitements et tout le code html souhaité.
Par exemple si on appelle un modèle de cette façon :
<mon_modele|titre=Mon titre|texte=mon texte>
On peut récupérer tout ça dans squelettes/modeles/mon_modele.html et utiliser le code que l’on désire pour baliser tout ça :
[
(#ENV*{titre}|typo)
]
[
(#TEXTE)
]
Par exemple…
Le 2017-08-16 11:46, Mikhael Myara a écrit :
Bonjour,
ce que vous dites m’intéresse mais je ne vois pas, dans le lien que vous indiquez, de balise « enveloppante », avec des syntaxes type
aaaa par exemple. Pouvez-vous mieux préciser ce à quoi vous pensez ? Ca m’intéresse !
Entre temps j’ai regardé comme proposé par chankalan le plug-in barre typo et en effet, celui-ci tape dans les pipelines et utilise des expressions régulières si j’ai compris le code, au moins pour tout ce qui est du type [] par exemple.
++
Mike
Le 16 août 2017 à 07:44, p.weber@free.fr a écrit :
Bonjour
Pour ce genre de petites choses il n’est pas forcément nécessaire de passer par un plugin. Les modèles sont là pour ça :
https://www.spip.net/fr_article3454.html
Et il est possible de pousser le vide un peu plus loin en fournissant une interface pour chaque modèle :
https://contrib.spip.net/Plugin-Inserer-Modeles
Et la cerise sur le gâteau : si on utilise ce plugin, on peut créer une icône qui permet d’appeler l’interface du modèle directement depuis la barre typo 
pw
Le 2017-08-15 22:24, Mikhaël MYARA a écrit :
Bonjour,
je cherche à écrire un plug-in qui permet de modifier une zone balisée dans un article écrit dans le back-end.
Par exemple :
blablabla blablablablabla blablabla
Dans spip, je sais que l’on peut réaliser des balises « simples » à l’aide des modèles ou des balises dynamiques par exemple, mais je n’ai pas trouvé comment on peut réaliser des balises délimitant « des zones ».
J’ai regardé les plug-in existant, et par exemple j’ai regardé le code de « couleurs » : https://contrib.spip.net/Des-couleurs-dans-le-texte-905
L’auteur obtient bien un système de « zones délimitées » avec lesquelles il peut jouer, mais au prix d’un passage par les pipelines et d’une analyse (par expression régulière) du texte qui y passe. Ca me semble périlleux parce que ca revient plus ou moins à réécrire un « parser » spip si j’ose dire.
N’y a-t-il aucune autre solution sous spip ? Par exemple, en natif sous spip il y a bien aaa qui existe. Peut-on reproduire cela ? Je n’ai pas su trouver où était le code (justement) associé pour m’en inspirer. Quelqu’un a une idée ?
En vous remerciant,
Mikhaël