export TERM=xterm-256color export XDG_DOWNLOAD_DIR="$HOME/downloads" export XDG_PROJECTS_DIR="$HOME/programming" export XDG_DESKTOP_DIR="$HOME" export XDG_DOCUMENTS_DIR="$HOME/documents" export XDG_MUSIC_DIR="$HOME/media" export XDG_PICTURES_DIR="$HOME/media" export XDG_PUBLICSHARE_DIR="$HOME/media" export XDG_TEMPLATES_DIR="$HOME/media" export XDG_VIDEOS_DIR="$HOME/media" export EDITOR=nvim export SUDO_EDITOR=nvim export GOPATH="$HOME/.local/go" export PATH="$HOME/.local/bin:$HOME/.local/go/bin:$HOME/opt/bin:$HOME/.cargo/bin:$PATH" export LD_LIBRARY_PATH="$HOME/opt/lib:${LD_LIBRARY_PATH:-}" ZAP_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/zap" [ -f "$ZAP_DIR/zap.zsh" ] && source "$ZAP_DIR/zap.zsh" [ -f "$HOME/.zprofile" ] && source "$HOME/.zprofile" if [ -x /home/linuxbrew/.linuxbrew/bin/brew ]; then eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" fi HISTFILE="${ZDOTDIR:-$HOME}/.zsh_history" HISTSIZE=50000 SAVEHIST=50000 setopt APPEND_HISTORY setopt INC_APPEND_HISTORY setopt SHARE_HISTORY setopt EXTENDED_HISTORY setopt BANG_HIST setopt HIST_EXPIRE_DUPS_FIRST setopt HIST_IGNORE_DUPS setopt HIST_IGNORE_ALL_DUPS setopt HIST_FIND_NO_DUPS setopt HIST_IGNORE_SPACE setopt HIST_SAVE_NO_DUPS setopt HIST_REDUCE_BLANKS setopt HIST_VERIFY setopt AUTO_CD setopt AUTO_PARAM_SLASH setopt GLOB_DOTS setopt EXTENDED_GLOB setopt INTERACTIVE_COMMENTS setopt MENU_COMPLETE setopt NOMATCH unsetopt BEEP autoload -Uz compinit colors bashcompinit zmodload zsh/complist zstyle ':completion:*' menu yes select zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}' 'r:|=*' 'l:|=*' _comp_options+=(globdots) zle_highlight=('paste:none') if [[ -f "${ZDOTDIR:-$HOME}/.zcompdump" ]]; then compinit -C else compinit fi bashcompinit autoload -Uz colors && colors PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b " bindkey -e bindkey -s '^x' '^usource $ZSHRC\n' bindkey -M menuselect '?' history-incremental-search-forward bindkey -M menuselect '/' history-incremental-search-backward bindkey '^H' backward-kill-word autoload -U up-line-or-beginning-search autoload -U down-line-or-beginning-search zle -N up-line-or-beginning-search zle -N down-line-or-beginning-search alias cat='bat' alias gg='lazygit' alias v='nvim' alias cp='cp -v' take() { mkdir -p -- "$1" && cd -- "$1" } copy() { xclip -sel c 2>/dev/null } if (( $+commands[eza] )); then alias ls='eza --group-directories-first --icons=auto' if eza --version | grep -q '+git'; then alias ll='ls -lh --git' else alias ll='ls -lh' fi alias la='ll -a' alias tree='ll --tree --level=2' else alias ls='ls --group-directories-first' alias ll='ls -lh' alias la='ll -a' fi if (( $+commands[zoxide] )); then eval "$(zoxide init zsh)" fi if ! command -v zap >/dev/null 2>&1; then printf 'Installing zap (release-v1)...\n' zsh <(curl -s https://raw.githubusercontent.com/zap-zsh/zap/master/install.zsh) --keep --branch release-v1 if [ -f "${ZDOTDIR:-$HOME}/.zshrc" ]; then source "${ZDOTDIR:-$HOME}/.zshrc" fi fi autoload -Uz plug plug "zsh-users/zsh-autosuggestions" plug "zsh-users/zsh-syntax-highlighting" plug "Aloxaf/fzf-tab" : "${XDG_DATA_HOME:=$HOME/.local/share}" : "${XDG_CONFIG_HOME:=$HOME/.config}"