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
|
# -*- mode: sh; -*-
source ${ZPLUG_HOME:-~/projects/zplug}/init.zsh
zplug "zsh-users/zsh-completions"
zplug "mafredri/zsh-async", use:async.zsh
zplug "sindresorhus/pure", on:"mafredri/zsh-async", as:plugin, use:pure.zsh
zplug "Tarrasch/zsh-autoenv", as:plugin
zplug "clvv/fasd", hook-build:"PREFIX=$HOME make install"
zplug "alanpearce/zsh-directory-history", at:"dirlog-as-zsh-function", as:command, use:"dirhist"
zplug "alanpearce/zsh-directory-history", at:"dirlog-as-zsh-function", as:plugin
WORDCHARS=${${WORDCHARS//[-.]}//[\/]}
if [[ ${path[(I)$HOME/bin ]} ]]
then
path+=($HOME/bin)
fi
ls='\ls'
gnu_ls_options="-v --group-directories-first --color=auto"
gnu_ls_isodate="--time-style=long-iso"
bsd_ls_options="-p"
bsd_ls_isodate="-D '%F %k:%M'"
case $OSTYPE in
darwin*)
if [[ -n $commands[gls] ]]
then
ls='\gls'
ls_options=$gnu_ls_options
ls_isodate=$gnu_ls_isodate
else
ls_options=$bsd_ls_options
ls_isodate=$bsd_ls_isodate
fi
;;
freebsd*)
ls_options=$bsd_ls_options
ls_isodate=$bsd_ls_isodate
;;
linux-gnu)
ls_options=$gnu_ls_options
ls_isodate=$gnu_ls_isodate
;;
esac
alias l="${ls} ${ls_options} -Bp"
alias l1="${ls} ${ls_options} -1"
alias ls="${ls} ${ls_options} -hF"
alias la="${ls} ${ls_options} -hA"
alias ll="${ls} ${ls_options} ${ls_isodate} -hl"
alias lal="ll -A"
alias lla="lal"
alias llr="ll -t"
bindkey '\e[3~' delete-char
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}' '+m:{A-Z}={a-z}'
zstyle ':completion:*' completer _expand _complete _match
if zplug check Tarrasch/zsh-autoenv
then
AUTOENV_FILE_ENTER=.envrc
AUTOENV_HANDLE_LEAVE=0
AUTOENV_LOOK_UPWARDS=1
fi
if zplug check sindresorhus/pure
then
PURE_GIT_PULL=0
fi
# Then, source plugins and add commands to $PATH
zplug load
# General configuration
setopt auto_cd # Change directories without `cd`
if zplug check zsh-users/zsh-completions
then
autoload -U compinit && compinit
fi
if zplug check sindresorhus/pure
then
autoload -Uz promptinit && promptinit
prompt pure &> /dev/null
fi
if zplug check clvv/fasd
then
if [[ -n $commands[fasd] ]]
then
_FASD_DATA="$HOME/.cache/zsh/fasd-data"
source =fasd
fasd_cache="$HOME/.fasd-init-zsh"
if [ "$(command -v fasd)" -nt "$fasd_cache" -o ! -s "$fasd_cache" ]; then
fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install >| "$fasd_cache"
fi
source "$fasd_cache"
unset fasd_cache
else
echo "no fasd"
fi
fi
if zplug check alanpearce/zsh-directory-history
then
unsetopt flow_control # Let me use ^S and ^Q
# bindkey '\e[A' directory-history-search-backward
# bindkey '\e[B' directory-history-search-forward
bindkey -M emacs '^R' history-substring-search-up
bindkey -M emacs '^S' history-substring-search-down
fi
|