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'
alias pim='tmux new-session -As pim -n mail "aerc" \; new-window -n calendrier "ikhal"'


# 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="/home/lafrite/.local/bin:$(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"

eval "$(zoxide init zsh)"
