User:Crazytales56297/monobook.js
From Wikipedia
< User:Crazytales56297
Note: After saving, you may have to bypass your browser's cache to see the changes. Mozilla / Firefox / Safari: hold down Shift while clicking Reload, or press Ctrl-Shift-R (Cmd-Shift-R on Apple Mac); IE: hold Ctrl while clicking Refresh, or press Ctrl-F5; Konqueror:: simply click the Reload button, or press F5; Opera users may need to completely clear their cache in Tools→Preferences.
// <pre><nowiki> // hook addOnloadHook(wysawygInit); //init function wysawygInit() { if ($('wpTextbox1')) { $('content').innerHTML = // '<d'+'iv style="width:100%;height:100px;overflow:auto" id="debug"></d'+'iv>'+ '<i'+'frame width="90%" height="400" id="rtshed" name="rtshed" style="word-wrap:pre"></i'+'frame>' + $('content').innerHTML; rtshed.document.open(); rtshed.document.write(' <html><head>' + '<l'+'ink type="text/css" rel="stylesheet" href="/w/index.php?title=User:Zocky/wysawyg.css&action=raw&type=text/css"/>' + '<s'+'cript type="text/javascript" src="/w/index.php?title=User:Zocky/wysawygEd.js&action=raw&type=text/javascript"/>' + '<s'+'cript type="text/javascript"/>RTSH.language = "javascript";</'+'script>' + '</head><body id="ffedt"><pre id="ieedt">' + "hello '''world'''".replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">") + '</pre></body></html>'); rtshed.document.close(); // rtshed.contentWindow.CodePress.initialize(); }; } codePressTriggerChars="[{|}]='*#:"; function codePressHighlightHook(x) { // $('debug').innerHTML=x.replace(/&/g,'&').replace(/</g,'<').replace(/\n/,'<br/>'); //{{ }} -> div x=x.replace( /\{\{()/g, '<ww>{{</ww><wt><wa>$1' ); x=x.replace( /()\}\}/g, '$1</wa></wt><ww>}}</ww>' ); //[[ ]] -> u x=x.replace( /\[\[([Ii]mage:)/g, '<ww>[[</ww><wl c="img"><wa>$1' ); x=x.replace( /\[\[()/g, '<ww>[[</ww><wl c="int"><wa>$1' ); x=x.replace( /()\]\]/g, '$1</wa></wl><ww>]]</ww>' ); //'' ''' -> i b x=x.replace( /'''(.*?)'''/g, '<tt>'''</tt><b>$1</b><tt>'''</tt>' ); x=x.replace( /''(.*?)''/g, '<tt>''</tt><i>$1</i><tt>''</tt>' ); // | -> span x=x.replace( /\|([^<|]*?)=/g, '</wa><wa><ww>|$1=</ww>' ); x=x.replace( /\|()/g, '</wa><wa><ww>|</ww>$1' ); // == == -> emp x=x.replace( /(^|\n)( *)====(.*)====( *)(\n|$)/g, '$1$2<ww>====</ww><wh4>$3</wh4><ww>====</ww>$4$5' ); x=x.replace( /(^|\n)( *)===(.*)===( *)(\n|$)/g, '$1$2<ww>===</ww><wh3>$3</wh3><ww>===</ww>$4$5'); x=x.replace( /(^|\n)( *)==(.*)==( *)(\n|$)/g, '$1$2<ww>==</ww><wh2>$3</wh2><ww>==</ww>$4$5'); x=x.replace( /(^|\n)( *)=(.*)=( *)(\n|$)/g, '$1$2<ww>=</ww><wh1>$3</wh1><ww>=</ww>$4$5'); x=x.replace( /(^|\n)([*#:]+)([^\n]*?)(?=\n|$)/g, function (p,p1,p2,p3,p4) { return p1+'<wr><ww>' + p2 + '</ww>' + p3 +'</wr>'; }); // $('debug').innerHTML=x.replace(/\n/g,'<br/>').replace(/&/g,'&').replace(/</g,'<'); return x; } // cross-browser event functions function eventAddListener (element,event,handler) { if (element.addEventListener) element.addEventListener(event,handler,false) else element.attachEvent('on'+event,handler); } function eventRemoveListener (element, event, handler) { if (element.removeEventListener) element.removeEventListener(event,handler,false) else element.detachEvent('on'+event,handler); } function eventStop(event) { if (event.preventDefault) { event.preventDefault(); event.stopPropagation(); } else { event.returnValue = false; event.cancelBubble = true; } } function eventTarget(event) { return event.target || event.srcElement; } function eventKeyCode(event) { return event.preventDefault ? event.which : event.keyCode ; } function $(id) { return document.getElementById(id); }