[SPIP Zone] r21376 - in /_plugins_/_stable_/couteau_suisse: exec/admin_couteau_suisse_old.php outils/pucesli.php

* patfr@ifrance.com tapuscrivait, le 08/07/2008 17:11:

function pucesli_rempl($texte) {
- return preg_replace('/^-\s+/m','-* ',$texte);
+ return preg_replace('/^-\s*/m','-* ',$texte);

J'ai pas l'impression que cette regexp gère
-- texte d'un dialogue qui donne un tiret cadratin à la place des 2 --

--
RealET

Ah non effectivement, mais le devrait-elle ?
Les belles puces se bornent à remplacer de simples puces en <ul><li>, mieux gérables en css, rien de plus...

Ceci dit, concernant le tiret cadratin, SPIP le fait déjà non ?
  cf texte.php :
  return array(array(
    /* 1 */ "/\n-- */S",
    (...)
         array(
    /* 1 */ "\n<br />&mdash;&nbsp;",
  etc.

Pat

RealET a écrit :

* patfr tapuscrivait, le 08/07/2008 17:11:

function pucesli_rempl($texte) {
- return preg_replace('/^-\s+/m','-* ',$texte);
+ return preg_replace('/^-\s*/m','-* ',$texte);

J'ai pas l'impression que cette regexp gère
-- texte d'un dialogue qui donne un tiret cadratin à la place des 2 --

* Pat tapuscrivait, le 08/07/2008 22:02:

Ah non effectivement, mais le devrait-elle ?
Les belles puces se bornent à remplacer de simples puces en <ul><li>, mieux gérables en css, rien de plus...

Ceci dit, concernant le tiret cadratin, SPIP le fait déjà non ?

Ce que je dis, c'est que belles puces s'appliquant probablement avant les traitements de SPIP, il risque transformer :
-- Très cher ami !
en
-*- Très cher ami !
empêchant SPIP d'en faire
— Très cher ami !

Ceci dit, j'ai pas testé.

--
RealET

Mes excuses, je t'ai lu trop vite. Tu as raison.
Alors est-il mieux de trouver une regExpr complexe qui exclut les doubles tirets trouvés en début de ligne, ou un tableau comme suit ?

return preg_replace(array('/^--/m','/^-\s*/m','/^@CS@/m'),array('@CS@','-* ','--',$texte);

Je suis pas expert des regExpr testant un caractère sans l'inclure dans le remplacement...
Pat

RealET a écrit :

* Pat tapuscrivait, le 08/07/2008 22:02:

Ah non effectivement, mais le devrait-elle ?
Les belles puces se bornent à remplacer de simples puces en <ul><li>, mieux gérables en css, rien de plus...

Ceci dit, concernant le tiret cadratin, SPIP le fait déjà non ?

Ce que je dis, c'est que belles puces s'appliquant probablement avant les traitements de SPIP, il risque transformer :
-- Très cher ami !
en
-*- Très cher ami !
empêchant SPIP d'en faire
— Très cher ami !

Ceci dit, j'ai pas testé.

Voici l'expression qui devrait maintenant fonctionner correctement, à l'aide d'une assertion négative :
  return preg_replace('/^-\s*(?!-)/m', '-* ', $texte);
Pat

RealET a écrit :

* Pat tapuscrivait, le 08/07/2008 22:02:

Ah non effectivement, mais le devrait-elle ?
Les belles puces se bornent à remplacer de simples puces en <ul><li>, mieux gérables en css, rien de plus...

Ceci dit, concernant le tiret cadratin, SPIP le fait déjà non ?

Ce que je dis, c'est que belles puces s'appliquant probablement avant les traitements de SPIP, il risque transformer :
-- Très cher ami !
en
-*- Très cher ami !
empêchant SPIP d'en faire
— Très cher ami !

Ceci dit, j'ai pas testé.