# If WSL, add SSH key on startup (once per WSL start) {{- if .wsl }} eval `keychain --quiet --eval --agents ssh ~/.ssh/id_rsa` {{ end }} # Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. # Initialization code that may require console input (password prompts, [y/n] confirmations, etc.) must go above this block; everything else may go below. if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" fi export ZSH_COMPDUMP=$ZSH/cache/.zcompdump-$HOST export ZSH="$HOME/.oh-my-zsh" # zstyle ':omz:update' mode auto # update automatically without asking # zstyle ':omz:update' frequency 7 DISABLE_AUTO_UPDATE="true" # required for chezmoi external management # ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) # CASE_SENSITIVE="true" # HYPHEN_INSENSITIVE="true" # DISABLE_MAGIC_FUNCTIONS="true" # DISABLE_LS_COLORS="true" # DISABLE_AUTO_TITLE="true" # ENABLE_CORRECTION="true" # COMPLETION_WAITING_DOTS="true" # DISABLE_UNTRACKED_FILES_DIRTY="true" # HIST_STAMPS="mm/dd/yyyy" # See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes ZSH_THEME="powerlevel10k/powerlevel10k" # TODO: Switch from 'asdf' to 'mise' plugins=( git gh fzf docker-compose docker deno chezmoi asdf yarn golang sudo zoxide bun npm brew zsh-autosuggestions F-Sy-H thefuck {{- if .wsl -}} {{ " kitty" }} {{- end}} ) source $ZSH/oh-my-zsh.sh [[ -f ~/.p10k.zsh ]] && source ~/.p10k.zsh # configure with `p10k configure` # {{ if lookPath "bw" -}} eval "$(bw completion --shell zsh); compdef _bw bw;" {{ end }} {{/* Common shared aliases, scripts, & shell setup details. */ -}} {{ template "scripts/commonrc.sh.tmpl" dict "data" . "shell" "zsh" }} {{/* Chezmoi's shell completion */ -}} {{ completion "zsh" }} [[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path zsh)"