Last active
March 26, 2025 20:41
-
-
Save dreisicht/f07b56efef734ae3073721289f847647 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
export PATH="$PATH:$HOME/opt/homebrew/bin" | |
export PATH="$PATH:$HOME/.fzf/bin/" | |
export PATH="$PATH:$HOME/.local/bin/" | |
# 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 | |
if [[ -f "/opt/homebrew/bin/brew" ]] then | |
# If you're using macOS, you'll want this enabled | |
eval "$(/opt/homebrew/bin/brew shellenv)" | |
fi | |
# Set the directory we want to store zinit and plugins | |
ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git" | |
# Download Zinit, if it's not there yet | |
if [ ! -d "$ZINIT_HOME" ]; then | |
mkdir -p "$(dirname $ZINIT_HOME)" | |
git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME" | |
fi | |
# Source/Load zinit | |
source "${ZINIT_HOME}/zinit.zsh" | |
# Add in Powerlevel10k | |
zinit ice depth=1; zinit light romkatv/powerlevel10k | |
# Add in zsh plugins | |
zinit light zsh-users/zsh-syntax-highlighting | |
zinit light zsh-users/zsh-completions | |
zinit light zsh-users/zsh-autosuggestions | |
zinit light Aloxaf/fzf-tab | |
# Add in snippets | |
zinit snippet OMZL::git.zsh | |
zinit snippet OMZP::git | |
zinit snippet OMZP::sudo | |
zinit snippet OMZP::archlinux | |
zinit snippet OMZP::aws | |
zinit snippet OMZP::bazel | |
zinit snippet OMZP::colored-man-pages | |
zinit snippet OMZP::kubectl | |
zinit snippet OMZP::kubectx | |
zinit snippet OMZP::command-not-found | |
zinit snippet OMZP::colorize | |
# Load completions | |
autoload -Uz compinit && compinit | |
zinit cdreplay -q | |
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. | |
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh | |
# Keybindings | |
bindkey -e | |
bindkey '^[[A' history-search-backward # Up arrow | |
bindkey '^[[B' history-search-forward # Down arrow | |
bindkey '^[w' kill-region | |
bindkey " " fzf-cd-widget | |
# History | |
HISTSIZE=5000 | |
HISTFILE=~/.zsh_history | |
SAVEHIST=$HISTSIZE | |
# HISTDUP=erase | |
setopt appendhistory | |
setopt sharehistory | |
setopt hist_ignore_space | |
setopt hist_ignore_all_dups | |
setopt hist_save_no_dups | |
setopt hist_ignore_dups | |
setopt hist_find_no_dups | |
setopt autocd | |
# Completion styling | |
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' | |
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" | |
zstyle ':completion:*' menu no | |
zstyle ':fzf-tab:complete:cd:*' fzf-preview 'ls --color $realpath' | |
zstyle ':fzf-tab:complete:__zoxide_z:*' fzf-preview 'ls --color $realpath' | |
# Aliases | |
alias l='eza -s modified -r --git --icons=auto' | |
alias ll='eza -l --icons=auto -a --git --git-repos' | |
alias vim='nvim' | |
alias c='clear' | |
alias t='eza -T --icons' | |
alias -- -="cd -" | |
# Shell integrations | |
eval "$(fzf --zsh)" | |
eval "$(zoxide init --cmd cd zsh)" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment