bonjour,
à partir de http://doc.spip.org/@traiter_echap_code_dist
avec quelques adaptations il est possible d'appliquer la classe notranslate dans du texte avec cette fonction adaptée :
define('_PROTEGE_BLOCS', ',<(html|code|cadre|frame|script|pastraduire)(\s[^>]*)?>(.*)</\1>,UimsS');
function traiter_echap_pastraduire($regs) {
list(,$att,$corps) = $regs;
$echap = htmlspecialchars($corps); // il ne faut pas passer dans entites_html, ne pas transformer les &#xxx; du code !
// ne pas mettre le <div...> s'il n'y a qu'une ligne
if (is_int(strpos($echap,"\n"))) {
// supprimer les sauts de ligne debut/fin
// (mais pas les espaces => ascii art).
$echap = preg_replace("/^[\n\r]+|[\n\r]+$/s", "", $echap);
$echap = nl2br($echap);
$echap = "<div class='' dir='ltr'><code$att class='notranslate'>"
.$echap."</code></div>";
} else {
$echap = "<code$att class='notranslate' dir='ltr'>".$echap."</code>";
}
$echap = str_replace("\t", " ", $echap);
$echap = str_replace(" ", " ", $echap);
return $echap;
}
avec le raccourcis <pastraduire> </pastraduire>
la fonction est à placer dans mes_fonctions.php
c'est en test y a peu être des bugs à venir.
cordialement
bobof a écrit :
bonjour,
pour utiliser google traduction (http://translate.google.com/) au mieux et comme indiqué dans la doc il faut utiliser la classe *notranslate* dans les balises html pour que le soft ne traduise pas le contenu (pour les noms propres par exemple).
Comment encadrer le texte par un span avec cette classe par exemple :
<pastraduire>Texte a ne pas traduire</pastraduire>
ou
[pastraduire]Texte a ne pas traduire[/pastraduire]
pour obtenir après traitement :
<span class="notranslate">Texte a ne pas traduire</span>
sans utiliser le couteau suisse et la lame décoration (me semble t-il).
auriez vous des pistes a m'indiquer ?
cordialement
--
Signalez vos spams d'un simple clic. www.signal-spam.fr
<https://www.signal-spam.fr/>