Utilisateur:Olivier LPB/common.js
Apparence
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;
Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5./* <nowiki> */
/* var hotcat_text_ResumeScript="[[WP:WIMA|WIMA]]"; */
/* var RenommageCategorie_Text_Script = "[[Wikipedia:WIMA|WIMA]] [[Renommage de catégorie]] : "; */
obtenir('RenommageCategorie');
obtenir('CopyScape');
obtenir('BistroDuJour');
obtenir('PaletteDeluxe');
//Gadget DJ
importScript('Utilisateur:0x010C/script/DrapeauJaune.js');
/* début fonction de ref auto */
( function ( mw, $ ) {
'use strict';
function initializeRefTools() {
if( !mw.user.options.get( 'showtoolbar' ) || window.refToolbarInstalled || $( '#wpTextbox1[readonly]' ).length ){
return;
}
if ( mw.user.options.get( 'usebetatoolbar' ) ) {
// Enhanced editing toolbar is on. Going to load RefToolbar 2.0a or 2.0b.
if ( mw.user.options.get( 'usebetatoolbar-cgd' ) ) {
// Dialogs are on. Loading 2.0b. (standard)
$.getScript( '//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-refToolbarBase.js&action=raw&ctype=text/javascript', function() {
mw.loader.using( [ 'ext.wikiEditor' ], function () {
mw.loader.load( '//en.wikipedia.org/w/index.php?title=MediaWiki:RefToolbar.js&action=raw&ctype=text/javascript' );
} );
} );
} else {
// Dialogs are off. Loading 2.0a.
mw.loader.using( 'ext.wikiEditor', function () {
mw.loader.load( '//en.wikipedia.org/w/index.php?title=MediaWiki:RefToolbarNoDialogs.js&action=raw&ctype=text/javascript' );
} );
}
} else {
// Enhanced editing toolbar is off. Loading RefToolbar 1.0. (legacy)
mw.loader.load( '//en.wikipedia.org/w/index.php?title=MediaWiki:RefToolbarLegacy.js&action=raw&ctype=text/javascript' );
}
window.refToolbarInstalled = true;
}
if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) !== -1 ) {
$( initializeRefTools );
}
}( mediaWiki, jQuery ) );
/* fin */
function TodayDate() {
var
m = ["janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre"],
today = new Date(),
day = today.getDate(),
year = today.getYear();
if (year < 2000) {
year = year + 1900;
}
return (day + " " + m[today.getMonth()] + " " + year);
}
$( function() {
mw.loader.using( [ 'mediawiki.action.edit', 'ext.gadget.mediawiki.toolbar' ], function () {
var ModeleLienweb = '<ref>{{Lien web |langue= |format= |auteur= |lien auteur= |coauteurs= |url= |titre= |jour= |mois= |année= |site= |citation= |consulté le='+ TodayDate() +' }}</ref>';
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/3/3c/Button_lienweb.png','LienWeb',ModeleLienweb,'','','mw-editbutton-lienweb');
var ModeleJournal = "<ref>{{Article |langue= |auteur1= |titre= |périodique= |volume= |numéro= |jour= |mois= |année= |pages= |issn= |lire en ligne= }}</ref>";
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/b/b4/Button_lienjournal.png','Journal',ModeleJournal,'','','mw-editbutton-journal');
var ModeleOuvrage = "<ref>{{Ouvrage |langue= |auteur1= |titre= |sous-titre= |éditeur= |collection= |lieu= |année= |volume= |tome= |pages totales= |passage= |isbn= |lire en ligne= }}</ref>";
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/e/ef/Button_cite_book.png','Ouvrage',ModeleOuvrage,'','','mw-editbutton-ouvrage');
var Modelecatho = '{{Infobox Prélat catholique \n'
+ '| nom = \n'
+ '| titre = \n'
+ '| image = \n'
+ '| taille image = \n'
+ '| légende = \n'
+ '| nom de naissance = \n'
+ '| date de naissance = \n'
+ '| lieu de naissance = \n'
+ '| date de décès = \n'
+ '| lieu de décès = \n'
+ '| ordination = \n'
+ '| consécration = \n'
+ '| création = \n'
+ '| titre cardinalice = \n'
+ '| ministère 1 = \n'
+ '| date début 1 = \n'
+ '| date fin 1 = \n'
+ '| prédécesseur 1 = \n'
+ '| successeur 1 = \n'
+ '| ministère 2 = \n'
+ '| date début 2 = \n'
+ '| date fin 2 = \n'
+ '| prédécesseur 2 = \n'
+ '| successeur 2 = \n'
+ '| fonc religieuses = \n'
+ '| fonc laïques = \n'
+ '| blason = \n'
+ '| blason simple = \n'
+ '| ornement extérieur = \n'
+ '| devise = \n'
+ '| va = \n'
+ '| ch = \n'
+ '| cr = \n'
+ '}}';
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/1/1e/Button_cross.png','Prelat catholique',Modelecatho,'','','mw-editbutton-catho');
var Wikiprojetcatho = '{{Wikiprojet \n'
+ '| catholicisme|faible \n'
+ '| Vatican|faible \n'
+ '| avancement=ébauche \n'
+ '}}';
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/f/fc/BTA-0.png','Wikiprojet catholique',Wikiprojetcatho,'','','mw-editbutton-wikicatho');
var wikicathovatican = '|catholicisme|faible\n'
+ '|Vatican|faible';
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/3/32/BTA-1.png','cathovatican',wikicathovatican,'','','mw-editbutton-cathovat');
var Modeledocatho = '{{Infobox Document pontifical \n'
+ '| titre = \n'
+ '| blason = \n'
+ '| type = \n'
+ '| pape = \n'
+ '| date = \n'
+ '| sujet = \n'
+ '| précédent = \n'
+ '| suivant = \n'
+ '}}';
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/5/5b/BTA-2.png','Document pontifical',Modeledocatho,'','','mw-editbutton-docatho');
var Modeledebutableau = '{| width=100% class="wikitable" \n'
+'|- align=center \n'
+'! width="8%"|Portrait \n'
+'! width="8%"|Armoiries \n'
+'! width="9%"|Épiscopat \n'
+'! width="25%"|Titulaire \n'
+'! width="50%"|Notes \n';
var Synodebouton = 'Le {{date|9|septembre|2014|au Vatican}} il est nommé par le pape [[François (pape)|François]] : Père synodal pour la [[Synode des évêques sur la famille|troisième assemblée générale extraordinaire du synode des évêques sur la famille]] se déroulant du 5 au 19 octobre en qualité de président de la conférence épiscopale des évêques de XXXXXXXX<ref>{{Lien web |url=http://www.la-croix.com/Religion/Actualite/Liste-des-participants-au-Synode-sur-la-famille-2014-09-09-1203509 |titre=Liste des participants au Synode sur la famille |jour=9 |mois=septembre |année=2014 |site=la-croix.com |consulté le=10 septembre 2014}}</ref>.';
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/c/cc/BTA-3.png','Synode',Synodebouton,'','','mw-editbutton-synode');
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/b/bb/Button_%C3%A9bauche.png','Début tableau évêques',Modeledebutableau,'','','mw-editbutton-dbttbl');
var evequedeplus = '|- \n'
+'|align="center"|[[Fichier:Sin foto.svg|60px]]|| align="center"|[[Fichier:Blason à dessiner.svg|60px]] || align="center"|<small> 1180 à 1212 ||align="center"|[[Bertram de Metz|Bertram]]<br>59{{e}} évêque de Metz|| \n';
mw.toolbar.addButton('//upload.wikimedia.org/wikipedia/commons/b/bd/Btn_plus.png','Ajouter un eveque',evequedeplus,'','','mw-editbutton-evqdp');
} );
} );
obtenir('BandeauxEbauches');
obtenir('OngletPurge');
/*editSectionMenu++
editSectionMenu_CodeUrl[editSectionMenu] = "&test=0";
editSectionMenu_ModeleDebut[editSectionMenu] = "{{Test0}}";
editSectionMenu_ModeleParametres[editSectionMenu] = "non";*/
//var BandeauxEbauches_AutoEdit = false; // Publication automatique (true par défaut)
//var BandeauxEbauches_MinorEdit = false; // Modification mineure (true par défaut)
//var BandeauxEbauches_TailleListe = 10; // Nombre de suggestions (5 par défaut)
//var BandeauxEbauches_ListeBas = false; // Affichage des suggestions vers le bas (true par défaut)
//var BandeauxEbauches_KeyboardDelay = 10; // Délai nouvelle suggestion (clavier) (5 par défaut)
var alwaysEval = false; //mettez cette valeur à ''true'' si vous voulez que l'évaluation soit lancée automatiquement (à éviter en temps normal)
function initEvalProjectNames()
{
evalProjectNames=new Array(); //liste de vos projets
evalProjectNames.push("catholicisme");
evalProjectNames.push("Vatican");
evalProjectNames.push("Christianisme");
evalProjectNames.push("Architecture chrétienne");
evalProjectNames.push("Monachisme");
evalProjectNames.push("Australie");
evalProjectNames.push("Belgique");
evalProjectNames.push("Canada");
evalProjectNames.push("Espagne");
evalProjectNames.push("États-Unis");
evalProjectNames.push("Europe");
evalProjectNames.push("France");
evalProjectNames.push("Indonésie");
evalProjectNames.push("Italie");
evalProjectNames.push("Monde germanique");
evalProjectNames.push("Paris");
evalProjectNames.push("Pologne");
evalProjectNames.push("Yvelines");
evalProjectNames.push("Relations internationales");
}
function launchOtto() {
// Otto, assistant de recherche et de remplacement de texte
var Otto = {
_regs: [],
init: function() {
var elt = document.getElementById('wpSummaryLabel');
var summary = document.getElementById('wpSummary');
var field = document.getElementById('wpTextbox1');
if(!elt || !summary || !field) { return; }
var btnPrev = document.createElement('button');
btnPrev.type = 'button';
btnPrev.innerHTML = 'Précédent';
elt.appendChild(btnPrev);
var btn = document.createElement('button');
btn.type = 'button';
btn.innerHTML = 'Suivant';
elt.appendChild(btn);
var apply = document.createElement('button');
apply.type = 'button';
apply.innerHTML = 'Remplacer';
apply.style.display = 'none';
elt.appendChild(apply);
var preview = document.createElement('code');
preview.style.display = 'none';
elt.appendChild(preview);
var checkboxes = document.querySelectorAll('.editCheckboxes input[type="checkbox"]');
var text;
var lastIndexes = [];
var lastIndex = null;
var match = false;
var matchedReg = false;
var matchedRep = false;
var lastPreview = false;
var globalMessager = this.getMessager();
var that = this;
btnPrev.onclick = function() {
if(lastIndexes.length) {
var idx = lastIndexes.pop();
for(var i=0,l=that._regs.length;i<l;i++) {
that._regs[i].reg.lastIndex = idx;
}
lastIndex = null;
btn.onclick();
}
};
btn.onclick = function() {
text = field.value;
match = false;
matchedReg = false;
matchedRep = false;
lastPreview = '';
if(lastIndex !== null) {
lastIndexes.push(lastIndex);
}
lastIndex = that._regs[0].reg.lastIndex;
for(var i=0,l=that._regs.length;i<l;i++) {
var curmatch = that._regs[i].reg.exec(text);
if(curmatch) {
if(!match || curmatch.index < match.index) {
match = curmatch;
matchedReg = that._regs[i].reg;
matchedRep = that._regs[i].rep;
field.focus();
field.setSelectionRange(match.index, match.index + match[0].length);
}
}
}
if(match) {
var messager = that.getMessager();
lastPreview = matchedRep.apply(messager, match);
preview.innerHTML = lastPreview.replace(/</g,'<');
preview.style.color = lastPreview == match[0] ? 'red' : '';
preview.style.display = '';
apply.style.display = '';
for(i=0,l=that._regs.length;i<l;i++) {
that._regs[i].reg.lastIndex = match.index + match[0].length;
}
} else {
preview.innerHTML = lastPreview = '';
preview.style.display = 'none';
apply.style.display = 'none';
for(i=0,l=that._regs.length;i<l;i++) {
that._regs[i].reg.lastIndex = 0;
}
}
};
apply.onclick = function() {
if(match) {
var messager = that.getMessager();
var newMatch = matchedRep.apply(messager, match);
field.value = text = text.substring(0, match.index) + newMatch + text.substring(match.index + match[0].length);
if(newMatch != match[0]) {
globalMessager.mergeMessages(messager);
summary.value = globalMessager.getFormattedMessage();
[].forEach.call(checkboxes, function(input) {
if(!input.checked) {
input.checked = true;
}
});
}
for(var i=0,l=that._regs.length;i<l;i++) {
that._regs[i].reg.lastIndex = match.index + newMatch.length;
}
field.focus();
field.setSelectionRange(match.index, match.index);
btn.onclick();
}
};
},
getMessager: function() {
return {
_messages: {},
addMessage: function(msg, value) {
if(value) {
if(!this._messages[msg]) {
this._messages[msg] = {};
}
this._messages[msg][value] = true;
} else {
this._messages[msg] = true;
}
},
mergeMessages: function(messager) {
for(var p in messager._messages) {
if(messager._messages.hasOwnProperty(p)) {
if(messager._messages[p] instanceof Object) {
if(!this._messages[p]) {
this._messages[p] = {};
}
for(var q in messager._messages[p]) {
if(messager._messages[p].hasOwnProperty(q)) {
this._messages[p][q] = messager._messages[p][q];
}
}
} else {
this._messages[p] = messager._messages[p];
}
}
}
},
getFormattedMessage: function() {
var messages = this._messages;
var parts = Object.keys(messages);
parts = parts.map(function(part) {
if(messages[part] instanceof Object) {
var items = Object.keys(messages[part]);
return (items.length > 1 ?
part.replace('(s)','s') + ' ' + items.slice(0,-1).join(', ') + ' et ' + items[items.length-1] :
part.replace('(s)','') + ' ' + items[0]);
}
return part;
});
var str = '[[Utilisateur:Golmote/vector.js|Otto]]-matique : ' +
(parts.length > 1 ?
parts.slice(0,-1).join(', ') + ' et ' + parts[parts.length-1] :
parts[0]);
return str;
}
};
},
addPattern: function(reg, rep) {
this._regs.push({reg: reg, rep: rep});
}
};
// {{XIVe}} et {{XVe}} siècles => {{sp-|XIV|e|et|XV|e|s}}
Otto.addPattern(/(\{\{[IVX]+e\}\}|[IVX]+\{\{e\}\}|[IVX]+(?:[èe]m)?e)( +\S+ +|[–-])(\{\{[IVX]+e\}\}|[IVX]+\{\{e\}\}|[IVX]+(?:[èe]m)?e) +siècle(s)?/g, function(match, s1, sep, s2, s) {
this.addMessage('modèle(s)', '{{sp}}');
return '{{sp-|' + s1.replace(/\{\{|(?:[èe]m)?e(?:\}\})?/g, '') + '|e|' + sep.replace(/^ +| +$/g, '') + '|' + s2.replace(/\{\{|(?:[èe]m)?e(?:\}\})?/g, '') + '|e' + (s ? '|s' : '') + '}}';
});
// {{XIVe}} siècle => {{s-|XIV|e}}
Otto.addPattern(/(\{\{[IVX]+e\}\}|[IVX]+\{\{e\}\}|[IVX]+(?:[èe]m)?e) +siècle/g, function(match, s1) {
this.addMessage('modèle(s)', '{{s}}');
return '{{s-|' + s1.replace(/\{\{|(?:[èe]m)?e(?:\}\})?/g, '') + '|e}}';
});
// {{formatnum:2000}} Bretons => {{unité|2000|Bretons}}
Otto.addPattern(/\{\{formatnum:(\d+)\}\} +(\[\[[^\]]+\]\][^\d\s(){}.,;:!?'"’<>=%à†+\[\]\|]*|[^\s(){}|.,;:!?'"’<>]+)/g, function(match, num, unit) {
this.addMessage('modèle(s)', '{{unité}}');
return '{{unité|' + num + '|' + unit + '}}';
});
// [[7 juin]] [[2015]] => {{date|7|juin|2015}}
Otto.addPattern(/\[\[(\d+|1er) (janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)(?:\|[^\]]+)?\]\] \[\[(\d{4})\]\]/ig, function(match, d, m, y) {
this.addMessage('modèle(s)', '{{date}}');
return '{{date|'+d+'|'+m.toLowerCase()+'|'+y+'}}';
});
// 7 juin [[2015]] => {{date|7|juin|2015}}
/*Otto.addPattern(/(\d+|1er|\{\{1er\}\}) (janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre) \[\[(\d{4})\]\]/ig, function(match, d, m, y) {
this.addMessage('modèle(s)', '{{date}}');
return '{{date|'+d.replace(/^\{\{|\}\}$/g,'')+'|'+m.toLowerCase()+'|'+y+'}}';
});*/
// {{1er juin}} [[2015]] => {{date|1er|juin|2015}}
Otto.addPattern(/\{\{(1er) (janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)\}\} \[\[(\d{4})\]\]/ig, function(match, d, m, y) {
this.addMessage('modèle(s)', '{{date}}');
return '{{date|'+d+'|'+m.toLowerCase()+'|'+y+'}}';
});
// 7 juin 2015 => {{date|7|juin|2015}}
/*Otto.addPattern(/(\d+|1er|\{\{1er\}\}) (janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre) (\d{4})/ig, function(match, d, m, y) {
this.addMessage('modèle(s)', '{{date}}');
return '{{date|'+d.replace(/^\{\{|\}\}$/g,'')+'|'+m.toLowerCase()+'|'+y+'}}';
});*/
// 2e => {{2e}}
// 2{{e}} => {{2e}}
// II{{e}} => {{IIe}}
Otto.addPattern(/\b(\d+|(?!Le)[IVXL]+)(\{\{(?:er|è?re|e)\}\}|(?:er|è?re|e)\b(?!\}\}|\|))/g, function(match, n, exp) {
this.addMessage('abréviation ordinale');
return '{{' + n + exp.replace(/^\{\{|\}\}$/g,'').replace('ère','re') + '}}';
});
// n°4 => {{n°|4}}
// n°IV => {{n°|{{IV}}}}
Otto.addPattern(/\bn(?:[°º]|o\.?)(?: +| +)?(\d[\d-]*|[IVXL]+|\{\{[IVXL]+\}\})/g, function(match, n) {
this.addMessage('modèle(s)', '{{n°}}');
if(/([IVXL]+)(?=$|-)/.test(n)) {
this.addMessage('accessibilité chiffres romains');
}
return '{{n°|'+n.replace(/([IVXL]+)(?=$|-)/g,'{{$1}}')+'}}';
});
// p. 4 => {{p.|4}}
// pages 3-6 => {{p.|3-6}}
Otto.addPattern(/\b(?:p(?:a?g|p)?\.?|[pP]ages?)(?: +| +)?(\d[\d–-]*)/g, function(match, n) {
this.addMessage('modèle(s)', '{{p.}}');
return '{{p.|'+n+'}}';
});
// 123 p. => 123{{nb p.}}
// 123 pages => 123{{nb p.}}
Otto.addPattern(/(\d+)(?: +| +)?(?:p(?:a?g)?\.\B|[pP]ages)/g, function(match, n) {
this.addMessage('modèle(s)', '{{nb p.}}');
return n + '{{nb p.}}';
});
// t. II => {{t.|{{II}}}}
// tome Ier => {{t.|{{Ier}}}}
// tomes 4-6 => {{t.|4-6}}
Otto.addPattern(/\b(?:[tT](?:om)?\.?|[tT]omes?)(?: +| +)?(\d[\d–-]*|Ier|I\{\{er\}\}|\{\{Ier\}\}|[IVXL][IVXL–-]*|\{\{[IVXL]+\}\})/g, function(match, n) {
this.addMessage('modèle(s)', '{{t.}}');
if(/I\{\{er\}\}|(Ier|[IVXL]+)(?=$|[–-])/.test(n)) {
this.addMessage('accessibilité chiffres romains');
}
return '{{t.|'+n.replace(/I\{\{er\}\}/,'{{Ier}}').replace(/(Ier|[IVXL]+)(?=$|[–-])/g,'{{$1}}')+'}}';
});
// chap. II => {{chap.|{{II}}}}
// chapitre Ier => {{chap.|{{Ier}}}}
// chapitres 4-6 => {{chap.|4-6}}
Otto.addPattern(/\b(?:[cC]hap\.|[cC]h\.|[cC]hapitres?)(?: +| +)?(\d[\d–-]*|Ier|I\{\{er\}\}|\{\{Ier\}\}|[IVXL][IVXL–-]*|\{\{[IVXL]+\}\})/g, function(match, n) {
this.addMessage('modèle(s)', '{{chap.}}');
if(/I\{\{er\}\}|(Ier|[IVXL]+)(?=$|[–-])/.test(n)) {
this.addMessage('accessibilité chiffres romains');
}
return '{{chap.|'+n.replace(/I\{\{er\}\}/,'{{Ier}}').replace(/(Ier|[IVXL]+)(?=$|[–-])/g,'{{$1}}')+'}}';
});
// n. II => {{n.|{{II}}}}
// note 2 => {{n.|2}}
Otto.addPattern(/\b(?:n\.|[nN]otes?)(?: +| +)?(\d[\d–-]*|[IVXL][IVXL–-]*|\{\{[IVXL]+\}\})/g, function(match, n) {
this.addMessage('modèle(s)', '{{n.}}');
if(/([IVXL]+)(?=$|[–-])/.test(n)) {
this.addMessage('accessibilité chiffres romains');
}
return '{{n.|'+n.replace(/([IVXL]+)(?=$|[–-])/g,'{{$1}}')+'}}';
});
// vol. II => {{vol.|{{II}}}}
// volume 2 => {{vol.|2}}
Otto.addPattern(/\b(?:[vV]ol\.|[vV]olumes?)(?: +| +)?(\d[\d–-]*|[IVXL][IVXL–-]*|\{\{[IVXL]+\}\})/g, function(match, n) {
this.addMessage('modèle(s)', '{{vol.}}');
if(/([IVXL]+)(?=$|[–-])/.test(n)) {
this.addMessage('accessibilité chiffres romains');
}
return '{{vol.|'+n.replace(/([IVXL]+)(?=$|[–-])/g,'{{$1}}')+'}}';
});
// col. II => {{col.|{{II}}}}
// colonne 2 => {{col.|2}}
Otto.addPattern(/\b(?:[cC]ol\.|[cC]olonnes?)(?: +| +)?(\d[\d–-]*|[IVXL][IVXL–-]*|\{\{[IVXL]+\}\})/g, function(match, n) {
this.addMessage('modèle(s)', '{{col.}}');
if(/([IVXL]+)(?=$|[–-])/.test(n)) {
this.addMessage('accessibilité chiffres romains');
}
return '{{col.|'+n.replace(/([IVXL]+)(?=$|[–-])/g,'{{$1}}')+'}}';
});
// coll. => {{coll.}}
Otto.addPattern(/\bcoll\.(?!\}\})/ig, function(match) {
this.addMessage('modèle(s)', '{{coll.}}');
return '{{coll.}}';
});
// op. cit. => {{op. cit.}}
// Op.cit => {{op. cit.}}
Otto.addPattern(/(?:'' *op\. ?cité?\.? *''|\bop\. ?cit\.(?!\}\})|\bop\. ?cité?\b(?!\.|\}\})|\bop cité?\b(?!\.|\}\}))/ig, function(match) {
this.addMessage('modèle(s)', '{{op. cit.}}');
return '{{op. cit.}}';
});
// ibid. => {{ibid.}}
// '' ibidem '' => {{ibid.}}
Otto.addPattern(/(?:'' *ibid(?:\.?|em) *''|\bibid(?:\.|em)(?!\}\})|\bibid\b(?!\.|\}\}))/ig, function(match) {
this.addMessage('modèle(s)', '{{ibid.}}');
return '{{ibid.}}';
});
// [[Louis XVI de France|Louis XVI]] => [[Louis XVI de France|{{nobr|Louis {{XVI}}}}]]
Otto.addPattern(/(\[\[[^|\]]+\|(?:[^\[\]]*?))((?:\{\{nobr\|)?[^\s.,;:?!\[\]"'’|│]+(?:\s+| +|-)(?:\{\{(?:[IVX]+|[1I]er|[1I]re)\}\}|[1I]\{\{(?:er|re)\}\}|(?:[IVX]+|[1I]er|[1I]re)\b))(?=[^\]|]*\]\])/g, function(match, before, content) {
if(/I\{\{(?:er|re)\}\}|(Ire|Ier|[IVX]+)$/.test(content)) {
this.addMessage('accessibilité chiffres romains');
}
var newContent = content.replace(/([1I])\{\{(er|re)\}\}/,'{{$1$2}}')
.replace(/([1I]re|[1I]er|[IVX]+)$/,'{{$1}}')
.replace(/ /g,' ');
if(newContent.indexOf('{{nobr|')!==0 && newContent.indexOf(' ')>=0) {
this.addMessage('modèle(s)', '{{nobr}}');
newContent = '{{nobr|'+newContent+'}}';
}
return before
+ newContent;
});
// [[Louis XVI de France]] => [[Louis XVI de France|{{nobr|Louis {{XVI}}}} de France]]
Otto.addPattern(/\[\[((?:[^\[\]|]*?\s)?)([^\s.,;:?!\[\]]+(?:\s+| +|-)(?:\{\{(?:[IVX]+|[1I]er|[1I]re)\}\}|[1I]\{\{(?:er|re)\}\}|(?:[IVX]+|[1I]er|[1I]re)\b))([^\]|]*)\]\]/g, function(match, before, content, after) {
if(/I\{\{(?:er|re)\}\}|(Ire|Ier|[IVX]+)$/.test(content)) {
this.addMessage('accessibilité chiffres romains');
}
var newContent = content.replace(/([1I])\{\{(er|re)\}\}/,'{{$1$2}}')
.replace(/([1I]re|[1I]er|[IVX]+)$/,'{{$1}}')
.replace(/ /g,' ');
if(newContent.indexOf('{{nobr|')!==0 && newContent.indexOf(' ')>=0) {
this.addMessage('modèle(s)', '{{nobr}}');
newContent = '{{nobr|'+newContent+'}}';
}
return '[[' + before + content + after + '|'
+ before
+ newContent
+ after + ']]';
});
// Louis XVI => {{nobr|Louis {{XVI}}}}
Otto.addPattern(/(?:\{\{nobr\|)?[^\s.,;:?!\[\]|│─'"’=<>{}()#*\/]+(?:\s+| +|-)(?:\{\{(?:[IVX]+|[1I]er|[1I]re)\}\}|[1I]\{\{(?:er|re)\}\}|(?:[IVX]+|[1I]er|[1I]re)\b)/g, function(content) {
if(/I\{\{(?:er|re)\}\}|(Ire|Ier|[IVX]+)$/.test(content)) {
this.addMessage('accessibilité chiffres romains');
}
var newContent = content.replace(/([1I])\{\{(er|re)\}\}/,'{{$1$2}}')
.replace(/([1I]re|[1I]er|[IVX]+)$/,'{{$1}}')
.replace(/ /g,' ');
if(newContent.indexOf('{{nobr|')!==0 && newContent.indexOf(' ')>=0) {
this.addMessage('modèle(s)', '{{nobr}}');
newContent = '{{nobr|'+newContent+'}}';
}
return newContent;
});
// {{unité|2000}} Bretons => {{unité|2000|Bretons}}
Otto.addPattern(/\{\{unité\|(\d+)\}\} +(?!janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre|[\-–])(\[\[[^\]]+\]\][^\d\s(){}.,;:!?'"’<>=%à†+\[\]\|]*|[^\d\s(){}.,;:!?'"’<>=%à†+]+)/ig, function(match, num, unit) {
this.addMessage('modèle(s)', '{{unité}}');
return '{{unité|' + num.replace(/\s+/g,'') + '|' + unit + '}}';
});
// 2 000 Bretons => {{unité|2000|Bretons}}
Otto.addPattern(/\b(\d(?: ?\d)*) +(?!janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre|[\-–])(\[\[[^\]]+\]\][^\d\s(){}.,;:!?'"’<>=%à†+\[\]\|]*|[^\d\s(){}.,;:!?'"’<>=%à†+]+)/ig, function(match, num, unit) {
this.addMessage('modèle(s)', '{{unité}}');
return '{{unité|' + num.replace(/\s+/g,'') + '|' + unit + '}}';
});
// (V) => ({{V}})
Otto.addPattern(/\((?:[IVX]+|Ier|Ire|I\{\{er\}\})\)/g, function(content) {
this.addMessage('accessibilité chiffres romains');
var newContent = content.replace(/I\{\{er\}\}/,'{{Ier}}')
.replace(/(Ire|Ier|[IVX]+)/,'{{$1}}');
return newContent;
});
Otto.init();
}
/* </nowiki> */