-### user-local fpath
-fpath=(~/.zsh ~/.zsh/functions/Prompts "${fpath[@]}")
+### imports
+source ~/bin/.check-busybox
### options
setopt NO_BEEP NO_CLOBBER
setopt AUTO_CONTINUE
## history
setopt NO_HIST_SAVE_BY_COPY HIST_IGNORE_DUPS SHARE_HISTORY
-HISTFILE=~/.histfile
-HISTSIZE=1000
-SAVEHIST=1000
### keys
bindkey -v
bindkey -a "^[[3~" delete-char
## history search
autoload -Uz up-line-or-beginning-search down-line-or-beginning-search && {
- if [[ -n "$key[Up]" ]] {
+ if [[ -n "$key[Up]" ]] {
zle -N up-line-or-beginning-search
bindkey -- "$key[Up]" up-line-or-beginning-search
}
} else {
alias ll="ls -lAFh"
}
+alias se=sudoedit
## ps
local p=
-if { which pstree >/dev/null 2>&1 && \
- [[ ! "$(readlink -f $(which pstree))" =~ "/busybox" ]] } {
+if which pstree >/dev/null 2>&1 && ! check-busybox pstree; then
# use pstree, but NOT busybox pstree because it kinda sucks
p="pstree -wg3"
-} elif [[ "$OSTYPE" =~ '^freebsd' ]] {
+elif [[ "$OSTYPE" =~ '^freebsd' ]]; then
p="ps -aSdfxwwouser=USR -ogroup=GRP -opid,nice=NI \
-o%cpu,%mem,tty,stat,start=START -oetime,command"
-} elif [[ "$(readlink -f $(which ps))" =~ "/busybox" ]] {
+elif check-busybox ps; then
# busybox compatible
p="ps -eouser='USR ' -ogroup='GRP ' \
-opid=' PID' -onice=' NI' -ovsz=' MEM' \
-otty,stat,etime,comm"
-} else {
+else
# XXX: untested, posix
# TODO: support gnu ps
p="ps -eouser=USR -ogroup=GRP -opid,nice=NI \
-opcpu=CPU -ovsz=MEM -otty,stat,etime,comm"
+fi
+if [[ "$(basename "$PAGER")" = "less" ]] {
+ p="$p | less -SE"
+} else {
+ p="$p | \"${PAGER:-more}\""
}
-p="$p | ${PAGER:-more} -Se"
alias pa="$p"
alias spa="sudo $p"
unset p
bindkey "^[[F" end-of-line #End
bindkey -a "^[[F" end-of-line
+ # colors
+ export CLICOLOR=
+ export LS_COLORS='di=34:ln=35:so=32:pi=33:ex=31:bd=46;34:cd=43;34:su=41;30:sg=46;30:tw=42;30:ow=43;30'
+
## sound
function s { sysctl hw.snd.default_unit${1:+\=$1} }
alias vol mixer
## sound
# TODO: test alsa/oss/sndio/portaudio/pulse in order of importance
function s() {}
+ function vol() {}
esac
### modules & styles
## vcs
-autoload -Uz vcs_info
zstyle ':vcs_info:*' enable git
#zstyle ':vcs_info:git*' check-for-changes true #too slow
zstyle ':vcs_info:git*:dotfiles' check-for-changes true
zstyle ':vcs_info:git*' check-for-staged-changes true
+autoload -Uz vcs_info
## compinit
-# The following lines were added by compinstall
zstyle ':completion:*' auto-description '[arg] %d'
zstyle ':completion:*' expand suffix
zstyle ':completion:*' format '# %d'
zstyle ':completion:*' original false
zstyle ':completion:*' select-prompt '%B%l%b'
zstyle ':completion:*' verbose true
-zstyle :compinstall filename '/home/ds6/.zshrc'
-
-autoload -Uz compinit
-compinit
-# End of lines added by compinstall
+autoload -Uz compinit && compinit
## prompt
-# do this last so prompt can potentially override
+# do this last so prompt can potentially override other settings
autoload -Uz promptinit && promptinit
-prompt ds6
+prompt arrows
+
+### load site-specific
+if [[ -f ~/.zshrc.local ]] { source ~/.zshrc.local }
+
+### unset imports
+unfunction check-busybox
# vim: set et sts=4 sw=4 ts=8 tw=79 :