My personal configuration for shell, editor, and terminal.
- Zsh:
.zshrc- Oh My Zsh + Powerlevel10k
- macOS light/dark theme detection (switches
p10kconfig + fzf colors) - Common tool init:
rbenv,zoxide,fzf, Ghostty shell integration - Aliases wired to modern CLI tools (
eza,fd,rg)
- Vim/Neovim:
.vimrcvim-plugplugin setup (theme, statusline, fzf, NERDTree, coc.nvim)- macOS light/dark theme sync via
defaults read -g AppleInterfaceStyle - A few keybinds + auto-create parent dirs on save
- Ghostty:
ghostty/ghostty/configchooses theme by OS appearance:light:SolarizedLightdark:SolarizedDark
- Theme definitions in
ghostty/themes/
- Git ignore:
.gitignore(local nvim state such as.netrwhist, undo dir,.DS_Store)
Use the installer to symlink the files into your home directory so edits in this repo apply immediately (and it will back up anything it overwrites).
git clone <this-repo> ~/dotfiles
cd ~/dotfiles
./install.sh --dry-run
./install.shTo also install common dependencies (macOS + Homebrew):
./install.sh --brewGhostty typically reads:
~/Library/Application Support/com.mitchellh.ghostty/config
install.sh links ghostty/config and ghostty/themes into that directory automatically.
Install what you actually use from these configs:
- Zsh
- Oh My Zsh
- Powerlevel10k (and
~/.p10k-dark.zsh,~/.p10k-light.zshif you want autoswitching) - Plugins:
zsh-autosuggestions,zsh-syntax-highlighting - Tools referenced by aliases/init:
eza,fd,ripgrep,fzf,zoxide
- Vim/Neovim
- Neovim recommended (
vimis aliased tonvimin.zshrc) vim-plugnodeforcoc.nvim
- Neovim recommended (
- Ghostty
- macOS theme switching: both
.zshrcand.vimrcreadAppleInterfaceStyleand adjust behavior based on light vs dark mode. - Paths are opinionated:
.zshrcsets SDK paths (Android SDK, Zulu JDK 17, Homebrew Ruby/OpenJDK) and adds them toPATH.