├── .zshrc └── README.md /.zshrc: -------------------------------------------------------------------------------- 1 | # Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. 2 | # Initialization code that may require console input (password prompts, [y/n] 3 | # confirmations, etc.) must go above this block; everything else may go below. 4 | if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then 5 | source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" 6 | fi 7 | 8 | if [[ -f "/opt/homebrew/bin/brew" ]] then 9 | # If you're using macOS, you'll want this enabled 10 | eval "$(/opt/homebrew/bin/brew shellenv)" 11 | fi 12 | 13 | # Set the directory we want to store zinit and plugins 14 | ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git" 15 | 16 | # Download Zinit, if it's not there yet 17 | if [ ! -d "$ZINIT_HOME" ]; then 18 | mkdir -p "$(dirname $ZINIT_HOME)" 19 | git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME" 20 | fi 21 | 22 | # Source/Load zinit 23 | source "${ZINIT_HOME}/zinit.zsh" 24 | 25 | # Add in Powerlevel10k 26 | zinit ice depth=1; zinit light romkatv/powerlevel10k 27 | 28 | # Add in zsh plugins 29 | zinit light zsh-users/zsh-syntax-highlighting 30 | zinit light zsh-users/zsh-completions 31 | zinit light zsh-users/zsh-autosuggestions 32 | zinit light Aloxaf/fzf-tab 33 | 34 | # Add in snippets 35 | zinit snippet OMZL::git.zsh 36 | zinit snippet OMZP::git 37 | zinit snippet OMZP::sudo 38 | zinit snippet OMZP::archlinux 39 | zinit snippet OMZP::aws 40 | zinit snippet OMZP::kubectl 41 | zinit snippet OMZP::kubectx 42 | zinit snippet OMZP::command-not-found 43 | 44 | # Load completions 45 | autoload -Uz compinit && compinit 46 | 47 | zinit cdreplay -q 48 | 49 | # To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. 50 | [[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh 51 | 52 | # Keybindings 53 | bindkey -e 54 | bindkey '^p' history-search-backward 55 | bindkey '^n' history-search-forward 56 | bindkey '^[w' kill-region 57 | 58 | # History 59 | HISTSIZE=5000 60 | HISTFILE=~/.zsh_history 61 | SAVEHIST=$HISTSIZE 62 | HISTDUP=erase 63 | setopt appendhistory 64 | setopt sharehistory 65 | setopt hist_ignore_space 66 | setopt hist_ignore_all_dups 67 | setopt hist_save_no_dups 68 | setopt hist_ignore_dups 69 | setopt hist_find_no_dups 70 | 71 | # Completion styling 72 | zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' 73 | zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" 74 | zstyle ':completion:*' menu no 75 | zstyle ':fzf-tab:complete:cd:*' fzf-preview 'ls --color $realpath' 76 | zstyle ':fzf-tab:complete:__zoxide_z:*' fzf-preview 'ls --color $realpath' 77 | 78 | # Aliases 79 | alias ls='ls --color' 80 | alias vim='nvim' 81 | alias c='clear' 82 | 83 | # Shell integrations 84 | eval "$(fzf --zsh)" 85 | eval "$(zoxide init --cmd cd zsh)" 86 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Zensh 2 | 3 | This is the zsh configuration for the Dreams of Autonomy YouTube Channel. 4 | 5 | This configuration prioritizes zen and calm in order to reduce distractions and 6 | maintain momentum when working inside of the terminal. 7 | 8 | --------------------------------------------------------------------------------