Initial dotfiles
This commit is contained in:
commit
8d32fff5ef
37
.zshenv
Normal file
37
.zshenv
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
# ~/.zshenv - Loaded for ALL zsh sessions (login, interactive, scripts)
|
||||||
|
# Keep this file lean: only PATH and essential env vars.
|
||||||
|
|
||||||
|
# ── Locale ─────────────────────────────────────────────────────────────────────
|
||||||
|
export LANG="en_US.UTF-8"
|
||||||
|
export LC_ALL="en_US.UTF-8"
|
||||||
|
|
||||||
|
# ── Editor ─────────────────────────────────────────────────────────────────────
|
||||||
|
export EDITOR="vim"
|
||||||
|
export VISUAL="$EDITOR"
|
||||||
|
|
||||||
|
# ── Homebrew ───────────────────────────────────────────────────────────────────
|
||||||
|
export HOMEBREW_NO_ANALYTICS=1
|
||||||
|
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
|
||||||
|
|
||||||
|
# ── pyenv ──────────────────────────────────────────────────────────────────────
|
||||||
|
export PYENV_ROOT="$HOME/.pyenv"
|
||||||
|
export PATH="$PYENV_ROOT/bin:$PATH"
|
||||||
|
|
||||||
|
# ── Local bin ──────────────────────────────────────────────────────────────────
|
||||||
|
export PATH="$HOME/.local/bin:$HOME/bin:$PATH"
|
||||||
|
|
||||||
|
# ── LM Studio ──────────────────────────────────────────────────────────────────
|
||||||
|
export PATH="$PATH:$HOME/.lmstudio/bin"
|
||||||
|
|
||||||
|
# ── AWS ────────────────────────────────────────────────────────────────────────
|
||||||
|
export AWS_DEFAULT_REGION="us-east-1"
|
||||||
|
# export AWS_PROFILE="default" # uncomment to set a default profile
|
||||||
|
|
||||||
|
# ── Terraform ──────────────────────────────────────────────────────────────────
|
||||||
|
export TF_CLI_ARGS_plan="-compact-warnings"
|
||||||
|
export TF_CLI_ARGS_apply="-compact-warnings"
|
||||||
|
|
||||||
|
# ── History ────────────────────────────────────────────────────────────────────
|
||||||
|
export HISTFILE="$HOME/.zsh_history"
|
||||||
|
export HISTSIZE=50000
|
||||||
|
export SAVEHIST=50000
|
||||||
58
.zshrc
Normal file
58
.zshrc
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
# Enable Powerlevel10k instant prompt. Must stay at the top of ~/.zshrc.
|
||||||
|
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
|
||||||
|
|
||||||
|
# ── Oh My Zsh ──────────────────────────────────────────────────────────────────
|
||||||
|
export ZSH="$HOME/.oh-my-zsh"
|
||||||
|
ZSH_THEME="powerlevel10k/powerlevel10k"
|
||||||
|
|
||||||
|
# Custom plugins require manual install — see comments below.
|
||||||
|
plugins=(
|
||||||
|
git
|
||||||
|
docker
|
||||||
|
docker-compose
|
||||||
|
kubectl
|
||||||
|
terraform
|
||||||
|
aws
|
||||||
|
pyenv
|
||||||
|
z # jump to frecent dirs (built-in omz plugin)
|
||||||
|
macos
|
||||||
|
zsh-autosuggestions # git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
|
||||||
|
zsh-syntax-highlighting # git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
|
||||||
|
)
|
||||||
|
|
||||||
|
source $ZSH/oh-my-zsh.sh
|
||||||
|
|
||||||
|
# ── Aliases ────────────────────────────────────────────────────────────────────
|
||||||
|
[[ -f ~/.aliases ]] && source ~/.aliases
|
||||||
|
|
||||||
|
# ── pyenv ──────────────────────────────────────────────────────────────────────
|
||||||
|
if command -v pyenv &>/dev/null; then
|
||||||
|
eval "$(pyenv init --path)"
|
||||||
|
eval "$(pyenv init -)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ── History ────────────────────────────────────────────────────────────────────
|
||||||
|
setopt HIST_IGNORE_ALL_DUPS
|
||||||
|
setopt HIST_FIND_NO_DUPS
|
||||||
|
setopt SHARE_HISTORY
|
||||||
|
setopt EXTENDED_HISTORY
|
||||||
|
|
||||||
|
# ── Completion ─────────────────────────────────────────────────────────────────
|
||||||
|
zstyle ':completion:*' menu select
|
||||||
|
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}' # case-insensitive
|
||||||
|
|
||||||
|
# ── kubectl autocomplete ───────────────────────────────────────────────────────
|
||||||
|
if command -v kubectl &>/dev/null; then
|
||||||
|
source <(kubectl completion zsh)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ── AWS CLI autocomplete ───────────────────────────────────────────────────────
|
||||||
|
if command -v aws_completer &>/dev/null; then
|
||||||
|
autoload bashcompinit && bashcompinit
|
||||||
|
complete -C aws_completer aws
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ── Powerlevel10k ──────────────────────────────────────────────────────────────
|
||||||
|
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||||
Loading…
Reference in New Issue
Block a user