There are 2 previous versions of this script.
// ==UserScript==
// @name YouTube fmt=18/22 Links
// @namespace http://userscripts.org/users/23652
// @description Adds &fmt=18 to all YouTube links
// @include http://*.youtube.com/*
// @include http://youtube.com/*
// @copyright JoeSimmons
// ==/UserScript==
var quality = 18; // You can either choose 18 or 22 for a fmt (format)
var l, ytlinks = document.evaluate("//a[contains(@href, 'watch?v=')]", document, null, 6, null);
for(var i=ytlinks.snapshotLength-1; i>=0; i--) {
l = ytlinks.snapshotItem(i);
if(l.href.indexOf("&fmt=")==-1) {l.href+="&fmt="+quality;}
else {l.href=l.href.replace(/\&fmt=\d+/,"&fmt="+quality);}
}