A keyboard centric workflow on MacOS
March 28, 2023
Lohitaksha Malhotra's ImageLohitaksha Malhotra

Preface

I have used linux for most of the time since I have started focusing on computer science and now that my old laptop has given up. I chose a macbook. The hardware itself is great but I am not the biggest fan of MacOS's window management. I want to be able to do most of what I from my keyboard kind of like I did back on Arch ( btw )

The Terminal

The story here is pretty similar to that on the linux side of things.

I like to keep it fairly simple, so I have the default zsh shell with zsh-autosuggestions and zsh-syntax-highlighting for a better terminal experience, and I use p10k for my prompt just cause thats what I have been using for a long time.

Now, to make the terminal experience better, I prefer to only have one window of my terminal (iterm for now) emulator running at a time and switch between multiple tmux sessions for any usecase I would need multiple terminal windows for.

I have my own version of ThePrimeagens's Tmux Sessioniser for managing tmux sessions and some fairly simple customisations using tpm for tmux plugins.

I use NeoVim ( btw ) with some customisations on top of LunarVim.

The terminal

Window Management

The window manager is one of the biggest parts of this entire setup. There are only two real choices for macs. Those being Yabai and Amethyst. This part on yabai's github is one of the best comparsions for these two. For me yabai made more sense as I use multiple displays and don't really care about SIP.

The setup

What advantages does this get me?

SPEED and overall happiness. I feel faster and can just zoom through my work.. jumping between spaces and tmux sessions. Editing text at blazing speed in nvim(btw) and feeling like a genius.

Other notes

I also use Linear Mouse to stop macos's wierd mouse accel and other behaviour especially when gaming, and Karabiner Elements to remap caps to esc and other such little tweaks.

Wanna Reach Out?
Connect
© 2022 Lohitaksha Malhotra