Utilisateur:Harmonia Amanda/typo.js
Note : après avoir enregistré vos modifications, il se peut que vous deviez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
- Firefox / Safari : Maintenez la touche Maj (Shift) en cliquant sur le bouton Actualiser ou pressez Ctrl-F5 ou Ctrl-R (⌘-R sur un Mac) ;
- Google Chrome : Appuyez sur Ctrl-Maj-R (⌘-Shift-R sur un Mac) ;
- Internet Explorer : Maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5 ;
- Opera : Allez dans Menu → Settings (Opera → Préférences sur un Mac) et ensuite à Confidentialité & sécurité → Effacer les données d'exploration → Images et fichiers en cache.
//==============================
// Typo Personnel
/*********************
Typo personnel
**********************/
function hsarrazin_typo_add() {
$.typo.add(function(str) {
str = str.replace(/( tète )+/g, " tête ");
str = str.replace(/( tète.)+/g, " tête.");
str = str.replace(/( tète,)+/g, " tête,");
str = str.replace(/(11 )+/g, "Il ");
str = str.replace(/(…\. )+/g, "… ");
str = str.replace(/(\.… )+/g, "… ");
str = str.replace(/( …)+/g, "…");
str = str.replace(/(‘)+/g, "’");
str = str.replace(/(`)+/g, "’");
str = str.replace(/(lui-mème)+/g, "lui-même");
// str = str.replace(/(– )+/g, "— ");
str = str.replace(/([—\!\?\.\\…\»\«\( ] )A /g, "$1À "); //fix pour À - devrait générer moins de faux positifs que la situation actuelle
str = str.replace(/(\nA )+/g, "\nÀ "); // désactiver pour le Trévoux…
str = str.replace(/\{\{lang\|([a-z])([a-z])\|''([^']*?)''([^\}]*)\}\}+/g, "''\{\{lang\|$1$2\|$3$4\}\}''"); //fix pour lang
str = str.replace(/\{\{lang\|gr\|+/g, "\{\{lang\|grc\|"); //fix pour gr au lieu de grc
str = str.replace(/\{\{centré\|\{\{réplique\|\{\{sc\|([^']*?)\}\}\}\}\{\{didascalie\|([^']*?)\}\}\}\} /gi, "\{\{réplique|$1\}\}\{\{didascalie\|$2\}\} "); //suppr superflus
str = str.replace(/\{\{centré\|\{\{réplique\|\{\{sc\|([^']*?)}}}}}}/gi, "\{\{réplique\|$1\}\}"); //suppression centré et sc superflus
str = str.replace(/\{\{réplique\|([^']*?)\}\}/gi, "\{\{Personnage\|$1\|c\}\}"); //fix pour Réplique -> Personnage (pb de fonctionnement)
str = str.replace(/\{\{Personnage\|([a-zA-ZÉÈéèŒ\. \-]*?)\|c\}\}\{\{didascalie\|,?/g, "\{\{PersonnageD\|$1\|c\|"); //fix pour PersonnageD
str = str.replace(/\{\{Personnage\|([a-zA-ZÉÈéèŒ\. \-]*?)\|c\}\}\, {\{didascalie\|,?/g, "\{\{PersonnageD\|$1\|c\|"); //fix pour PersonnageD
str = str.replace(/(<sup>er<\/sup>)+/g, "\{\{er\}\}"); // fix pour les abbréviations
str = str.replace(/(\{\{e\|e\}\}<\/sup>)+/g, "\{\{e\}\}");
str = str.replace(/(<sup>e<\/sup>)+/g, "\{\{e\}\}");
str = str.replace(/Gomme/g, "Comme");
str = str.replace(/Gela/g, "Cela");
str = str.replace(/(D<sup>r<\/sup>)+/g, "\{\{Dr\}\}");
str = str.replace(/(M<sup>r<\/sup>)+/g, "\{\{Mr\}\}");
str = str.replace(/(M<sup><small>r<\/small><\/sup>)+/g, "\{\{Mr\}\}");
str = str.replace(/(M<sup>me<\/sup>)+/g, "\{\{Mme\}\}");
str = str.replace(/(M<sup><small>me<\/small><\/sup>)+/g, "\{\{Mme\}\}");
str = str.replace(/(M<sup>lle<\/sup>)+/g, "\{\{Mlle\}\}");
str = str.replace(/(M<sup><small>lle<\/small><\/sup>)+/g, "\{\{Mlle\}\}");
str = str.replace(/(M<sup>elle<\/sup>)+/g, "\{\{Mlle\}\}");
str = str.replace(/(M<sup><small>elle<\/small><\/sup>)+/g, "\{\{Mlle\}\}");
str = str.replace(/(2<sup>me<\/sup>)+/g, "\{\{2me\}\}");
str = str.replace(/(1<sup>er<\/sup>)+/g, "\{\{1er\}\}");
str = str.replace(/(I<sup>er<\/sup>)+/g, "\{\{Ier\}\}");
str = str.replace(/(1\{\{er\}\})+/g, "\{\{1er\}\}");
str = str.replace(/fi/g, "fi");
str = str.replace(/fl/g, "fl");
str = str.replace(/“/g, "«");
str = str.replace(/”/g, "»");
str = str.replace(/ 8c/g, " &");
str = str.replace(/ 6c/g, " &");
str = str.replace(/( <ref>)+/g, "<ref>"); //fix pour les ref
str = str.replace(/<center>([^']*?)<\/center>/g, "\{\{c\|$1\}\}"); //fix pour les center
str = str.replace(/<div align=\"center\" >([^']*?)<\/div>/g, "\{\{c\|$1\}\}"); //fix pour les div center
str = str.replace(/<div class=\"center\" >([^']*?)<\/div>/g, "\{\{c\|$1\}\}"); //fix pour les div center
str = str.replace(/<div style=\"text-align:center; \" \>([^']*?)<\/div>/g, "\{\{c\|$1\}\}"); //fix pour les div center
str = str.replace(/ /g, " ");
str = str.replace(/(_)+/g, " ");
str = str.replace(/\n : */g, "\n:"); // fix pour les : dans les poèmes
str = str.replace(/(:+) *: */g, "$1:");
str = str.replace(/:: /g, "::");
str = str.replace(/<poem>/g, "<poem class=\"verse\">"); //fix pour les poèmes
str = str.replace(/class= « verse » /g, "class=\"verse\"");
str = str.replace(/## « /g, "## \""); // fix pour les sections
str = str.replace(/ » ##/g, "\" ##");
str = str.replace(/<big>(.*)<\/big>/gi, "$1"); //suppression des "big"
str = str.replace(/ »/g, " »");
str = str.replace(/ *\n/g, " "); // Suppression des saut de ligne à l'intérieur d'un paragraphe -->
str = str.replace(/ /g, "\n\n"); // Fix pour changement de paragraphe
str = str.replace(/\n +/g, "\n\n"); // Fix pour changement de paragraphe impair
str = str.replace(/ ?\n*$/g, ""); // Suppression saut de ligne fin de page
return str;
});
}
$.when(
mw.loader.using( [ 'ext.gadget.Typo' ] ),
$.ready
).then(
hsarrazin_typo_add
);