/dotfiles

My personal macOS environment configurations.

Primary LanguageShellDo What The F*ck You Want To Public LicenseWTFPL

Dotfiles

zsh + oh-my-zsh

Installation

System

  1. Homebrew

  2. Git brew install git

  3. nvm, then run: nvm install --lts

  4. Clone repo in home directory, then run: install.zsh

  5. SDKMAN!, after the installation steps, run: sdk install java 18.0.1.1-open && sdk install gradle

Zsh

Important: Install plugins and themes to dotfiles/custom/!

  1. Oh My Zsh

  2. zsh-autosuggestions

  3. zsh-autocomplete

  4. zsh-nvm

  5. Powerlevel10k, with Meslo Nerd Font patched for Powerlevel10k (p10k configure)

Next, reload your profile by typeing . at the command prompt.

Run:

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

Tips

  1. Might as well upgrade to the latest bash version: brew install bash && sudo bash -c "echo /usr/local/bin/bash >> /private/etc/shells"

  2. In order to avoid putting personal info into version control, and to keep out cruft added by apps (I’m looking at you Sourcetree), the installation script creates a .gitignore and imports the one found in this repository.

  3. Always show hidden files: defaults write com.apple.finder AppleShowAllFiles -boolean true; killall Finder

  4. Disable Screen Capture’s …

    • Drop shadow: defaults write com.apple.screencapture disable-shadow -bool true
    • Thumbnail preview: defaults write com.apple.screencapture show-thumbnail -bool false
  5. zsh-nvm is managed by zsh (don’t use Brew for nvm!). Once installed: nvm upgrade, nvm revert, nvm install --lts (latest “Long-Term Support” release), nvm uninstall <version>

  6. iTerm2 tweaks:

    • By default, word jumps (option + → or ←) and word deletions (option + backspace) do not work. To enable these, go to iTermPreferences…ProfilesKeysPresets…Natural Text Editing
    • iTerm2Preferences…KeysKey Bindings and create a new mapping + K to “Send Hex Codes”: 0x0c (reference)
    • Color preset: ayu
    • iTerm2Preferences…ProfilesText, enable “Box” and “Blinking” for Cursor.
    • Enable “Unlimited scrollback” in your profile → TerminalScrollback Buffer

More info coming soon!