I've been a longtime fan of Galeon for a web browser, but it's recently fallen behind Firefox as far as features go (primarily due to Firefox's great third-party extension library). Unfortunately, Firefox lacks what I consider the single most useful feature of Galeon: smart bookmarks.
Now, you're thinking to yourself, "but Firefox does have smart bookmarks!" For those of you not familiar with these things, the basic idea is that you can assign a keyword (eg. "wiki") to a specially-formatted bookmark, such that if you type something like "wiki firefox" into the location bar, it will search Wikipedia for the word "firefox." How does Galeon do this differently? Well, what if you really just wanted to go directly to the Wikipedia home page and not perform a search? Galeon bookmarks have two addresses: one for searching, and one if you don't include a search phrase. Firefox, in the interest of not confusing more inexperienced users, has opted for the more simplistic approach, but I personally find it rather annoying to need two keywords for every page (sometimes I really do just want to go to a website's homepage instead of searching it).
What you'll find below are my solution to this problem. By using javascript, I have been able to replicate Galeon's functionality within firefox. All you need to do is right-click on the link and add it as a bookmark (or if that doesn't work, copy the javascript code into a new bookmark); I've even provided a suggested keyword
I've recently switched from a Linux desktop computer to a Macbook. Along with this comes a switch to Safari, which doesn't support bookmark keywords at all, and limits your search engines to a single option. Enter Quicksilver, an application which not only lets you have web search options, but can do oh so much more (you'll just have to visit their site to find out). The qss-http:// bookmarks are intended for the Web Search plugin for Quicksilver. No need for javascript here, just paste the link into your Quicksilver catalog and search away.
The following somewhat random collection of bookmarklets do not necessarily take you to a new location, nor are any of them entirely (or even at all) my own creations, but I find all of them quite useful.
| keyword | description |
| Helpful Tasks | |
| fix | Revert all form input fields to my preferred color set, overriding anything specified by the website's own CSS. |
| javascript:(function(){traverse(window); function traverse(w){var styles='input.xris_fixed_colors, textarea, select{background: #090916 ! important; color: #C3C3D0 !important; }'; var doc=w.document; if(doc.createStyleSheet){doc.createStyleSheet("javascript:'"+styles+"'"); }else{var newSS=doc.createElement('link'); newSS.rel='stylesheet'; newSS.href='data:text/css,'+escape(styles); doc.getElementsByTagName("head")[0].appendChild(newSS); }/* fix all of the fields in this frame */ var F=doc.forms; for(var j=0; j<F.length; j++){var f=F[j]; for(var i=0; i<f.length; i++){if(f[i].type.toLowerCase()=="password" || f[i].type.toLowerCase()=="text")f[i].className +=' xris_fixed_colors'; }}/* Handle any subframes */ if(w && w.frames){for(var i=0; i<w.frames.length; i++){traverse(w.frames[i]); }}}})(); | |
| Turns the first password element it finds into plain text. | |
| javascript:(function(){var F=document.forms; for(var j=0; j<F.length; j++){var f=F[j]; for(var i=0; i<f.length; i++){if(f[i].type.toLowerCase()=='password')f[i].type='text'; }}})(); | |
| tiny | Send the current page to tinyurl.com |
| javascript:void(location.href='http://tinyurl.com/create.php?url='+location.href) | |
| Disable some html functions that tell the browser not to let you choose to auto-fill a password field. | |
| javascript:(function(){var ca,cea,cs,df,dfe,i,j,x,y; function n(i,what){return i+' '+what+((i==1)?'':'s')}ca=cea=cs=0; df=document.forms; for(i=0; i<df.length; ++i){x=df[i]; dfe=x.elements; if(x.onsubmit){x.onsubmit=''; ++cs; }if(x.attributes['autocomplete']){x.attributes['autocomplete'].value='on'; ++ca; }for(j=0; j<dfe.length; ++j){y=dfe[j]; if(y.attributes['autocomplete']){y.attributes['autocomplete'].value='on'; ++cea; }}}alert('Removed autocomplete=off from '+n(ca,'form')+' and from '+n(cea,'form element')+', and removed onsubmit from '+n(cs,'form')+'. After you type your password and submit the form, the browser will offer to remember your password.')})(); | |
| Convert "post" forms to "get" ones. | |
| javascript:(function(){var x,i; x=document.forms; for(i=0; i < x.length; ++i)x[i].method='get'; alert('Changed ' + x.length + ' forms to use the GET method. After submitting a form from this page, you should be able to bookmark the result.'Z); })(); | |
| Hide any elements that would load a browser plugin. | |
| javascript:(function(){function R(w){try{var d=w.document,j,i,t,T,N,b,r=1,C; for(j=0; t=['object','embed','applet','iframe'][j]; ++j){T=d.getElementsByTagName(t); for(i=T.length-1; (i+1)&&(N=T[i]); --i)if(j!=3||!R((C=N.contentWindow)?C:N.contentDocument.defaultView)){b=d.createElement('div'); b.style.width=N.width; b.style.height=N.height; b.innerHTML='<del>'+(?'third-party '+t:t)+'</del>'; N.parentNode.replaceChild(b,N); }}}catch(E){r=0}return r}R(self); var i,x; for(i=0; x=frames[i]; ++i)R(x)})() | |