zsh/.zshrc (view raw)
1# __
2# ____ _____/ /_ __________
3# /_ / / ___/ __ \/ ___/ ___/
4# _ / /_(__ ) / / / / / /__
5#(_)___/____/_/ /_/_/ \___/
6#
7
8# export thingys
9export ZSH=/home/$USER/.oh-my-zsh
10export BROWSER=/usr/bin/firefox
11export EDITOR=/usr/bin/nvim
12export SSH_KEY_PATH="~/.ssh/id_rsa"
13export PATH=$PATH:$HOME/bin
14export GPG_TTY=$(tty)
15export INPUTRC=~/.inputrc
16export PATH=$PATH:$HOME/Leet/Nim/bin
17export PATH=$PATH:$HOME/.nimble/bin
18
19# zsh setup
20autoload -Uz compinit colors add-zsh-hook history-search-end
21colors
22compinit
23zstyle ':completion:*' list-colors "di=34"
24zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
25export ZLE_REMOVE_SUFFIX_CHARS=''
26setopt extended_glob
27setopt autocd
28
29# partial history matching
30zle -N history-beginning-search-backward-end history-search-end
31zle -N history-beginning-search-forward-end history-search-end
32bindkey "^[OA" history-beginning-search-backward-end
33bindkey "^[OB" history-beginning-search-forward-end
34
35# command history
36[ -z "$HISTFILE" ] && HISTFILE="$HOME/.zsh_history"
37HISTSIZE=50000
38SAVEHIST=10000
39
40setopt extended_history
41setopt hist_expire_dups_first
42setopt hist_ignore_dups
43setopt hist_ignore_space
44setopt hist_verify
45setopt inc_append_history
46setopt share_history
47
48# prompt
49_nicy_prompt() {
50 PROMPT=$("$HOME/.nimble/bin/nicy")
51}
52add-zsh-hook precmd _nicy_prompt
53
54# end and home keys
55bindkey "^[[1~" beginning-of-line
56bindkey "^[[4~" end-of-line
57
58[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
59
60# base16-shell
61BASE16_SHELL="$HOME/.config/base16-shell/"
62[ -n "$PS1" ] && \
63 [ -s "$BASE16_SHELL/profile_helper.sh" ] && \
64 eval "$("$BASE16_SHELL/profile_helper.sh")"
65
66# fpath
67fpath=($HOME/.zsh/zsh-completions/src $fpath)
68
69# sourced scripts
70source /usr/share/autojump/autojump.zsh
71source $HOME/.aliases
72source $HOME/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
73source $HOME/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
74source $HOME/.zsh/zsh-history-substring-search/zsh-history-substring-search.zsh