blob: ad5e7c523cf5ae2b1267e449bd7bde79823c1548 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
|
# Use powerline
USE_POWERLINE="true"
# Has weird character width
# Example:
# is not a diamond
HAS_WIDECHARS="false"
# Source manjaro-zsh-configuration
if [[ -e /usr/share/zsh/manjaro-zsh-config ]]; then
source /usr/share/zsh/manjaro-zsh-config
fi
# Use manjaro zsh prompt
if [[ -e /usr/share/zsh/manjaro-zsh-prompt ]]; then
source /usr/share/zsh/manjaro-zsh-prompt
fi
source ~/.config/zsh/antigen.zsh
antigen bundle zsh-users/zsh-syntax-highlighting
antigen bundle zsh-users/zsh-history-substring-search
antigen bundle zsh-users/zsh-autosuggestions
antigen bundle zsh-users/zsh-completions
antigen apply
# Exports
export PATH=$HOME/.local/bin:/usr/local/bin:$HOME/go/bin:$PATH
# export GOROOT=$HOME/work/go
export GOPATH=$HOME/go
export GOPROXY=https://proxy.neonxp.ru
export EDITOR="nvim"
#export DOCKER_HOST=unix://$XDG_RUNTIME_DIR/docker.sock
# Aliases
alias ls="ls -F"
alias l="ls"
alias ll="ls -AFhl"
alias cp="cp -i" # Confirm before overwriting something
alias gitpush="git add . && git commit --amend --no-edit && git push -f"
alias k="kubectl"
alias yu="ssh-add -e /usr/lib/x86_64-linux-gnu/libykcs11.so; ssh-add -s /usr/lib/x86_64-linux-gnu/libykcs11.so"
alias m="micro"
alias n="nvim"
alias cp="cp -i" # confirm before overwriting something
alias df="df -h" # human-readable sizes
alias free="free -m" # show sizes in MB
alias np="nano -w PKGBUILD"
alias more=less
[[ ! -f `which exa` ]] || alias ls="exa" && alias ll="exa -l"
# Functions
function tk() { mkdir -p $1; cd $1; }
function alert() {
notify-send --expire-time=30000 $1 $2 && nohup play ~/.local/share/alarm.wav &
}
## Options section
setopt correct # Auto correct mistakes
setopt extendedglob # Extended globbing. Allows using regular expressions with *
setopt nocaseglob # Case insensitive globbing
setopt rcexpandparam # Array expension with parameters
setopt nocheckjobs # Don"t warn about running processes when exiting
setopt numericglobsort # Sort filenames numerically when it makes sense
setopt nobeep # No beep
setopt appendhistory # Immediately append history instead of overwriting
setopt histignorealldups # If a new command is a duplicate, remove the older one
setopt autocd # if only directory path is entered, cd there.
setopt inc_append_history # save commands are added to the history immediately, otherwise only when shell exits.
setopt histignorespace # Don"t save commands that start with space
zstyle ":completion:*" matcher-list "m:{a-zA-Z}={A-Za-z}" # Case insensitive tab completion
zstyle ":completion:*" list-colors "${(s.:.)LS_COLORS}" # Colored completion (different colors for dirs/files/etc)
zstyle ":completion:*" rehash true # automatically find new executables in path
# Speed up completions
zstyle ":completion:*" accept-exact "*(N)"
zstyle ":completion:*" use-cache on
zstyle ":completion:*" cache-path ~/.zsh/cache
zstyle ":completion:*:processes" command "ps -ax"
zstyle ":completion:*:*:kill:*:processes" list-colors "=(#b) #([0-9]#)*=0=01;32"
zstyle ":completion:*:*:kill:*" menu yes select
zstyle ":completion:*:kill:*" force-list always
zstyle ":completion:*:processes-names" command "ps -e -o comm="
zstyle ":completion:*:*:killall:*" menu yes select
zstyle ":completion:*:killall:*" force-list always
HISTFILE=~/.zsh_history
HISTSIZE=100000
SAVEHIST=100000
#export EDITOR=/usr/bin/nano
#export VISUAL=/usr/bin/nano
WORDCHARS=${WORDCHARS//\/[&.;]} # Don"t consider certain characters part of the word
autoload -U compinit colors zcalc
compinit -d
source ~/.config/zsh/conf.d/*.zsh
colors
# Color man pages
export LESS_TERMCAP_mb=$"\E[01;32m"
export LESS_TERMCAP_md=$"\E[01;32m"
export LESS_TERMCAP_me=$"\E[0m"
export LESS_TERMCAP_se=$"\E[0m"
export LESS_TERMCAP_so=$"\E[01;47;34m"
export LESS_TERMCAP_ue=$"\E[0m"
export LESS_TERMCAP_us=$"\E[01;36m"
export LESS=-R
## Plugins section: Enable fish style features
# Use syntax highlighting
#source ${HOME}/.zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
# Use history substring search
#source ${HOME}/.zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
# bind UP and DOWN arrow keys to history substring search
zmodload zsh/terminfo
bindkey "$terminfo[kcuu1]" history-substring-search-up
bindkey "$terminfo[kcud1]" history-substring-search-down
bindkey "^[[A" history-substring-search-up
bindkey "^[[B" history-substring-search-down
bindkey -e
bindkey "^[[7~" beginning-of-line # Home key
bindkey "^[[H" beginning-of-line # Home key
if [[ "${terminfo[khome]}" != "" ]]; then
bindkey "${terminfo[khome]}" beginning-of-line # [Home] - Go to beginning of line
fi
bindkey "^[[8~" end-of-line # End key
bindkey "^[[F" end-of-line # End key
if [[ "${terminfo[kend]}" != "" ]]; then
bindkey "${terminfo[kend]}" end-of-line # [End] - Go to end of line
fi
bindkey "^[[2~" overwrite-mode # Insert key
bindkey "^[[3~" delete-char # Delete key
bindkey "^[[C" forward-char # Right key
bindkey "^[[D" backward-char # Left key
bindkey "^[[5~" history-beginning-search-backward # Page up key
bindkey "^[[6~" history-beginning-search-forward # Page down key
# Navigate words with ctrl+arrow keys
bindkey "^[Oc" forward-word #
bindkey "^[Od" backward-word #
bindkey "^[[1;5D" backward-word #
bindkey "^[[1;5C" forward-word #
bindkey "^H" backward-kill-word # delete previous word with ctrl+backspace
bindkey "^[[Z" undo # Shift+tab undo last action
# ctrl + space accept suggestion
bindkey "^ " autosuggest-accept
|