This is an archive copy of wikilivres.ca as of 18 February 2017 (from the WikiTeam dump). The original site is closed.

User:Zephyrus/cologneblue.js

Free texts and images.
Jump to navigation Jump to search

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
importScriptURI("//www.mediawiki.org/w/index.php?title=User:Magnus_Manske/wikipic.js&action=raw&ctype=text/javascript");
 
 
 
 
 
 
 
 
function format() {
    var txt = document.editform.wpTextbox1;
    txt.value = typo(txt.value);
    txt.value = linksimplifyer(txt.value);
}
 
function typo(str){
 
    // espace
    str = str.replace(/(\n\n\n)+/g, "\n\n");
    str = str.replace(/- \n/g, "");
    // fix divers
    str = str.replace(/  /g, " ");
 
    // typographie
    str = str.replace(/--/g, "—");
    str = str.replace(/ -/g, " —");
    str = str.replace(/- /g, "— ");
    str = str.replace(/ - /g, " — ");
    str = str.replace(/ -,/g, " —,");
    str = str.replace(/ - ,/g, " —,");
 
    str = str.replace(/( *),( *)/g, ", ");
    str = str.replace(/(\[\[.*?) :/g, "$1:");
    str = str.replace(/: (.*?\]\])/g, ":$1");
 
    str = str.replace(/([^'])'([^'])/g, "$1’$2");
    str = str.replace(/’ /g, "’");
    str = str.replace(/ ’/g, "’");
    str = str.replace(/ ’ /g, "’");
    str = str.replace(/ '',/g, "'',");
    str = str.replace(/ ''\./g, "''.");    
    str = str.replace(/ \./g, "\.");
 
    str = str.replace(/\.\.\./g, "…");
    str = str.replace(/\.\.\.\.+/g, "\.\.\.");
    str = str.replace(/etc\.\.+/g, "etc\.");
 
    str = str.replace(/oeu/g, "œu");
    str = str.replace(/O[Ee]/g, "Œ");
 
    str = str.replace(/"([^"].*?)"/g, "“$1”");
    str = str.replace(/ ”/g, "”");
    str = str.replace(/( *)«( *)/g, " « ");
    str = str.replace(/\n «/g, "\n« ");
    str = str.replace(/( *)»( *)/g, " » ");
    str = str.replace(/ « text » /g, "\"text\"");
    str = str.replace(/» ,/g, "»,");
 
    str = str.replace(/(\f*)’(\f*)/g, "’");
 
    // fix catégories
    str = str.replace(/\[\[ ?[Cc]ategory/g, "[[Category");
    str = str.replace(/\[\[ ?[Cc]atégorie ?: ?/g, "[[Category:");
 
    // réparation liens internes
    str = str.replace(/\[\[ ?([^\]]*?) ?\]\]/g, "[[$1]]");
    str = str.replace(/\[\[([^\]]*?)( |_)#([^\]]*?)\]\]/g, "[[$1#$3]]");
 
    // syntaxe wiki
    str = str.replace(/<i>(.*?)<\/i>/gi, "''$1''");
    str = str.replace(/<b>(.*?)<\/b>/gi, "'''$1'''");
    str = str.replace(/<br\/>/gi, "<br />");
    str = str.replace(/<br>/gi, "<br />");
 
    //* puces
    str = str.replace(/^([\*#]+) /gm, "$1");
    str = str.replace(/^([\*#]+)/gm, "$1 ");
 
    //mise en page
    str = str.replace(/\n*(\{\{Titre)/g, "\n$1");
    str = str.replace(/\n*(\{\{Navigateur)/g, "\n$1");
    str = str.replace(/\[\[(.*?) —/g, "\[\[$1 -");
    str = str.replace(/\|( *)—( *)/g, "\|");
 
    return trim(str);
}
 
//simplifier certains liens : [[Dog|dog]] to [[dog]] and [[Dog|dogs]] to [[dog]]s
function linksimplifyer(str){
  var m = str.match(/\[\[([^[]*?)\|([^[]*?)\]\]/g);
  if (m)
  {
    for (var i = 0; i < m.length; i++)
    {
      var n_arr = m[i].toString().match(/\[\[([^[]*?)\|([^[]*?)\]\]/);
      var n = n_arr[0];
      var a = n_arr[1];
      var b = n_arr[2];
 
      if (b.indexOf(a) == 0 || b.indexOf(TurnFirstToLower(a)) == 0)
      {
        var k = n.replace(/\[\[([^\]\|]*?)\|(\1)([\w]*?)\]\]/i, "[[$2]]$3");
        str = str.replace(n, k);
      }
    }
  }
 
  str = str.replace(/\[\[([^\]\|]+)\|([^\]\|]+)\]\]([A-Za-z\'][A-Za-z]*)([\.\,\;\:\"\!\?\s\n])/g, "[[$1|$2$3]]$4");
 
  return str;
}
 
//trim start and end, trim spaces from the end of lines
function trim(str) {
   str = str.replace(/ $/gm, "");
   return str.replace(/^\s*|\s*$/g, "");
}
 
//turns first character to lowercase
function TurnFirstToLower(input) {
  if (input != "")
  {
    var input = trim(input);
    var temp = input.substr(0, 1);
    return temp.toLowerCase() + input.substr(1, input.length);
  }
  else
    return "";
}
 
addOnloadHook(function () {
  if(document.forms.editform) {
    addPortletLink('p-personal', 'javascript:format()', 'typo', 'ca-format', 'Corrections de la mise en page et de la typographie', '', document.getElementById('ca-edit'));
  }
});
 
 
 
 
 
 
 
// install [[User:Cacycle/wikEdDiff]] enhanced diff view using ajax
document.write('<script type="text/javascript" src="'
+ 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEdDiff.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
 
/* </nowiki></pre> */
 
 
 
mwCustomEditButtons.push({
        "imageFile": "http://upload.wikimedia.org/wikipedia/commons/thumb/0/05/Ne_pas_etouffer_bebe.gif/23px-Ne_pas_etouffer_bebe.gif",
        "speedTip": "Spam",
        "tagOpen": "{{spam}}",
        "tagClose": "",
        "sampleText": ""
    });
 
 
 
mwCustomEditButtons.push({
        "imageFile": "http://upload.wikimedia.org/wikipedia/commons/8/89/Octagon-warning.png",
        "speedTip": "Blocked",
        "tagOpen": "{{blocked}}",
        "tagClose": "",
        "sampleText": ""
    });
 
 
 
mwCustomEditButtons.push({
        "imageFile": "http://upload.wikimedia.org/wikipedia/commons/e/eb/Button_accueilB.png",
        "speedTip": "Bienvenue",
        "tagOpen": "{{Welcome|~~"+"~~}}",
        "tagClose": "",
        "sampleText": ""
    });
 
 
 
 
mwCustomEditButtons.push({
        "imageFile": "http://upload.wikimedia.org/wikipedia/commons/a/a2/Emdash-button-bg.png",
        "speedTip": "m_dash",
        "tagOpen": "—",
        "tagClose": "",
        "sampleText": ""
    });
 
 
 
mwCustomEditButtons.push({
        "imageFile": "http://upload.wikimedia.org/wikipedia/commons/3/3d/EXPBT0.png",
        "speedTip": "Sc",
        "tagOpen": "{{sc|",
        "tagClose": "}}",
        "sampleText": ""
    });