dots/.config/zsh/.zshrc

57 lines
1.3 KiB
Bash

# Enable colors and change prompt:
autoload -U colors && colors # Load colors
PROMPT='%1~%f%b $ '
# gpg key for ssh authentication
export SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)"
export GPG_TTY=$(tty)
stty stop undef
setopt autocd
setopt interactive_comments
setopt noglob
# Load aliases
source $XDG_CONFIG_HOME/shell/aliases
HISTSIZE=10000
SAVEHIST=10000
HISTFILE=~/.cache/history
setopt INC_APPEND_HISTORY
setopt HIST_IGNORE_ALL_DUPS
# Basic auto/tab complete:
autoload -U compinit
zmodload zsh/complist
compinit
_comp_options+=(globdots) # Include hidden files.
# vi mode
bindkey -v
export KEYTIMEOUT=1
# Use vim keys in tab complete menu:
bindkey -v '^?' backward-delete-char
# Change cursor shape for different vi modes.
function zle-keymap-select () {
case $KEYMAP in
vicmd) echo -ne '\e[1 q';; # block
viins|main) echo -ne '\e[5 q';; # beam
esac
}
zle -N zle-keymap-select
zle-line-init() {
zle -K viins # initiate `vi insert` as keymap (can be removed if `bindkey -V` has been set elsewhere)
echo -ne "\e[5 q"
}
zle -N zle-line-init
echo -ne '\e[5 q' # Use beam shape cursor on startup.
preexec() { echo -ne '\e[5 q' ;} # Use beam shape cursor for each new prompt.
bindkey -s '^f' 'cd "$(dirname "$(fzf)")"\n'
bindkey -v '^r' 'history-incremental-search-backward'
bindkey '^[[P' delete-char