Skip to content

Instantly share code, notes, and snippets.

View michaelfox's full-sized avatar
🦊

Michael Fox michaelfox

🦊
  • Kirschbaum Development Group
View GitHub Profile

Keybase proof

I hereby claim:

  • I am michaelfox on github.
  • I am michaelfox (https://keybase.io/michaelfox) on keybase.
  • I have a public key ASBGi0B0HzDkYT0KTVWSJO7KtLySf8opq9tDtV_4MTiLZgo

To claim this, I am signing this object:

@michaelfox
michaelfox / form-restore.bm.js
Created May 22, 2014 18:27
Form Save / Restore Bookmarklets
javascript:(function(e%2Ct%2Ci%2Co%2Cn%2Ca%2Cr%2Cc)%7Bif(!(n%3De.jQuery)%7C%7Ci%3En.fn.jquery%7C%7Co(n))%7Ba%3Dt.createElement(%22script%22)%3Ba.type%3D%22text%2Fjavascript%22%3Ba.src%3D%22http%3A%2F%2Fajax.googleapis.com%2Fajax%2Flibs%2Fjquery%2F%22%2Bi%2B%22%2Fjquery.min.js%22%3Ba.onload%3Da.onreadystatechange%3Dfunction()%7Bif(!r%26%26(!(c%3Dthis.readyState)%7C%7C%22loaded%22%3D%3D%3Dc%7C%7C%22complete%22%3D%3D%3Dc))%7Bo((n%3De.jQuery).noConflict(1)%2Cr%3D1)%3Bn(a).remove()%7D%7D%3Bt.documentElement.childNodes%5B0%5D.appendChild(a)%7D%7D)(window%2Cdocument%2C%221.11.0%22%2Cfunction(e)%7Bfunction%20t(t)%7Bvar%20i%3De(t)%2Co%3D%5B%22id%22%2C%22name%22%2C%22action%22%5D%2Cn%3Dfalse%3Be.each(o%2Cfunction(e%2Ct)%7Bif(!n%26%26i.attr(t))n%3Di.attr(t)%7D)%3Breturn%20n%7De.unserialize%3Dfunction(e)%7Bfor(var%20t%2Ci%2Co%3DdecodeURI(e.replace(%2F%5C%2B%2Fg%2C%22%20%22))%2Cn%3Do.split(%22%26%22)%2Ca%3D%7B%7D%2Cr%3D0%2Cc%3Dn.length%3Br%3Cc%3Br%2B%2B)%7Bt%3Dn%5Br%5D.split(%22%3D%22)%3Bi%3Dt%5B0%5D%3Bif(void%200%3D%3D%3
@michaelfox
michaelfox / tablesort.js
Created April 17, 2013 19:01
Bookmarklet to make tables sortable. (Doesn't work everywhere)
javascript:function toArray (c){var a, k;a=new Array;for (k=0; k<c.length; ++k)a[k]=c[k];return a;}function insAtTop(par,child){if(par.childNodes.length) par.insertBefore(child, par.childNodes[0]);else par.appendChild(child);}function countCols(tab){var nCols, i;nCols=0;for(i=0;i<tab.rows.length;++i)if(tab.rows[i].cells.length>nCols)nCols=tab.rows[i].cells.length;return nCols;}function makeHeaderLink(tableNo, colNo, ord){var link;link=document.createElement('a');link.href='javascript:sortTable('+tableNo+','+colNo+','+ord+');';link.appendChild(document.createTextNode((ord>0)?'a':'d'));return link;}function makeHeader(tableNo,nCols){var header, headerCell, i;header=document.createElement('tr');for(i=0;i<nCols;++i){headerCell=document.createElement('td');headerCell.appendChild(makeHeaderLink(tableNo,i,1));headerCell.appendChild(document.createTextNode('/'));headerCell.appendChild(makeHeaderLink(tableNo,i,-1));header.appendChild(headerCell);}return header;}g_tables=toArray(document.getElementsByTagName('table'));
@michaelfox
michaelfox / brettquix.txt
Created June 28, 2012 13:43 — forked from ttscoff/brettquix.txt
Brett's Quix File
@Brett's searches
@Brett's custom searches
go https://duckduckgo.com/?q=%21%20%s Open first result (DuckDuckGo)
b https://duckduckgo.com/?q=%21%s Bang search (DuckDuckGo)
grep https://www.cueup.com/?q=%s&fq=1 Greplin
ss https://duckduckgo.com/site:%d%20%s Current site (DuckDuckGo)
bt https://duckduckgo.com/site:brettterpstra.com%20%s BrettTerpstra.com (DuckDuckGo)
gh http://github.com/search?q=%s&type=Everything&repo=&langOverride=&start_value=1 Search GitHub (everything)
hints http://hints.macworld.com/search.php?query=%s&keyType=all&datestart=&dateend=&topic=0&type=stories&results=50&mode=search Search Mac OS X Hints
mu http://www.macupdate.com/find/mac/%s Search MacUpdate (Software)
@michaelfox
michaelfox / README.md
Created September 9, 2011 16:06
Notational Velocity (nvAlt) Custom Stylesheet and Markup HTML

Usage

Copy these files to your ~/Library/Application Support/Notational Velocity/ folder

@michaelfox
michaelfox / quix.txt
Created June 20, 2011 20:57
Quix Commands
>
> Author: Michael Fox
> Website: http://www.michaelfox.name
>
> Quix: http://quixapp.com
>
@Quixearches Quick Searches
acronym javascript:q%20=%20""%20+%20(window.getSelection%20?%20window.getSelection()%20:%20document.getSelection%20?%20document.getSelection()%20:%20document.selection.createRange().text);%20if%20(!q)%20q%20=%20prompt("You%20didn't%20select%20any%20text.%20%20Enter%20a%20search%20phrase:",%20"");%20if%20(q!=null)%20location="http://www.acronymfinder.com/af-query.asp?Find=find&string=exact&Acronym="%20+%20escape(q);%20void%200 Acronym Search
@michaelfox
michaelfox / Plist_parser.php
Created March 26, 2011 19:30
A PHP Class for Parsing OS X Plist files
<?php
/**
* Plist Parser Class
*
* Usage:
* ======
* $plist = Plist::from_file("~/Music/iTunes/iTunes Music Library.xml");
* print_r($plist->as_array());
*/
@michaelfox
michaelfox / DOM Monster.js
Created March 5, 2011 15:54
A largely un-curated "dump" of JavaScript Bookmarklets
javascript:(function(){var%20script=document.createElement('script');script.src='http://mir.aculo.us/dom-monster/dommonster.js?'+Math.floor((+new Date)/(864e5));document.body.appendChild(script);})()
@michaelfox
michaelfox / quix-chrome-search.js
Created October 8, 2010 05:23
JavaScript to use Quix as a search engine in Google Chrome
javascript:Quix();function Quix()%7Bvar e=encodeURIComponent;var t=window.getSelection?window.getSelection():(document.getSelection?document.getSelection():(document.selection?document.selection.createRange().text:''));var c="%s";if(t!='')%7Bif(c)%7Bc+=' '+t}else%7Bc=''+t}}if(c)%7Bvar u='http://quixapp.com/go/?c='+e(c)+'&t='+(document.title?e(document.title):'')+'&s=http://github.com/michaelfox/Quix-Commands/raw/master/quix.txt'+'&v=080'+'&u='+(document.location?e(document.location):'');d=''+document.location;if(d.substr(0,4)!='http')%7Bwindow.location=u+'&mode=direct'}else%7Bheads=document.getElementsByTagName('head');if(c.substring(0,1)==' ')%7Bvar w=window.open(u+'&mode=direct');w.focus()}else if(heads.length==0)%7Bwindow.location=u+'&mode=direct'}else%7Bq=document.getElementById('quix');if(q)%7Bq.parentNode.removeChild(q)}sc=document.createElement('script');sc.src=u;sc.id='quix';sc.type='text/javascript';void(heads[0].appendChild(sc))}}}}
@michaelfox
michaelfox / chrome-shortcut-manager-settings.js
Created October 8, 2010 05:20
My settings for Chrome shortcut manager extension
// ==UserScript==
// @ShortcutManager
// @name Quix
// @namespace http://www.michaelfox.name
// @key Ctrl+q
// @include *
// ==/UserScript==
javascript:Quix();function%20Quix()%7Bvar%20e=encodeURIComponent;var%20t=window.getSelection?window.getSelection():(document.getSelection?document.getSelection():(document.selection?document.selection.createRange().text:''));var%20c=window.prompt('Quix:%20Type%20%60help%60%20for%20a%20list%20of%20commands:');if(t!='')%7Bif(c)%7Bc+='%20'+t;%7Delse%7Bc=''+t;%7D%7Dif(c)%7Bvar%20u='http://www.quixapp.com/go/?c='+e(c)+'&t='+(document.title?e(document.title):'')+'&s=https://dl.dropbox.com/s/jpc1gu600xunbs5/quix.txt'+'&v=081'+'&u='+(document.location?e(document.location):'');d=''+document.location;if(d.substr(0,4)!='http')%7Bwindow.location=u+'&mode=direct';%7Delse%7Bheads=document.getElementsByTagName('head');if(c.substring(0,1)=='%20')%7Bvar%20w=window.open(u+'&mode=direct');w.focus();%7Delse%20if(heads.length==0)%7Bwindow.location=u+'&mode=direct';%7Delse%7Bq=document.getEle