My Mac Setup for Programming
Mac Setup for Programming
Everytime you setup a new computer for programming it can be a hassle to remember all the little settings and tweaks you've done to get a system running exactly how you like it.
This guide is a quick cheatsheet of the major modifications/tweaks/settings that I like to use for my own programming needs.
It's main use is to remind myself of tasks I should do on a new computer to minimize setup time, but it may be helpful to you to learn about the settings and tweaks I use for your own use.
MacOS Keyboard Repeat Speed Settings
- Use Karabiner-Elements for key remapping on MacOS
- Disable the freaking annoying character accent menu in OSX:
- terminal -->
defaults write -g ApplePressAndHoldEnabled -bool false
---> reboot to take effect
- terminal -->
- Speed up key repeat speed:
defaults write NSGlobalDomain KeyRepeat -int 1
- Speed up key initial repeat speed:
defaults write NSGlobalDomain InitialKeyRepeat -int 10
- Disable slow and sticky keys: in MacOS --> System Settings --> Accessibility --> Keyboard --> Disable Sticky & Slow Keys
Terminal Emulator Stuff
- Install homebrew and homebrew cask, then use cask from now on for gui apps where possible
- Install zshell and use it instead of bash.
brew install zsh zsh-completions
- Install oh-my-zsh, use the agnoster theme
- Use powerline patched fonts: https://github.com/powerline/fonts
- Set zsh as default shell on OSX:
which zsh
thenchsh -s /bin/zsh
, may need to reboot - Pro tip: changes made to the zsh runtime config file (
~/.zshrc
) can be applied by doing:source ~/.zshrc
without having to close/reopen the terminal (most of the time)
Hyper Terminal
- Install hyper js terminal emulator:
brew cask install hyper
And that's it! Easy as 1-2-3. This guide is likely to be updated as I change/modify my own workflow and configurations. Hopefully if you read this you are able to pick out 1 or 2 modifications that you could use to improve your own workflow.
If you have any tweaks/settings/configs you like to use that you think I could benefit from, please comment below!