dot_files/dot_zshrc

96 lines
2.9 KiB
Text
Raw Permalink Normal View History

# ~/.zshrc - Zsh configuration for interactive shells
# Customizations are in ~/.oh-my-zsh/custom/*.zsh (auto-loaded)
2025-11-22 22:39:36 +00:00
# ============================================================================
# Oh-My-Zsh Configuration (BEFORE sourcing oh-my-zsh.sh)
# ============================================================================
2025-11-22 22:39:36 +00:00
# Path to oh-my-zsh installation
export ZSH="$HOME/.oh-my-zsh"
2025-11-22 22:39:36 +00:00
# Theme - see https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
ZSH_THEME="bira-time"
2025-11-22 22:39:36 +00:00
# Case-insensitive completion (a-z matches A-Z)
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'
2025-11-22 22:39:36 +00:00
# Hyphen-insensitive completion (_ and - are interchangeable)
HYPHEN_INSENSITIVE="true"
2025-11-22 22:39:36 +00:00
# Disable automatic updates (update manually with: omz update)
zstyle ':omz:update' mode disabled
2025-11-22 22:39:36 +00:00
# Show red dots while waiting for completion
2025-11-22 22:39:36 +00:00
COMPLETION_WAITING_DOTS="true"
# Don't mark untracked files as dirty (faster for large repos)
2025-11-22 22:39:36 +00:00
DISABLE_UNTRACKED_FILES_DIRTY="true"
# History timestamp format
2025-11-22 22:39:36 +00:00
HIST_STAMPS="dd.mm.yyyy"
# History settings
HISTSIZE=10000
SAVEHIST=10000
# Plugins - loaded from $ZSH/plugins/ and $ZSH_CUSTOM/plugins/
# Keep this list minimal for fast startup
plugins=(
git
encode64
gitignore
z
)
# Skip compinit in oh-my-zsh (we handle it above)
export ZSH_DISABLE_COMPFIX=true
skip_global_compinit=1
# ============================================================================
# Load Oh-My-Zsh
# ============================================================================
source $ZSH/oh-my-zsh.sh
# ============================================================================
# Post-OMZ Settings
# ============================================================================
2025-11-22 22:39:36 +00:00
# Enable extended glob patterns
setopt extendedglob
2025-11-22 22:39:36 +00:00
# Disable command_not_found handler (can be slow)
unset command_not_found_handle
2025-11-22 22:39:36 +00:00
# Color man pages
export LESS_TERMCAP_mb=$'\e[1;32m'
export LESS_TERMCAP_md=$'\e[1;32m'
export LESS_TERMCAP_me=$'\e[0m'
export LESS_TERMCAP_se=$'\e[0m'
export LESS_TERMCAP_so=$'\e[01;33m'
export LESS_TERMCAP_ue=$'\e[0m'
export LESS_TERMCAP_us=$'\e[1;4;31m'
# ============================================================================
# Files in ~/.oh-my-zsh/custom/ are auto-loaded:
# - aliases.zsh : All aliases
# - functions.zsh : All functions
# - path.zsh : PATH modifications
# - prompt.zsh : Custom prompt
# - keybindings.zsh : Key bindings
# - secrets.zsh : API tokens (gitignored)
# - tools/*.zsh : Tool-specific configs (pyenv, nvm, kubectl)
# ============================================================================
2026-01-24 00:31:33 +00:00
czpush() {
local msg="${1:-Update dotfiles}"
cd "$(chezmoi source-path)" && git add -A && git commit -m "$msg" && git push
cd - > /dev/null
}
# Claude Code auto memory
export CLAUDE_CODE_DISABLE_AUTO_MEMORY=0
# PARA workspace configuration
export PARA_MODE="local"
export PARA_ROOT="/Users/viktorbarzin/Nextcloud/Viktor Nextcloud/para"