Home
My Config
I have customised my Mac to make it enjoyable for keyboard-centric use, with one small monitor (or just the laptop), and I like to use free and open source software. Here is an overview of my configuration to date.
Key bindings
When I moved from Windows to Mac, I did not like the awkward positioning of the CTRL and CMD keys, and had thumb pain within weeks. I have since heavily rebound my keyboard and I have honed in on an efficient and comfortable layout for development, window management, and general use.
Main rebinds:
-
CAPS LOCK → CMD if held, ESCAPE if alone
- This is my favourite rebind. CMD is used all across macOS: opening and closing tabs, switching tabs by number, copying and pasting, and so on. This puts CMD right under my pinky, making the key fast and unmissable.
- This keybinding is also extremely useful for quickly correcting mistakes while touch typing, because CMD+BACKSPACE to delete the previous word is near instantaneous, and deleting the entire previous mistyped word and retyping it is faster than trying to backspace the correct number of times.
- I can hold CAPS LOCK and comfortably hit any other key with either hand.
- I trigger CAPS LOCK with LEFT SHIFT + RIGHT SHIFT. This is a little awkward but I almost always hold shift instead.
- This rebind also makes ESCAPE very accessible for leaving insert mode in vim.
-
Swap CMD + ARROW KEYS with OPTION + ARROW KEYS
- This makes hopping between words easy with CAPS LOCK + ARROWS.
-
RETURN → CTRL if held, RETURN if alone
- CTRL is used a lot in terminal programs on Mac.
- This rebind is only comfortable when I am performing CTRL with my right hand and the rest of the combo with my left hand (e.g. CTRL+C/D); otherwise I use the normal CTRL key.
-
CMD → HYPER 1 if held, CMD+SHIFT → HYPER 2
- Both CMD keys are remapped to “HYPER 1”, which I use to switch between windows (e.g. HYPER 1 + 1 switches to workspace 1).
- I move an application to a specific workspace with CMD+SHIFT (e.g. HYPER 2 + 7 moves the focussed app to workspace 7).
-
CMD → ALT+TAB if pressed alone
- For quickly switching between two workspaces.
Window management
Aerospace is a powerful, free and open source window manager for macOS. It is aimed at advanced, keyboard-centric users and is fully configurable with a dot-file (here’s mine). A few notes about my Aerospace config:
- I use dedicated, named workspaces for my most frequently used singleton applications. For example, my browser, ChatGPT, and Zotero are on dedicated workspaces.
- My projects live on numbered workspaces which I reconfigure frequently depending on what I am working on. I also use numbered workspaces for anything that does not have a dedicated workspace.
Great software
(All FOSS)
- Helium: an excellent Chromium fork.
- Ghostty: a Mac-first hardware-accelerated terminal emulator with optimal defaults.
- Zotero: for storing and annotating research documents.
- Neovim: build your own custom text editor.
- Zed: a Mac-first hardware-accelerated code editor with excellent defaults.
- Karabiner-Elements: for rebinding keys.
And Obsidian (not FOSS).
Great browser extensions
- uBlock Origin: the

- Google Scholar PDF Reader: the best PDF reader (but I store and annotate in Zotero).
- Quick Tab Switch: like Alt+Tab for Chrome tabs.
- Zotero Connector: save papers.
- DeArrow: remove clickbait from YouTube.
- Remove YouTube Shorts: DWISOTT.
- SponsorBlock: skip in-video YouTube ads.
- Unhook: minimalise the YouTube UI (disable recommended videos, comments).
Written 05/12/25