Retours à la ligne fidèles à l’article rédigé

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Attention ! Cette contribution modifie des fichiers du noyau de SPIP !

Même si elle a été testée par plusieurs utilisateurs nous ne pouvons garantir qu’il n’y aura pas d’effets secondaires dommageables sur votre SPIP. Conservez toujours les fichiers d’origine pour pouvoir revenir au noyau originel.

De plus, elle n’est compatible qu’avec une version précise de SPIP et sera perdue à la prochaine mise à jour : vous devrez donc recommencer.

SPIP a un formatage particulier des articles :
il ne permet pas d’afficher les sauts de ligne tels qu’ils sont insérés lors de la rédaction de l’article.
En effet, un saut de ligne simple ne change rien, un double induit la creation d’un nouveau paragraphe.

L’astuce de SPIP est d’ajouter un _ (tiret bas suivit d’un espace).
Pour l’utilisateur lambda, un tel procédé n’est pas pratique, et conduit la majeure du temps à son oubli, et donc à un article completement défiguré.

En rajoutant 3 lignes de code dans ecrire/inc_texte.php3, les sauts de lignes sont retrouvés :)

il suffit de rechercher la ligne

$letexte = preg_replace("@^ <br />@", "", $letexte);

et de remplacer par :

$letexte = trim($letexte);
$letexte = preg_replace("/\n([\w\d])/", "\n<br />\\1", $letexte);
$letexte = preg_replace("@^ ?<br />@", "", $letexte);
$letexte = "\n".$letexte;

preg_replace("/\n([\w\d])/", "\n<br />\\1", $letexte);
est l’élément clé : il signifie : « remplacer par un saut de ligne html tous les sauts de ligne dont la ligne suivante commence par un caractère alphanumérique »

$letexte = preg_replace("@^ ?<br />@", "", $letexte);
retire le saut de ligne en debut d’article.

Jujubre

Discussion

Aucune discussion

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom