Filtre typographique exposants - commentaires Filtre typographique exposants (1<span style="font-size:70%;vertical-align:10%;">er</span>, 2<span style="font-size:70%;vertical-align:10%;">e</span>, III<span style="font-size:70%;vertical-align:10%;">e</span>, M<span style="font-size:70%;vertical-align:10%;">lle</span>...) 2006-08-17T21:38:53Z https://contrib.spip.net/Filtre-typographique-exposants#comment387092 2006-08-17T21:38:53Z <p>je voulais dire «<small class="fine d-inline"> </small>avec<small class="fine d-inline"> </small>» \b et non «<small class="fine d-inline"> </small>après<small class="fine d-inline"> </small>» \b... les lettres accentuées sont considérées comme le début d'un nouveau mot, etc. (bien sur)</p> Filtre typographique exposants (1<span style="font-size:70%;vertical-align:10%;">er</span>, 2<span style="font-size:70%;vertical-align:10%;">e</span>, III<span style="font-size:70%;vertical-align:10%;">e</span>, M<span style="font-size:70%;vertical-align:10%;">lle</span>...) 2006-08-17T20:55:34Z https://contrib.spip.net/Filtre-typographique-exposants#comment387091 2006-08-17T20:55:34Z <p>Je reviens sur mon post, d'il y a...</p> <p>Le premier problème vient que après \b, une lettre accentuée est considérée comme le début d'un autre mot. (comme je peux me passer des docteurs, présidents<span class="spip_note_ref"> [<a href="#nb1" class="spip_note" rel='nofollow appendix' title="Présidente n'a pas d'abréviation ?" id="nh1">1</a>]</span> et saint(e)s et vais me passer d'une partie du filtre.</p> <p>Le deuxième problème est résolu en décomposant la dernière ligne en deux parties.</p> <p>Donc voici la fonction voltaire_exposant modifiée pour résoudre seulement le 2<sup class="typo_exposants">e</sup> problème.</p> <div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>function voltaire_exposant($texte){ $trouve = array( '/(\\bM)(elle|lle)\\b/', // Mlle(s), Mme(s) et erreurs Melle(s) '/(\\bM)(elles|lles)\\b/', '/(\\bM)(mes?)\\b/', '/(\\bD)(rs?)\\b/', // Dr(s), Pr(s), St(e)(s) '/(\\bP)(rs?)\\b/', '/(\\bS)(te?s?)\\b/', '/(\\bm)(2|3)\\b/', // m2, m3 '/(\\b[1I])(ier)\\b/', // Erreurs ier, iers, ère, ière, ères, ières '/(\\b[1I])(iers)\\b/', '/(\\b[1I])(ière|ère)\\b/', '/(\\b[1I])(ières|ères)\\b/', '/(\\b[02-9IVX]+)(ième|ème|me)\\b/', // Erreurs me, ème, ième, mes, èmes, ièmes '/(\\b[02-9IVX]+)(ièmes|èmes|mes)\\b/', '/(\\b[1I])(res?)\\b/', // 1re(s), Ire(s) '/(\\b[1I])(er?s?)\\b/', // 1er(s), Ier(s) '/(\\b[0-9IVX]+)(es?)\\b/' // 2e(s), IIIe(s)... ); $remplace = array( 'M<span class="exposant">lle</span>', // Mlle(s), Mme(s) 'M<span class="exposant">lles</span>', 'M<span class="exposant">\\2</span>', 'D<span class="exposant">\\2</span>', // Dr(s), Pr(s), St(e)(s) 'P<span class="exposant">\\2</span>', 'S<span class="exposant">\\2</span>', 'm<span class="exposant">\\2</span>', // m2, m3 '\\1<span class="exposant">er</span>', // Corrige 1er(s), 1re(s) '\\1<span class="exposant">ers</span>', '\\1<span class="exposant">re</span>', '\\1<span class="exposant">res</span>', '\\1<span class="exposant">e</span>', // Corrige 2e(s), IIIe(s)... '\\1<span class="exposant">es</span>', '\\1<span class="exposant">\\2</span>', // 1re(s), Ire(s) '\\1<span class="exposant">\\2</span>', // 1er(s), Ier(s) '\\1<span class="exposant">\\2</span>' // 2e(s), IIIe(s)... ); $texte=preg_replace($trouve, $remplace, $texte); return $texte; }</code></pre></div> <p>Claude</p> Filtre typographique exposants (1<span style="font-size:70%;vertical-align:10%;">er</span>, 2<span style="font-size:70%;vertical-align:10%;">e</span>, III<span style="font-size:70%;vertical-align:10%;">e</span>, M<span style="font-size:70%;vertical-align:10%;">lle</span>...) 2005-10-24T09:27:51Z https://contrib.spip.net/Filtre-typographique-exposants#comment384071 2005-10-24T09:27:51Z <p>bonjour,</p> <p><a href="http://cgecaf.com/mot.php3?id_mot=563" class="spip_out" rel='nofollow external'>ici</a></p> <p>je trouve deux petits bugs de ton filtre : <br>— «<small class="fine d-inline"> </small>(Le Pré-Saint-Gervais, 1962-)<small class="fine d-inline"> </small>», le "r" de Pré passe en exposant. <br>— et plus bas, «<small class="fine d-inline"> </small>Des Vers avec rimes et raison<small class="fine d-inline"> </small>» : "ers" de Vers passe en exposant. Le chiffre "V" ne peut être que "V<sup class="typo_exposants">e</sup>", éventuellement "V<sup class="typo_exposants">es</sup>".</p> <p>Le choix du font-size est proportionnel aux préférences du navigateur et non à l'environnement du texte qui a souvent des valeurs diférentes suivnts les zones (texte, notes, PS, chapo…). Je ne vois pas encore comment détourner le truc.</p> <p>Sinon, c'est de toute façon adopté sur ce site. Merci.</p> <p>Claude</p>