====== Tools ====== Some essential utilities I want to be able to find again or recommend to friends. ===== Notifu ===== Win32 utility to create pop-up balloons from a command line. Essential for scripting! {{http://www.paralint.com/projects/notifu/screen_shot_01.png|Screenshot of Notifu showing a Balloon notification}} Website: [[http://www.paralint.com/projects/notifu/]] ===== SendMsg ===== Win32 utility to send windows messages to applications, allowing you to simulate button presses etc from a command line. You need to use a tool like Spy++ to capture the messages you want to replay. Website: [[http://www.maxoutput.com/SendMsg.html]] ====== Win32 Fix-ups ====== When you rebuild a machine, there are a number of things you always need to do to get it feeling right - such as changing file associations etc. Well now and again I find a nifty trick to do something properly or automatically, and these are listed below. ===== Uninstall ancient MSN Messenger ===== Just run this command: !!''RunDLL32.EXE advpack.dll,LaunchINFSection %windir%\INF\msmsgs.inf,BLC.Remove''!! ===== Uninstall Windows Picture and Fax Viewer ===== This 'feature' is just plain annoying, because the default shell action is "Preview" when it blatently ought to be "Open". This means that even if you install a decent picture viewer, it won't take effect. But you can remove this annoyance with: !!''regsvr32 /u /c shimgvw.dll''!! **NB:** This also removes the ability to show thumbnails (mini-thumbnails on a folder icon do still appear to work though, but that might be cached) ===== Firefox Magic ===== ==== GreaseMonkey ==== === Convert Javascript links to ordinary links === I hate websites which use ''href='javascript:window.document.href='...''' in their ''..'' tags when an ordinary link would do! You can't middle-click JS links into new tabs! Here's a script which fixed this for me: // ==UserScript== // @name Rewrite JS URLs to ordinary URLs // @namespace myscripts // @include http://www.example.com/silly_web_2.0/* // @require http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.js // ==/UserScript== $(document).ready(function() { $("a[href]") .each(function(index, domElement){ var jObj = $(this) var rHref = jObj.attr("href"); if( rHref.match(/^javascript:window.document.location='[^']*'$/) ) { rHref = rHref.replace(/^javascript:window.document.location='/, ""); rHref = rHref.replace(/'$/, ""); jObj.attr("href", rHref); } }) ; }); You need to replace @include to match the URLs you want the script applied to, and you probably want to change the namespace to better suite your personal organisation of greasemonkey scripts.