Files
dotfiles/home/dot_zshrc.tmpl

52 lines
1.8 KiB
Cheetah

# 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"
# Set Oh My Zsh theme conditionally
if [[ "$TERM_PROGRAM" == "vscode" ]]; then
ZSH_THEME="" # Disable Powerlevel10k for Cursor
else
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
ZSH_THEME="powerlevel10k/powerlevel10k"
plugins=(git asdf yarn golang sudo zoxide bun node npm brew zsh-autosuggestions F-Sy-H thefuck)
fi
source $ZSH/oh-my-zsh.sh
# Use a minimal prompt in Cursor to avoid command detection issues
if [[ "$TERM_PROGRAM" == "vscode" ]]; then
PROMPT='%n@%m:%~%# '
RPROMPT=''
else
[[ -f ~/.p10k.zsh ]] && source ~/.p10k.zsh # configure with `p10k configure`
fi
# {{ 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" }}