# 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 You Come From Bash You Might Have To Change Your $PATH. #export PATH=:/usr/local/bin:/usr/local/sbin:$HOME/bin:$PATH export PATH="$HOME/bin:/usr/local/bin:$PATH"
# Load The Prompt System And Completion System And Initilize Them. autoload -Uz compinit promptinit
# Load And Initialize The Completion System Ignoring Insecure Directories With A # Cache Time Of 20 Hours, So It Should Almost Always Regenerate The First Time A # Shell Is Opened Each Day. # See: https://gist.github.com/ctechols/ca1035271ad134841284 _comp_files=(${ZDOTDIR:-$HOME}/.zcompdump(Nm-20)) if (( $#_comp_files )); then compinit -i -C else compinit -i fi unset _comp_files promptinit setopt prompt_subst
# General. setopt brace_ccl # Allow Brace Character Class List Expansion. setopt combining_chars # Combine Zero-Length Punctuation Characters ( Accents ) With The Base Character. setopt rc_quotes # Allow 'Henry''s Garage' instead of 'Henry'\''s Garage'. unsetopt mail_warning # Don't Print A Warning Message If A Mail File Has Been Accessed.
# Jobs. setopt long_list_jobs # List Jobs In The Long Format By Default. setopt auto_resume # Attempt To Resume Existing Job Before Creating A New Process. setopt notify # Report Status Of Background Jobs Immediately. unsetopt bg_nice # Don't Run All Background Jobs At A Lower Priority. unsetopt hup # Don't Kill Jobs On Shell Exit. unsetopt check_jobs # Don't Report On Jobs When Shell Exit.
#setopt correct # Turn On Corrections
# Completion Options. setopt complete_in_word # Complete From Both Ends Of A Word. setopt always_to_end # Move Cursor To The End Of A Completed Word. setopt path_dirs # Perform Path Search Even On Command Names With Slashes. setopt auto_menu # Show Completion Menu On A Successive Tab Press. setopt auto_list # Automatically List Choices On Ambiguous Completion. setopt auto_param_slash # If Completed Parameter Is A Directory, Add A Trailing Slash. setopt no_complete_aliases
setopt menu_complete # Do Not Autoselect The First Completion Entry. unsetopt flow_control # Disable Start/Stop Characters In Shell Editor.
setopt bang_hist # Treat The '!' Character Specially During Expansion. setopt inc_append_history # Write To The History File Immediately, Not When The Shell Exits. setopt share_history # Share History Between All Sessions. setopt hist_expire_dups_first # Expire A Duplicate Event First When Trimming History. setopt hist_ignore_dups # Do Not Record An Event That Was Just Recorded Again. setopt hist_ignore_all_dups # Delete An Old Recorded Event If A New Event Is A Duplicate. setopt hist_find_no_dups # Do Not Display A Previously Found Event. setopt hist_ignore_space # Do Not Record An Event Starting With A Space. setopt hist_save_no_dups # Do Not Write A Duplicate Event To The History File. setopt hist_verify # Do Not Execute Immediately Upon History Expansion. setopt extended_history # Show Timestamp In History.
# Load a few important annexes, without Turbo (this is currently required for annexes) zinit light-mode compile"handler" for \ zdharma-continuum/z-a-patch-dl \ zdharma-continuum/z-a-as-monitor \ zdharma-continuum/z-a-bin-gem-node \ zdharma-continuum/z-a-submods \ zdharma-continuum/declare-zsh
# If you come from bash you might have to change your $PATH. #export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation. export ZSH="/root/.oh-my-zsh"
# Set name of the theme to load --- ifset to "random", it will # load a random theme each time oh-my-zsh is loaded, inwhichcase, # to know which specific one was loaded, run: echo$RANDOM_THEME # See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes ZSH_THEME="agnoster"
# Set list of themes to pick from when loading at random # Setting this variable when ZSH_THEME=random will cause zsh to load # a theme from this variable instead of looking in ~/.oh-my-zsh/themes/ # If set to an empty array, this variable will have no effect. # ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell""agnoster" )
# Uncomment the following line to use case-sensitive completion. # CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion. # Case-sensitive completion must be off. _ and - will be interchangeable. # HYPHEN_INSENSITIVE="true"
# Uncomment the following line to disable bi-weekly auto-update checks. # DISABLE_AUTO_UPDATE="true"
# Uncomment the following line to automatically update without prompting. # DISABLE_UPDATE_PROMPT="true"
# Uncomment the following line to change how often to auto-update (in days). #export UPDATE_ZSH_DAYS=13
# Uncomment the following line if pasting URLs and other text is messed up. # DISABLE_MAGIC_FUNCTIONS=true
# Uncomment the following line to disable colors in ls. # DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title. # DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enablecommand auto-correction. # ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion. # COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files # under VCS as dirty. This makes repository status check for large repositories # much, much faster. # DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you want to change the command execution time # stamp shown in the historycommand output. # You can set one of the optional three formats: #"mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" # or set a custom format using the strftime function format specifications, # see 'man strftime'for details. # HIST_STAMPS="mm/dd/yyyy"
# Would you like to use another custom folder than $ZSH/custom? # ZSH_CUSTOM=/path/to/new-custom-folder
# Which plugins would you like to load? # Standard plugins can be found in ~/.oh-my-zsh/plugins/* # Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ # Example format: plugins=(rails git textmate ruby lighthouse) # Add wisely, as too many plugins slow down shell startup. plugins=(git autojump zsh-syntax-highlighting zsh-autosuggestions)
source $ZSH/oh-my-zsh.sh
# User configuration
#export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment #export LANG=en_US.UTF-8
# Preferred editor forlocal and remote sessions #if [[ -n $SSH_CONNECTION ]]; then #export EDITOR='vim' #else #export EDITOR='mvim' #fi
# Set personal aliases, overriding those provided by oh-my-zsh libs, # plugins, and themes. Aliases can be placed here, though oh-my-zsh # users are encouraged to define aliases within the ZSH_CUSTOM folder. # For a full list of active aliases, run `alias`. # # Example aliases #alias zshconfig="mate ~/.zshrc" #alias ohmyzsh="mate ~/.oh-my-zsh"