Skip to content
Suite of hammerspoon extensions
Lua Python
Branch: master
Clone or download


A suite of hammerspoon extensions


Install Hammerspoon

Install Karabiner-Elements

Go to System Preferences -> Security & Privacy -> Privacy and add both Hammerspoon and Karabiner-Elements in the Accessibility tab

Clone this repository into ~/.hammerspoon/

Move the karabiner.json file into ~/.config/karabiner/


By default, the karabiner.json file turns your caps-lock key into a "hyper" key, which are the keys ctrl + option + command. Pressing caps by itself will also post escape.



menubar extension to interact with Google Calendar events

alt text


  1. Make sure you have python3 installed

  2. Install python packages

pip3 install --upgrade google-api-python-client oauth2client python-dateutil httplib2
  1. Set PYTHON_BINARY in init.lua to the output of which python3

  2. Go to Google Calendar Python Quickstart and Enable the Google Calendar API

  3. Download the credentials.json file and save it in the gcal folder

  4. Run python3 gcal/ -e which should prompt you to log into your Google account

Other goodies...

Bookmarks: Set up your bookmarks in bookmarks/bookmarks.json


Hyperkey + key to open or focus applications


Keybindings used to interact with an external monitor, or between spaces within a monitor. Very useful for moving applications back and forth.

hyper + shift + right cycles the current application to monitor on the right

hyper + shift + keft cycles the current application to monitor on the left

hyper + shift + h moves the current application to a space on the left

hyper + shift + l moves the current application to a space on the right


Window positioning module borrowed from Miro Mannino.

hyper + right resizes window to right side of screen.

hyper + left resizes window to left side of screen.

hyper + up resizes window to upper side of screen.

hyper + down resizes window to bottom side of screen.

Repeated presses of above keys will cycle window to take up half, quarter, and 2/3 of screen.

hyper + enter resizes window to entire screen

Repeated presses of hyper + enter will cycle through resizing similarly.


Hammerspoon spaces is currently experimental. Install by:

Clone this repo in your ~/.hammerspoon spaces

Run make install


Hyper + shift + h moves current window left Hyper + shift + l moves current window right


Pomodoro timer activated through the menubar. Uses a 25-minute work duration.

You can’t perform that action at this time.