User:TOonepiece/monobook.js

/* &lt;pre&gt; &lt;nowiki&gt; 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. &lt;/nowiki&gt; &lt;/pre&gt;

AzaToth's reversion tools
&lt;pre&gt; &lt;nowiki&gt; */ // importScript('User:AzaToth/twinkle.js'); /* &lt;/nowiki&gt; &lt;/pre&gt;

WikEd, replaces Firefox's text edit window
&lt;pre&gt; &lt;nowiki&gt; */ // install User:Cacycle/wikEd in-browser text editor document. write ( '&lt;script type="text/javascript" src="' + 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd.js'  + '&amp;action=raw&amp;ctype=text/javascript&amp;dontcountme=s"&gt;&lt;/script&gt;' ) ; /* &lt;/nowiki&gt; &lt;/pre&gt;

Lupin's anti-vandal tools
&lt;pre&gt; &lt;nowiki&gt; */ // Script from User:Lupin/recent2.js document. write ( '&lt;script type="text/javascript" src="'             + 'http://en.wikipedia.org/w/index.php?title=User:Lupin/recent2.js'              + '&amp;action=raw&amp;ctype=text/javascript&amp;dontcountme=s"&gt;&lt;/s' + 'cript&gt;' ) ; /* &lt;/nowiki&gt; &lt;/pre&gt;

Popups
&lt;pre&gt; &lt;nowiki&gt; */ /* User:Lupin/popups.js */ document. write ( '&lt;script type="text/javascript" src="'             + 'http://en.wikipedia.org/w/index.php?title=User:Lupin/popups.js'              + '&amp;action=raw&amp;ctype=text/javascript&amp;dontcountme=s"&gt;&lt;/script&gt;' ) ; /**/ /* &lt;/nowiki&gt; &lt;/pre&gt;

Watchlist sorter
&lt;pre&gt; &lt;nowiki&gt; Sorts your watchlist by namespace, and also adds spaces for readability. addOnloadHook ( 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 &lt; 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 &gt; 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 &lt; 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 ) ;   }  } ) ;