123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- <?php
- /***************************************************************************\
- * SPIP, Systeme de publication pour l'internet *
- * *
- * Copyright (c) 2001-2014 *
- * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
- * *
- * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
- * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
- \***************************************************************************/
- if (!defined("_ECRIRE_INC_VERSION")) return;
- // Correction typographique anglaise
- function typographie_en($t) {
- static $trans;
- if (!isset($trans)) {
- $trans = array(
- " " => '~',
- "'" => '’'
- );
- switch ($GLOBALS['meta']['charset']) {
- case 'utf-8':
- $trans["\xc2\xa0"] = '~';
- break;
- default:
- $trans["\xa0"] = '~';
- break;
- }
- }
- # cette chaine ne peut pas exister,
- # cf. TYPO_PROTECTEUR dans inc/texte
- $pro = "-\x2-";
- $t = str_replace(array_keys($trans), array_values($trans), $t);
- /* 2 */
- $t = preg_replace('/ --?,|(?: %)(?:\W|$)/S', '~$0', $t);
- /* 4 */
- $t = preg_replace('/Mr\.? /S', '$0~', $t);
- if (strpos($t, '~') !== false)
- $t = preg_replace("/ *~+ */S", "~", $t);
- $t = preg_replace("/--([^-]|$)/S", "$pro—$1", $t, -1, $c);
- if ($c) {
- $t = preg_replace("/([-\n])$pro—/S", "$1--", $t);
- $t = str_replace($pro, '', $t);
- }
- $t = str_replace('~', ' ', $t);
- return $t;
- }
|