Plugins
Two plugins are auto-cloned on first shell start:
Update plugins with the
zsh_plugins_update function.
If zsh-autocomplete is missing, the config falls back to native compinit.
History
Completion
- Sources completions from Homebrew’s
site-functionsdirectory. - Async autocomplete with 50ms delay and 1 character minimum input.
- Menu select mode with case-insensitive matching.
- Cache stored at
~/.zsh/cache.
Keybindings
Syntax Highlighting Colors
Prompt
- Cursor: solid block
- Prompt character:
%for regular user,#for root
Aliases
0x0
The0x0 shell function uses the released server binary installed by Homebrew. It keeps editor
shortcuts for the Neovim apps:
Lazy-Loaded Runtimes
Language runtimes are lazy-loaded on first use to keep shell startup fast.NVM (Node.js)
nvm, node, npm, and npx are all shell functions that trigger a one-time load of NVM
from Homebrew’s install path. After the first call, the real binaries take over.
GoEnv (Go)
goenv, go, and gofmt work the same way — the first invocation loads GoEnv from
~/.goenv and adds shims to PATH.
PostgreSQL
Thelibpq client binaries are added to PATH directly (not lazy-loaded):
Shell Options
Local Overrides
Machine-specific settings can go in~/.zshrc.local — it’s sourced at the end of .zshrc
if it exists. This file is not tracked in git.