User:Omegatron/monobook.js/autolinker.js

/*

 */

/* Autolink wikilinks and {{templates}} (especially useful for monobook.js and similar pages) */

/* See Wikipedia:WikiProject User scripts/Scripts/Autolink */

/* Shouldn't affect things *inside* HTML tags, either */

addOnloadHook(function () {

// Get the HTML of just the main body of the page, not including textareas hopefully

if (document.getElementById('wikiDiff')) {

targetdiv = document.getElementById('wikiDiff'); // wikiDiff if it's there

} else {

if (document.getElementById('wikiPreview')) {

targetdiv = document.getElementById('wikiPreview'); // wikiPreview if it's there

} else

if (document.getElementById('bodyContent')) {

targetdiv = document.getElementById('bodyContent'); // bodyContent div for most pages

} else

return;

}

var content = targetdiv.innerHTML;

content = content.replace(/([^\[])\[{2}([^\[\]\|\<\>\n]*)([^\[\]\<\>\n]*?)?\]{2}([^\]])/g, '$1[' + '[$2$3]' + ']$4'); // Make wikilink code into links

content = content.replace(/([^\{])\{{2}(subst\:|msg\:)?([^\{\}\|\<\>\n]*)([^\{\}\<\>\n]*?)?\}{2}([^\}])/g, '$1{' + '{$2$3$4}' + '}$5'); // Make template code into links

targetdiv.innerHTML = content; // Write it back

});

/*

*/