Hammerspoon
Hammerspoon handles window management, the 2x2 display grid,
and application toggles. The configuration lives in home/.hammerspoon/.
| File |
Purpose |
init.lua |
Loads the modules, sets the grid per screen, starts the system watchers, binds the application hotkeys |
config.lua |
Display names, grid sizes, and application layouts |
keys.lua |
Defines the hyper modifier |
sizeup.lua |
Window movement hotkeys (SizeUp emulation) |
display_grid.lua |
Fixes the 2x2 monitor arrangement by screen UUID |
logger.lua, tabletools.lua |
Logging and table helpers |
Press hyper + r to reload the configuration.
Modifiers
| Name |
Key Combination |
| hyper |
ctrl + opt + cmd |
| meta |
cmd + shift |
Window Management
| Action |
Key Combination |
| reload config |
hyper + r |
| show grid |
hyper + g |
| make full screen |
hyper + m |
| center and 60% |
hyper + c |
| move to left half |
hyper + left |
| move to right half |
hyper + right |
| move to top half |
hyper + up |
| move to lower half |
hyper + down |
| move to upper left (25%) |
ctrl + opt + shift + left |
| move to upper right (25%) |
ctrl + opt + shift + up |
| move to lower left (25%) |
ctrl + opt + shift + down |
| move to lower right (25%) |
ctrl + opt + shift + right |
| move to next monitor |
ctrl + opt + right |
| move to previous monitor |
ctrl + opt + left |
Display Grid (2x2 Monitor Setup)
| Action |
Key Combination |
| fix 2x2 display grid |
hyper + f |
| dump display configuration |
hyper + 9 |
Application Toggle
| Action |
Key Combination |
| cmux |
hyper + i |
| Discord |
hyper + d |
| Slack |
hyper + s |
| Telegram Desktop |
hyper + t |
| Sublime Text |
hyper + e |
| Tower |
hyper + w |
| Zed |
hyper + x |
| Messages |
hyper + a |
| Vivaldi |
hyper + v |
| Obsidian |
hyper + o |
Utilities
| Action |
Key Combination |
| window hints (current app) |
hyper + . |
| battery/screen callbacks |
hyper + , |
| display watcher status |
hyper + 0 |