Disabling or changing mac keyboard shortcuts in the menu like minimize all

Hi! This is the story of a hidden feature in OSX and a tale of frustration and anger.

I needed to override the keyboard shortcut for "Minimize All" in OSX so I could use the keyboard shortcut to comment in Google docs.

First, a few things about me:

  • Use Google docs a lot.
  • Have a mac
  • Live by keyboard shortcuts.
  • Have a lot of opinions
  • Like to share them.
  • Stubborn as hell.

So when I'm reviewing a colleague's document in Google Docs, and I want to comment, I looked for the keyboard shortcut (⌥⌘M)

Unfortunately (and you would never know this): OSX already has reserved this combo for "Minimize all".


Stop for a moment and consider that Google creates both Chrome and Google Docs...

The way to fix this is probably the worst bit of usability in OSX. It looks like one of those... "we better make this possible, but let's just put a stupid hack in for really insistent keyboard cultists."

To fix:

Go to System Preferences -> Keyboard -> Shortcuts -> App Shortcuts.

Now, enter in EXACTLY the name of the menu item you want to override (Minimize All - but how the hell would you know this), and put in some random keymashing that you will never


Blocking Chinese Spam from gmail

Since May I've been getting a crazy amount of Chinese spam. About 40 messages a day. Although I would one day love to learn Chinese and find out how impressive I will be to my lover after taking their herbal viagra, right now I'm just trying to get my work done.

There are several articles out there claiming that:


can be used as a filter. I think this is old news as it doesn't seem to work anymore for any language.

So I googled the most common chinese characters and put together a filter like this:

Has words:

的 OR 是 OR 否 OR 要 OR 不

This catches them all nicely. Sorry Chinese spammers.


Fake it till you make it, one-liner to generate content for a Drupal site

Devel Generate is great module for putting some dummy content on your site.  You can generate taxonomy terms and vocabs, users, nodes and menus.  Other modules, such as the voting API also plugin to it to generate votes.  

Devel Generate also has great Drush support.  This little one liner will build a site with a few vocabularies, a couple dozen terms, some users, some content and a menu or two.

VOCAB=$(drush genv --kill 3 2>&1 | tail -3 | head -n1) && drush gent --kill $VOCAB 20 && drush --kill genu 50 && drush --kill genc 200 && drush --kill genm 5

I have an alias for it, ($alias make_me_stuff='the command above') so when I'm starting a new project I can just hop in to the docroot and run: make_me_stuff





Tab Wrangler or how I stopped thrashing and learned to close my tabs

Right now, on my computer, Chrome is using 1.2GB of RAM with 3 tabs open. After 20 tabs, it's hovering around 3GB. Back in the bad old days, I would easily have 30 tabs open at any given moment, and sometimes another 15-20 in other windows.

My name is Jacob, and I am a tab addict.

One particularly hot day my computer just turned itself off in a moment of kernel panic. I had hit rock bottom.
err... no more like this:

Then I discovered Tab Wrangler and started making amends with my poor abused 'puter.

I didn't really need those tabs open, I was just hording because I didn't want to deal with deciding if I cared. Turns out I didn't really, and you don't either.

Tab Wrangler is a Chrome extension, originally written by Jack Angers in 2010. Here's how it works:

  • Auto-closes tabs which have been inactive for a certain amount of time
  • You configure how long to wait before closing them, and how many tabs is an ideal amount
  • If a tab is closed, Tab Wrangler saves it in its own history so you can get it back
  • What about pinned tabs? Or tabs you never want to close? Yep, handles that too, you can whitelist tabs or domains as evergreen and they will never be closed



Alias a.ka. Alias a.k.a BashAliases

I found a cool little tool today for building bash aliases.  

Being the lazy SOB that I am, I'm just going to quote the project page since it describes well why it exists:

This is all well and good but ... the time and forethought required to create these definitions [aliases] is often a significant barrier that is difficult to overcome. Even though the time it would take to create an alias would save much time in the long run (and much stress on hands and wrists and arms) the task at hand always seems to take priority. And so one rarely does.


Here's a quite run down of a couple commands:

acd Alias Current Directory


$ cd ~/work/somewhere/deep/in/my/sourcecode/where/I/go/all/the/time
$ acd alias for /home/jacob/work/somewhere/deep/in/my/sourcecode/where/I/go/all/the/time?rsi
$ cd /
$ rsi
$ # Goes to the directory.

The alias is saved in ~/.bash/alias.

Also has alc

Alias Last Command

This one basically let's you choose from the last 9 entries in your history and make one an alias.


Memeo connect (gDrive wannabe rocks!)

Ever since Google announced that you could upload arbitrary files to google docs there have been a bunch of shakeups in this market.  The profits of companies like are obviously threatened by this announcement.

Sadly, The big G didn't announce that it was providing a rich desktop app for drag-and-drop uploads, synch, etc.

A company called Memeo did.  I did some evaluation today, and I really love this app.

Memeo Connect.png


Their pricing is really attractive (just $9 /head per year).  However, I think their only hope of long term survival is a Google buy-out and somehow, I just don't see that happening as they Google will likely do something fuse based and/or build it in HTML 5 and just wait for the masses to catch up / drive the browser market.  Another open source solution I looked at but couldn't get working in 30seconds on my mac is  It's a FUSE based implementation.  Likely not as feature rich, but nicely integrated.


Subscribe to productivity