dotfiles/zsh/.config/zsh/.zshrc

100 lines
2.4 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

fpath+=$ZDOTDIR/pure
fpath+=$ZDOTDIR/zfunc
autoload -U compinit
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' # menu select=2
zmodload zsh/complist
compinit
_comp_options+=(globdots) # Include hidden files.
# Prompt theme
# git clone https://github.com/sindresorhus/pure ~/.config/zsh/
autoload -U promptinit; promptinit
prompt pure
export PURE_PROMPT_SYMBOL='%f%n%f%F{magenta}'
# Cursor for vimode
# ZLE hooks for prompt's vi mode status
function zle-line-init zle-keymap-select {
# Change the cursor style depending on keymap mode.
case $KEYMAP {
vicmd)
printf '\e[0 q' # Box.
;;
viins|main)
printf '\e[6 q' # Vertical bar.
;;
}
}
zle -N zle-line-init
zle -N zle-keymap-select
# Switch between vimode quickly
export KEYTIMEOUT=1
# Alias
## Colors
alias ls='ls --color'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
## Prompt when over right
alias cp='cp -iv'
alias mv='mv -iv'
alias rm='rm -i'
alias cat='bat -pp'
alias less='bat -p'
# Newsboat
alias newsboat='tmux new -As newsboat newsboat'
# Autosuggestions
# git clone https://github.com/zsh-users/zsh-autosuggestions ~/.config/zsh/
source ~/.config/zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
ZSH_AUTOSUGGEST_STRATEGY=(history completion)
# Syntax Highlight
# git clone https://github.com/zsh-users/zsh-syntax-highlighting ~/.config/zsh/
source ~/.config/zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
# Substring search
# git clone https://github.com/zsh-users/zsh-history-substring-search ~/.config/zsh
source ~/.config/zsh/zsh-history-substring-search/zsh-history-substring-search.zsh
# Ignore duplicate commands in history
setopt HIST_IGNORE_DUPS
bindkey '^[[A' history-substring-search-up
bindkey '^[[B' history-substring-search-down
bindkey -M vicmd 'k' history-substring-search-up
bindkey -M vicmd 'j' history-substring-search-down
# Auto-ls
source ~/.config/zsh/auto-ls/auto-ls.zsh
# Pyenv
eval "$(pyenv init --path)"
source ~/.config/zsh/completion.zsh
source ~/.config/zsh/key-bindings.zsh
# password-store
_fzf_complete_pass() {
ARGS="$@"
_fzf_complete '' "$@" < <(
command find ~/.password-store/ -name "*.gpg" | sed -r 's,(.*)\.password-store/(.*)\.gpg,\2,'
)
}
# yarn global commands
export PATH="$(yarn global bin):$PATH"
# zk
export ZK_NOTEBOOK_DIR="/home/lafrite/Nextcloud/Documents/zettelkasten/"
# tea
PROG=tea _CLI_ZSH_AUTOCOMPLETE_HACK=1 source "/home/lafrite/.config/tea/autocomplete.zsh"