From 7a39699ac712cb1b4bd259dd7b1a5ccd9d5befb3 Mon Sep 17 00:00:00 2001 From: ARNO* <arno@rezo.net> Date: Tue, 24 Feb 2004 14:54:01 +0000 Subject: [PATCH] Ajout raccourcis <frame> (pour <cadre> en anglais), <poesie>, <poetry> --- ecrire/inc_texte.php3 | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/ecrire/inc_texte.php3 b/ecrire/inc_texte.php3 index db46881063..2c0f888543 100644 --- a/ecrire/inc_texte.php3 +++ b/ecrire/inc_texte.php3 @@ -176,13 +176,16 @@ function echappe_html($letexte, $source, $no_transform=false) { if ($flag_pcre) { // beaucoup plus rapide si on a pcre $regexp_echap_html = "<html>((.*?))<\/html>"; $regexp_echap_code = "<code>((.*?))<\/code>"; - $regexp_echap_cadre = "<cadre>((.*?))<\/cadre>"; - $regexp_echap = "/($regexp_echap_html)|($regexp_echap_code)|($regexp_echap_cadre)/si"; + $regexp_echap_cadre = "<(cadre|frame)>((.*?))<\/(cadre|frame)>"; + $regexp_echap_poesie = "<(poesie|poetry)>((.*?))<\/(poesie|poetry)>"; + $regexp_echap = "/($regexp_echap_html)|($regexp_echap_code)|($regexp_echap_cadre)|($regexp_echap_poesie)/si"; } else { + //echo creer_echappe_sans_pcre("cadre"); $regexp_echap_html = "<html>(([^<]|<[^/]|</[^h]|</h[^t]|</ht[^m]|</htm[^l]|<\/html[^>])*)<\/html>"; $regexp_echap_code = "<code>(([^<]|<[^/]|</[^c]|</c[^o]|</co[^d]|</cod[^e]|<\/code[^>])*)<\/code>"; - $regexp_echap_cadre = "<cadre>(([^<]|<[^/]|</[^c]|</c[^a]|</ca[^d]|</cad[^r]|</cadr[^e]|<\/cadre[^>])*)<\/cadre>"; - $regexp_echap = "($regexp_echap_html)|($regexp_echap_code)|($regexp_echap_cadre)"; + $regexp_echap_cadre = "(<[cf][ar][da][rm]e>(([^<]|<[^/]|</[^cf]|</[cf][^ar]|</[cf][ar][^da]|</[cf][ar][da][^rm]|</[cf][ar][da][rm][^e]|<\/[cf][ar][da][rm]e[^>])*)<\/[cf][ar][da][rm]e>)()"; // parentheses finales pour obtenir meme nombre de regs que pcre + $regexp_echap_poesie = "(<poe[st][ir][ey]>(([^<]|<[^/]|</[^p]|</p[^o]|</po[^e]|</poe[^st]|</poe[st][^ir]|</poe[st][ir][^[ey]]|<\/poe[st][ir][ey][^>])*)<\/poe[st][ir][ey]>)()"; + $regexp_echap = "($regexp_echap_html)|($regexp_echap_code)|($regexp_echap_cadre)|($regexp_echap_poesie)"; } while (($flag_pcre && preg_match($regexp_echap, $letexte, $regs)) @@ -218,11 +221,20 @@ function echappe_html($letexte, $source, $no_transform=false) { else if ($regs[7]) { // Echapper les <cadre>...</cadre> - $lecode = trim(entites_html($regs[8])); + $lecode = trim(entites_html($regs[9])); $total_lignes = count(explode("\n", $lecode)); $les_echap[$num_echap] = "<form><textarea readonly='readonly' style='width: 100%;' rows='$total_lignes' wrap='off' class='spip_cadre' dir='ltr'>".$lecode."</textarea></form>"; } + else + if ($regs[12]) { + $lecode = $regs[14]; + $lecode = ereg_replace("\n[[:space:]]*\n", "\n \n",$lecode); + $lecode = ereg_replace("\r", "\n", $lecode); + $lecode = "<div class=\"spip_poesie\"><div>".ereg_replace("\n+", "</div>\n<div>", $lecode)."</div></div>"; + + $les_echap[$num_echap] = propre($lecode); + } $pos = strpos($letexte, $regs[0]); $letexte = substr($letexte,0,$pos)."@@SPIP_$source$num_echap@@" -- GitLab