Salut!
Je voulais mettre en page du code sans passer par le moulin à légumes. J'ai lu
la page d'aide sur les "raccourcis typographiques" et j'ai trouvé:
-----------------------------------------------------------------------------
Dans certains cas, il peut être utile d'indiquer à SPIP que certaines parties
d'un document ne doivent pas être « traitées » par le filtre des raccourcis
typographiques : vous ne voulez pas corriger la typographie, afficher du code
source (par exemple en PHP, JavaScript...)...
Le code de ce raccourci est : « <HTML>texte à ne pas transformer;
attention!</HTML> », ce qui donne : « texte à ne pas transformer; attention!
(ici, notez l'absence d'espaces avant le point-virgule et le point
d'exclamation).
-----------------------------------------------------------------------------
Or, il faut être dingue pour utiliser parmi tous les noms qu'il y a au monde,
la tag "HTML" qui est la clé de voûte des pages Internet.
Ce serait comme si je m'appelais Nom . Ça arrive au cinéma (surréaliste) mais
c'est tout.
Un problème effrayant surgit si on jongle entre des systèmes et des sites: si
je copie et je colle mon article d'un SPIP à un PIPS (supposons), qui me dit
que de l'autre côté, chez les "pipseurs", il n'y a pas eu un informaticien
qui par paresse de chercher un nom plus adapté, a utilisé la tag "HTML" avec
une autre signification? Si des spipeurs l'ont fait, pourquoi pas des
pipseurs.
Alors, je vais utiliser la tag "donotspip" qui me semble moins escomptée (les
pipseurs utiliseraient au plus la tag "donotpips" ).
Si je déplace le corps de mes articles et que la tag n'est pas connue par le
système d'arrivée et que ce système d'arrivée n'est pas un système de
validation, elle sera ignorée.
Comment faire?
1.Prenez ecrire/inc_texte.php3
2.Cherchez
// Mise de cote des echappements
function echappe_html($letexte,$source) {
3. Insérez _juste dessous_ (donc en début du corps de la fonction) les 3
lignes:
//added by me
$letexte = (ereg_replace ("<donotspip>","<html>", $letexte ));
$letexte = (ereg_replace ("<\/donotspip>","</html>", $letexte ));
A quoi ça correspond? Bon, si SPIP veut utiliser la tag "html" à son
intérieur, il peut le faire, tant qu'il ne la sauve pas dans la BD, car je me
réserve de trafiquer le contenu de la BD avec d'autres moyens que SPIP. Alors
s'il y a des tags "donotspip" il les transforme en "html" juste là où on
échappe les raccourcis typographiques, pas ailleurs.
Je viens de le faire sur SPIP 1.5.1; merci de me faire savoir si ça pose des
problèmes avec d'autres versions plus récentes.
Et pour finir et pour jouer un peu, c'est un vieux problème: si vous avez cinq
manuscripts médiévaux et que quatre disent "html" et un seul dit "donotspip",
il y a des raisons pour croire que le texte antique disait "donotspip". C'est
parce que les manuscripts étaient copiés et si un copieur se distrait, il va
probablement utiliser un mot plus facile à la place d'un plus difficile; donc
la "lectio difficilior" (littéralement le texte le plus facile) a plus de
chances d'être authentique.
Ciao à tou(te)s
Ernesto