Yahoo direct non-tracking search

Strips tracking and redirection from Yahoo search urls

As of 2015-10-12. See the latest version.

// ==UserScript==
// @name          Yahoo direct non-tracking search
// @description   Strips tracking and redirection from Yahoo search urls
// @include       https://*yahoo.com/*
// @version       1.0.3
// @author        wOxxOm
// @namespace     wOxxOm.scripts
// @license       MIT License
// @grant         none
// @run-at        document-start
// @require       https://greasyfork.org/scripts/12228/code/setMutationHandler.js
// ==/UserScript==

setMutationHandler(document, '.search-assist-form-wrapper form, a', function(nodes) {
  nodes.forEach(function(node) {
    switch (node.localName) {
      case 'form':
        if (node.action.indexOf('/search') > 0) {
            node.addEventListener('submit', function(e){
              e.preventDefault();
              e.stopPropagation();
              e.target.action = e.target.action.replace(/_yl[tu]=[\w;_=.-]+/, '');
              e.target.submit();
            });
        }
        break;
      case 'a':
        node.href = node.href.replace(/;?_yl[tu]=[\w;_=.-]+\/?/, '')
                             .replace(/^.+?\/RU=(http[^\/]+)\/?.*$/, function(s, url) { return decodeURIComponent(url) });
        break;
    }
  });
  return true;
});