Browser tips
- Bookmarklets
Aren't really hacks, just very useful for me to use with my minimalistic theme (no MoinMoin buttons or links, just a search box). As javascript: protocol is not supported I require an HTML macro.
- External editor for textarea
-
Use the mozex extension to cto edit textareas with vim /usr/X11R6/bin/xterm -e /usr/bin/vim %t or your favorite editor. Recent mozex versions allow keybindings by itself, otherwise you can use keyconfig.xpi extension to assign a key. In addition to the GUI configuration dialog you may add it manually to your prefs.js file (Ctrl-e):
user_pref("keyconfig.main.xxx_key____mozex_edit_textarea__", "control][E][][/* CODE */\nmozexEditTextarea()\n][");
- Hide navigation helpers
-
Add the following to your user css URL (for modern theme)
#pagelocation{ display:none;} #navibar {display:none;} #username {display:none;} #credits {display:none;} #pageinfo {display:none;} .editbar {display:none;}
- Show navigation helpers
-
Add a custom footer to your configuration with some javascript code (for modern theme) It will allow you to show the hidden elements pressing n (navigation), u (username), l (pagelocation) and t (toolbar edition) Additionally you can press e and r to get directly to edit page and the raw view. Tested in firefox.
page_footer1 = """ <script> document.onkeypress = function esc(e) { var key; var ch=""; var target; if (e == null) { // IE key = event.keyCode; } else { // Mozilla key = e.which; } if (e.ctrlKey) { ch += "ctrl-" } target = e.target; // stop if we are on a editable element target = e.target.tagName.toUpperCase(); if ( target == "INPUT" || target == "TEXTAREA" || target == "SELECT" ){ return true; } ch += String.fromCharCode(key) switch(ch){ case 'l': document.getElementById("pagelocation").style.display = "block"; break; case 'u': document.getElementById("username").style.display = "block"; break; case 'n': document.getElementById("navibar").style.display = "block"; break; case 'r': top.location.href = top.location.href.substr(0,top.location.href.indexOf("?")) + "?action=raw"; break; case 'e': top.location.href = top.location.href.substr(0,top.location.href.indexOf("?")) + "?action=edit"; break; case 't': uls=document.getElementsByTagName("UL"); for(var i=0;i<uls.length;i++){ if ( uls[i].className == "editbar" ){ uls[i].style.display = "block"; } } break; } } </script> """