diff --git a/ecrire/inc_filtres.php3 b/ecrire/inc_filtres.php3 index c76404bac034de7849e0146cff6499110b459714..f7ccd4c5197f52c93a603233f97cb37e0876efff 100644 --- a/ecrire/inc_filtres.php3 +++ b/ecrire/inc_filtres.php3 @@ -218,6 +218,10 @@ function PtoBR($texte){ // Couper les "mots" de plus de $l caracteres (souvent des URLs) function lignes_longues($texte, $l = 70) { + // Passer en utf-8 pour ne pas avoir de coupes trop courtes avec les &#xxxx; + // qui prennent 7 caracteres + $texte = unicode_to_utf_8(filtrer_entites($texte)); + // echapper les tags (on ne veut pas casser les a href=...) $tags = array(); if (preg_match_all('/<.*>/Ums', $texte, $t, PREG_SET_ORDER)) { @@ -238,7 +242,7 @@ function lignes_longues($texte, $l = 70) { $texte = str_replace(" @@SPIPTAG$n@@ ", $tag, $texte); } - return $texte; + return importer_charset($texte, 'utf-8'); } // Majuscules y compris accents, en HTML diff --git a/ecrire/inc_texte.php3 b/ecrire/inc_texte.php3 index 51fb5daf44f3b057a6805fdacca5ea997bbf2b83..28512094ced23f84866efbf68e1c07881fc19c7a 100644 --- a/ecrire/inc_texte.php3 +++ b/ecrire/inc_texte.php3 @@ -160,7 +160,7 @@ function echappe_html($letexte, $source='SOURCEPROPRE', $no_transform=false) { $lecode = trim(entites_html($regs[9])); $total_lignes = substr_count($lecode, "\n"); - $les_echap[$num_echap] = "<form action=\"/\" method=\"get\"><textarea readonly='readonly' cols='40' rows='$total_lignes' class='spip_cadre' dir='ltr'>".$lecode."</textarea></form>"; + $les_echap[$num_echap] = "<form action=\"/\" method=\"get\"><div><textarea readonly='readonly' cols='40' rows='$total_lignes' class='spip_cadre' dir='ltr'>".$lecode."</textarea></div></form>"; // Les marques ci-dessous indiquent qu'on ne veut pas paragrapher $marqueur_echap = "\n\n</no p>$marqueur_echap<no p>\n\n"; }