Il y a un truc qui m'enquiquine depuis un moment : Les textes qui contiennent des retours chariot intempestifs, en dur, et que j'aimerai nettoyer pour qu'il ne reste que les sauts de paragraphe, en général matérialisés par *deux* de ces fameux retours chariot.
Après je peux tratier le texte comme il faut, avant c'est une galère. Cet outil, tant qu'à faire, j'aimerais l'écrire moi-même, en PHP tiens, mais pour celà il faudrait que je sache ce que je cherche à remplacer ! Or, quand j'ouvre ledit fichiers dans vi (au hasard:) ) il ne me les motre pas, il passe juste à la ligne ! Même cat ne me montre PAS les caractères cachés ! Comment faire pour les visualiser proprement, afin d'écrire facilement un script pour les virer ?
Y a ultraedit32
Tu visualises ton texte en ascii puis tu remplaces les CR
pX a écrit :
'Jour !
Il y a un truc qui m'enquiquine depuis un moment : Les textes qui contiennent des retours chariot intempestifs, en dur, et que j'aimerai nettoyer pour qu'il ne reste que les sauts de paragraphe, en général matérialisés par *deux* de ces fameux retours chariot.
Après je peux tratier le texte comme il faut, avant c'est une galère. Cet outil, tant qu'à faire, j'aimerais l'écrire moi-même, en PHP tiens, mais pour celà il faudrait que je sache ce que je cherche à remplacer ! Or, quand j'ouvre ledit fichiers dans vi (au hasard:) ) il ne me les motre pas, il passe juste à la ligne ! Même cat ne me montre PAS les caractères cachés ! Comment faire pour les visualiser proprement, afin d'écrire facilement un script pour les virer ?
Il y a un truc qui m'enquiquine depuis un moment : Les textes qui contiennent des retours chariot intempestifs, en dur, et que j'aimerai nettoyer pour qu'il ne reste que les sauts de paragraphe, en général matérialisés par *deux* de ces fameux retours chariot.
Après je peux tratier le texte comme il faut, avant c'est une galère. Cet outil, tant qu'à faire, j'aimerais l'écrire moi-même, en PHP tiens, mais pour celà il faudrait que je sache ce que je cherche à remplacer ! Or, quand j'ouvre ledit fichiers dans vi (au hasard:) ) il ne me les motre pas, il passe juste à la ligne ! Même cat ne me montre PAS les caractères cachés ! Comment faire pour les visualiser proprement, afin d'écrire facilement un script pour les virer ?
Merci !
pX
Ce que tu cherches à remplacer, c'est les caractèer \r\n ou \n tout seul si j'ai bien compris la question.
Il y a un truc qui m'enquiquine depuis un moment : Les textes qui
contiennent des retours chariot intempestifs, en dur, et que j'aimerai
nettoyer pour qu'il ne reste que les sauts de paragraphe, en général
matérialisés par *deux* de ces fameux retours chariot.
un filtre apres_propre qui fait
return preg_replace('s/([^\n])\n([^\n])/', '$1 $2', $texte);
?
Mais attention, c'est pas aussi facile, puisqu'il ne faut pas
supprimer ceux qui délimitent des listes à puce par exemple
Après je peux tratier le texte comme il faut, avant c'est une galère.
Cet outil, tant qu'à faire, j'aimerais l'écrire moi-même, en PHP tiens,
mais pour celà il faudrait que je sache ce que je cherche à remplacer !
Or, quand j'ouvre ledit fichiers dans vi (au hasard:) ) il ne me les
motre pas, il passe juste à la ligne ! Même cat ne me montre PAS les
caractères cachés !
(...)Les textes qui contiennent des retours chariot intempestifs(...)
un filtre apres_propre qui fait
return preg_replace('s/([^\n])\n([^\n])/', '$1 $2', $texte);
?
Mais ça m'a l'air très bien ça ! Qu'est-ce que c'est, du BaSH ? Je ne connais pas preg_replace... Je suis faché avec les regexps, mais il me semble que je comprends celle-là... Tu l'as implémenté quelque part ? Je suis preneur de ce script, là j'ai un truc dans ma base spip, une vraie horreur, d'ailleurs je me demande pkoi SPIP ne parcourt-il (parse)
pas le texte de la même façon qu'il le fait pour la syntaxe, et corriger ça ? Bref, si ton script est fonctionnale, je m'arrangerai pour les listes, moi je n'ai plus ou moins *que* du texte, ASCII iso-8859-1, tranquille.
(...)Même cat ne me montre PAS les caractères cachés !
od -c ?
Arg, je ne connaissais pas çuilà, on dirait bien un éditeur hexa là c'est un peu *trop* visuel pour moi
Il y a un truc qui m'enquiquine depuis un moment : Les textes qui
contiennent des retours chariot intempestifs, en dur, et que j'aimerai
nettoyer pour qu'il ne reste que les sauts de paragraphe, en général
matérialisés par *deux* de ces fameux retours chariot.
Après je peux tratier le texte comme il faut, avant c'est une galère.
Cet outil, tant qu'à faire, j'aimerais l'écrire moi-même, en PHP tiens,
mais pour celà il faudrait que je sache ce que je cherche à remplacer !
Or, quand j'ouvre ledit fichiers dans vi (au hasard:) ) il ne me les
motre pas, il passe juste à la ligne ! Même cat ne me montre PAS les
caractères cachés ! Comment faire pour les visualiser proprement, afin
d'écrire facilement un script pour les virer ?
Sur mac, pas besoin de script, BBEdit ou même TextWrangler, version lite gratuite chez le même éditeur, font ça sur n'importe quel fichier de n'importe quoi ouvert, avec la commande
Text => Remove line breaks
Je suis sur qu'il doit bien y avoir un éditeur de texte intelligent sous windows ou linux qui fait ça aussi.
>On Tue, 2006-03-21 at 16:40 +0100, pX wrote:
>
>
>>'Jour !
>>
>>(...)Les textes qui contiennent des retours chariot intempestifs(...)
>>
>>
>un filtre apres_propre qui fait
>return preg_replace('s/([^\n])\n([^\n])/', '$1 $2', $texte);
>?
>
>
Mais ça m'a l'air très bien ça ! Qu'est-ce que c'est, du BaSH ?
non, c'est du php, je pensais que tu voulais faire ça à la volée dans
un filtre spip.
si tu as ce texte dans un fichier, il faut plutôt faire ça en sed
ou perl :
perl -pi -e 's/([^\n])\n([^\n])/$1 $2/g' le_fichier
>od -c ?
Arg, je ne connaissais pas çuilà, on dirait bien un éditeur hexa
pas un éditeur, juste un "afficheur"
pour éditer, y'a hexl-mode dans emacs
Il y a un truc qui m'enquiquine depuis un moment : Les textes qui
contiennent des retours chariot intempestifs, en dur, et que
j'aimerai nettoyer pour qu'il ne reste que les sauts de paragraphe,
en général matérialisés par *deux* de ces fameux retours chariot.
un filtre apres_propre qui fait
return preg_replace('s/([^\n])\n([^\n])/', '$1 $2', $texte); ?
Mais attention, c'est pas aussi facile, puisqu'il ne faut
pas supprimer ceux qui délimitent des listes à puce par exemple
J'ai un menu dynamique en CSS sous SPIP 1.8.2 mais il est au maxi à trois niveaux ... donc assez "sensible" pour atteindre le dernier niveau.
Y aurait il un moyen pour ralentir le passage de niveau en niveau ?
Merci de votre aide
Joel