dotfiles/data/zsh/extra-zshrc

105 lines
2.7 KiB
Plaintext

# Put this in ~/.zshrc
# source ~/.config/zsh/extra-zshrc
# https://zsh.sourceforge.io/Doc/Release/Parameters.html#Parameters-Used-By-The-Shell
export HISTORY_IGNORE="(ls|ll|la|cd|pwd|exit)"
export HISTSIZE=100000000
export SAVEHIST=$HISTSIZE
# https://zsh.sourceforge.io/Doc/Release/Options.html
setopt HIST_EXPIRE_DUPS_FIRST
setopt HIST_FIND_NO_DUPS
setopt HIST_IGNORE_ALL_DUPS
setopt HIST_IGNORE_DUPS
setopt HIST_IGNORE_SPACE
setopt HIST_NO_FUNCTIONS
setopt HIST_NO_STORE
setopt HIST_REDUCE_BLANKS
setopt HIST_SAVE_NO_DUPS
# https://stackoverflow.com/q/12382499
bindkey "^[[1;3C" forward-word
bindkey "^[[1;3D" backward-word
# omz
zstyle ':omz:update' mode disabled
# https://github.com/ohmyzsh/ohmyzsh/issues/5700
DISABLE_AUTO_TITLE="true"
# https://github.com/ohmyzsh/ohmyzsh/issues/10291
DISABLE_UNTRACKED_FILES_DIRTY="true"
# https://github.com/ohmyzsh/ohmyzsh/issues/5569
DISABLE_MAGIC_FUNCTIONS="true"
# nvim
if command -v nvim &>/dev/null; then
export EDITOR=nvim
export VISUAL=nvim
export GIT_EDITOR=nvim
alias vi="nvim"
alias vim="nvim"
fi
# go
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
# Depend on your company
# Please copy this manually to ~/.zshrc
export GOPRIVATE=github.com/make-go-great,github.com/haunt98
# fzf
# https://github.com/junegunn/fzf#environment-variables
if command -v fzf &>/dev/null; then
if command -v fd &>/dev/null; then
export FZF_DEFAULT_COMMAND="fd --type file"
export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"
export FZF_ALT_C_COMMAND="fd --type directory"
fi
# https://github.com/catppuccin/fzf
export FZF_DEFAULT_OPTS=" \
--color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 \
--color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc \
--color=marker:#f5e0dc,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8"
fi
# Alias
alias g="git"
alias moe="make"
alias meo="make"
# https://zellij.dev/documentation/faq.html
if command -v zellij &>/dev/null; then
alias zz="zellij"
fi
# https://sw.kovidgoyal.net/kitty/faq/
if command -v kitty &>/dev/null; then
alias kssh="kitty +kitten ssh"
fi
# https://restic.readthedocs.io/en/latest/manual_rest.html
if command -v restic &>/dev/null; then
export RESTIC_PASSWORD_FILE=$HOME/.restic_password_file
fi
# https://github.com/sharkdp/vivid
if command -v vivid &>/dev/null; then
export LS_COLORS="$(vivid generate catppuccin-mocha)"
fi
# https://github.com/jarun/nnn
if command -v nnn &>/dev/null; then
export NNN_FIFO=/tmp/nnn.fifo
export NNN_PLUG="p:-preview-tui"
fi
# https://github.com/extrawurst/gitui
if command -v gitui &>/dev/null; then
alias gu="gitui -t mocha.ron"
fi
# https://gitlab.com/phoneybadger/pokemon-colorscripts
if command -v pokemon-colorscripts &>/dev/null; then
pokemon-colorscripts --no-title -r 1-8
fi