User:La Alquimista/monobook.js

/* Note: After saving, you have to bypass your browser's cache to see the changes. To do this in Firefox/Mozilla/Safari: hold down Shift while clicking Reload, or press Ctrl-Shift-R). If you use Internet Explorer: press Ctrl-F5, Opera/Konqueror: press F5.

AzaToth's reversion tools
*/ // importScript('User:AzaToth/twinkle.js'); /*

WikEd, replaces Firefox's text edit window
*/ // install User:Cacycle/wikEd in-browser text editor mw.loader.load('https://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd.js' + '&action=raw&ctype=text/javascript'); /*

Lupin's anti-vandal tools
*/ importScript('User:Lupin/recent2.js'); // Script from User:Lupin/recent2.js mw.loader.load('https://en.wikipedia.org/w/index.php?title=User:Lupin/recent2.js' + '&action=raw&ctype=text/javascript'); /*

Popups
*/ /* User:Lupin/popups.js */ mw.loader.load('https://en.wikipedia.org/w/index.php?title=User:Lupin/popups.js' + '&action=raw&ctype=text/javascript'); /**/ /*

Watchlist sorter
Sorts your watchlist by namespace, and also adds spaces for readability. $(function { if (location.href.indexOf('Special:Watchlist') == -1) return; //Are we on a watchlist? //days = document.getElementById('bodyContent').getElementsByTagName('ul'); days = document.evaluate( //Hell knows how it works - found in "Dive into Greasemonkey" "//ul[@class='special']", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); for (d = 0; d < days.snapshotLength; d++) { //For each day day = days.snapshotItem(d); newday = document.createElement('ul'); //This will replace the old listing while ((diffs = day.getElementsByTagName('li')).length > 0) { //Are there any diffs left? //Try to extract the namespace As = diffs[0].getElementsByTagName('a'); if (As[0].innerHTML == 'diff') pagename = As[2].innerHTML; else pagename = As[1].innerHTML; if (pagename.indexOf(':') == -1) namespace = 'Main'; else namespace = pagename.split(':')[0]; //This will fail for articles which contain ":" in name hdrs = newday.getElementsByTagName('h5'); //Get the list of namespace headers hdr = null; for (j=0; j<hdrs.length; j++) //Find the header if (hdrs[j].innerHTML==namespace) { hdr = hdrs[j]; break; } if (hdr==null) { //Not found? Make a new one! hdr = document.createElement('h5'); hdr.innerHTML = namespace; newday.appendChild(hdr); namespacesub = document.createElement('ul'); newday.appendChild(namespacesub); } hdr.nextSibling.appendChild(diffs[0]); //Move the diff } newday.appendChild(document.createElement('hr')); //For readablility day.parentNode.replaceChild(newday,day); }

// // If you are editing a page, click the fancruft button on your tab bar to add "" to the top, set "Marked as fancruft" as the edit summary, mark it as a minor edit, and submit. function doQfancruft {  document.editform.wpTextbox1.value = '{' + '{' + 'Fancruft|date=' + '{' + '{' + 'subst:CURRENTMONTHNAME}} ' + '{' + '{' + 'subst:CURRENTYEAR}}}}\n\n' + document.editform.wpTextbox1.value;   document.editform.wpSummary.value = 'Marked as fancruft.';   document.editform.wpMinoredit.checked = true;   document.editform.submit; }   addOnloadHook(function {   if (wgCanonicalNamespace == "User" || wgCanonicalNamespace == "User_talk") {      return;   }   if (document.editform) {      mw.util.addPortletLink("p-cactions", "javascript:doQfancruft", "fancruft", "ca-fancruft", "Mark as fancruft", "");   } });   // by download //

});