# 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 # Enable colors and change prompt #autoload -U colors && colors # Load colors #PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%1~%{$fg[red]%}]%(?:%{$fg[white]%}$:%{$fs_bold[red]%}<%?>$)%{$reset_color%}%b " # Git prompt autoload -Uz vcs_info precmd_vcs_info() { vcs_info } precmd_functions+=( precmd_vcs_info ) setopt prompt_subst RPROMPT=\$vcs_info_msg_0_ zstyle ':vcs_info:git:*' formats "%F{240}git:(%b)" zstyle ':vcs_info:*' enable git # History files HISTFILE=~/.zsh_history HISTSIZE=10000 SAVEHIST=10000 # ZSH options setopt autocd extendedglob correct_all # Automatically cd without cd and expand globs unsetopt beep notify # Turn off terminal beeps bindkey -e #Emacs mode # common shell options source ~/.commonshell # Command not found. Works with pkgfile in Arch [ -f /usr/share/doc/pkgfile/command-not-found.zsh ] && source /usr/share/doc/pkgfile/command-not-found.zsh # Make the delete key work normally bindkey '^[[3~' delete-char bindkey '^[3;5~' delete-char # Disable ctrl-s to freeze terminal stty stop undef # Set terminal title precmd() {print -Pn "\e]0;%n@%M:%~\a"} # Completion stuff, generated from the install zstyle ':completion:*' completer _expand _complete _ignored _correct _approximate zstyle ':completion:*' list-colors '' zstyle ':completion:*' list-prompt %SAt %p: Hit TAB for more, or the character to insert%s zstyle ':completion:*' matcher-list 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' zstyle ':completion:*' max-errors 3 numeric zstyle ':completion:*' menu select=1 zstyle ':completion:*' prompt 'Change to "%e"' zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s zstyle ':completion:*' verbose true zstyle ':completion::complete:*' gain-privileges 1 zstyle :compinstall filename '/home/joel/.zshrc' autoload -Uz compinit compinit # Plugins with antigen if [ -f ~/.zsh/antigen/bin/antigen.zsh ]; then ADOTDIR=~/.zsh _ANTIGEN_INSTALL_DIR=~/.zsh/antigen # ANTIGEN_LOG=~/log source ~/.zsh/antigen/bin/antigen.zsh antigen bundle zsh-users/zsh-syntax-highlighting antigen bundle zsh-users/zsh-autosuggestions antigen bundle zsh-users/zsh-completions antigen theme romkatv/powerlevel10k antigen apply fi # To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. [[ ! -f ~/.zsh/p10k.zsh ]] || source ~/.zsh/p10k.zsh