moving zsh stuff to shared

This commit is contained in:
Rob Harbaugh
2026-04-22 11:03:50 -04:00
parent 4896eb8f60
commit 4ad1fe4eb6
3 changed files with 43 additions and 0 deletions

6
shared/.zshenv Normal file
View File

@@ -0,0 +1,6 @@
export BROWSER=firefox
export EDITOR="emacsclient -t -a \"\""
export VISUAL="emacsclient -c -a \"\""
export TERMINAL=ghostty
export MAILER=neomutt
. "$HOME/.cargo/env"

52
shared/.zshrc Normal file
View File

@@ -0,0 +1,52 @@
# Completion
autoload -Uz compinit
compinit
# History
HISTSIZE=1000
SAVEHIST=1000
HISTFILE="${XDG_CACHE_HOME:-$HOME/.cache}/zsh_history"
mkdir -p "$(dirname "$HISTFILE")"
setopt HIST_FCNTL_LOCK HIST_IGNORE_DUPS HIST_IGNORE_SPACE SHARE_HISTORY
unsetopt HIST_IGNORE_ALL_DUPS HIST_EXPIRE_DUPS_FIRST EXTENDED_HISTORY
# Prompt: blue host+path, then green λ (success) or red ? (failure)
PROMPT="%F{blue}%m %~%b"$'\n'"%(?.%F{green}%Bλ%b |.%F{red}?) %f"
# PATH
export PATH="$HOME/.local/bin:$HOME/.cargo/bin:$HOME/go/bin:$HOME/.local/bin:$PATH"
# Aliases
alias e="emacsclient -t -a \"\""
alias mailsync="mbsync -a"
alias c="clear"
alias cat="bat --paging=never --style=plain"
alias cp="cp -riv"
alias ls="eza -al --icons"
alias mkdir="mkdir -vp"
alias mv="mv -iv"
alias rm="rm -rifv"
alias tree="eza --tree --icons"
# Compilation aliases (debug build / optimized build)
alias g++="g++ -ggdb -pedantic-errors -Wall -Weffc++ -Wextra -Wconversion -Wsign-conversion -std=c++23"
alias 'g+++'="g++ -O2 -DNDEBUG -pedantic-errors -Wall -Weffc++ -Wextra -Wconversion -Wsign-conversion -std=c++23"
alias gcc="gcc -ggdb -pedantic-errors -Wall -Wextra -Wconversion -Wsign-conversion -std=c23"
alias gccc="g++ -O2 -DNDEBUG -pedantic-errors -Wall -Wextra -Wconversion -Wsign-conversion -std=c23"
# Named directory shortcuts
hash -d dots="$HOME/.dotfiles"
hash -d src="$HOME/src"
# Load SSH keys
eval "$(keychain --eval --quiet github git)"
# direnv hook
eval "$(direnv hook zsh)"
echo -ne '\e[1 q'
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion