Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Swap cmd and alt keys in Terminal
branch: master

Makefile: add rules to list security exceptions

In general, you don't want to run any of these. They're here for some
debugging pleasure.
latest commit 86fc498c07
Andrew McDermott authored

Swap cmd and alt (or command and option) keys in Mac OS X.

This program allows you to swap the command and alt (or option) keys in any application, but in particular This can be extremely handy when ssh'ing into other UN*X boxes and running "emacs -nw". It also allows you to have the traditional readline navigation work properly when using Bash (i.e., alt-backspace, alt-f, alt-b, etc) in the Terminal.

The decision to swap the keys is based on a customizable script (Lua). This script allows you to exclude certain key combinations per application, or globally. For example, "cmd-tab" is an exclusion in my Lua script regardless of which application is running, as I still want this key combination to cycle the active set of applications. I have "cmd-c" and "cmd-v" as exclusions when the front most application is the Terminal -- these combinations are so universal that I find it easier to leave them as they are -- but all other key combinations involving the cmd key get swapped with alt.

The motivation for this program was the many years of hitting alt- in Linux only to find that it does not generate the same behaviour in Having the ability to run "emacs -nw" from within is now useable!


If you upgrade to Mavericks you'll get the following error "failed to create event tap!" when cmd-key-happy starts. The granularity of using the accessibility APIs which is what cmd-key-happy depends on is both different and now much finer. To fix this please reread the INSTALL file.

Something went wrong with that request. Please try again.