]> git.sev.monster Git - dotfiles.git/blame - base/.zshrc
improved mpc-notify
[dotfiles.git] / base / .zshrc
CommitLineData
b3d0247b 1## options
7045a58b 2setopt autocd extendedglob
3unsetopt beep
4
b3d0247b 5## history
7045a58b 6setopt appendhistory
7HISTFILE=~/.histfile
8HISTSIZE=100
9SAVEHIST=100
10
b3d0247b 11## keys
7045a58b 12bindkey -v
b3d0247b 13KEYTIMEOUT=1
7045a58b 14# xorg
15bindkey "^[[7~" beginning-of-line #Home
16bindkey -a "^[[7~" beginning-of-line
17bindkey "^[[8~" end-of-line #End
18bindkey -a "^[[8~" end-of-line
19bindkey "^[[3~" delete-char #Del
20bindkey -a "^[[3~" delete-char
21# bsd vt
b3d0247b 22bindkey "^[[H" beginning-of-line #Home
7045a58b 23bindkey -a "^[[H" beginning-of-line
b3d0247b 24bindkey "^[[F" end-of-line #End
7045a58b 25bindkey -a "^[[F" end-of-line
26
27autoload -Uz up-line-or-beginning-search down-line-or-beginning-search
28zle -N up-line-or-beginning-search
29zle -N down-line-or-beginning-search
30[[ -n "$key[Up]" ]] && bindkey -- "$key[Up]" up-line-or-beginning-search
31[[ -n "$key[Down]" ]] && bindkey -- "$key[Down]" down-line-or-beginning-search
32
b3d0247b 33## aliases
189288f7 34alias h="history -25"
35alias j="jobs -l"
b3d0247b 36alias l="ls -AF"
37alias ll="ls -lAFho"
fdff3888 38# ps
b3d0247b 39local p="ps -aSdxwwouser=USR -ogroup=GRP -opid,nice=N \
40 -o%cpu,%mem,tt,stat,start=START -oetime,command | ${PAGER:-more} -Se"
41alias pa="$p"
42alias spa="sudo $p"
43unset p
fdff3888 44# sound source
f51d40ba 45function s { sysctl hw.snd.default_unit${1:+\=$1} }
fdff3888 46# py venv
ce090b98 47alias va="source bin/activate"
d7ea63a2 48alias vd="deactivate"
189288f7 49# be paranoid
50alias cp='cp -ip'
51alias mv='mv -i'
52alias rm='rm -I'
189288f7 53# ports
9fddba79 54function portpkg {
55 case "$1" {
ce090b98 56 build|run)
57 sudo pkg install -AU $(make ${1}-depends-list |
58 sed 's_/usr/ports/_ _' | tr -d '\n')
59 ;;
60 *) echo "Usage: \`portpkg <build|run>' in a port directory"
9fddba79 61 return 1;;
62 }
9fddba79 63}
189288f7 64
b3d0247b 65## prompt
66setopt prompt_subst
488e2e4a 67PROMPT='%F{$VICOL}%n%f@%F{$VICOL}%2m%f%(?../%F{red}$?%f)%# '
b3d0247b 68RPROMPT='%F{yellow}${vcs_info_msg_0_:-%~}%f %T'
69
70function zle-line-init zle-keymap-select {
71 VICOL="${${KEYMAP:/vicmd/red}:/(main|viins)/green}"
72 zle reset-prompt
73}
74zle -N zle-line-init
75zle -N zle-keymap-select
76
77autoload -Uz vcs_info
78zstyle ':vcs_info:*' enable git
38381148 79zstyle ':vcs_info:git*' formats "%c%u%%F{green}%r/%b%%f/%%F{yellow}%S%%f"
80zstyle ':vcs_info:git*' actionformats "%%F{red}(%a)%%f %c%u%%F{green}%r/%b%%f/\
4f3b1338 81%%F{yellow}%S%%f"
ba92616c 82#zstyle ':vcs_info:git*' check-for-changes true #too slow
fdff3888 83zstyle ':vcs_info:git*:.dotfiles' check-for-changes true
ba92616c 84zstyle ':vcs_info:git*' check-for-staged-changes true
85zstyle ':vcs_info:git*' stagedstr "%F{blue}+"
86zstyle ':vcs_info:git*' unstagedstr "%F{red}*"
b3d0247b 87
8f9c4a17 88# hooks
b3d0247b 89function precmd {
8f9c4a17 90 # change terminal title
b3d0247b 91 print -Pn "\e]0;%(1j,%j,)%#${SSH_CLIENT+$USER@$HOST:}%~\a"
8f9c4a17 92 # update vcs
b3d0247b 93 vcs_info
8f9c4a17 94 # bell if exec takes 5s
95 if ((SECONDS - _exectime >= 5)) print "\a"
b3d0247b 96}
97function preexec {
8f9c4a17 98 # change terminal title to show command
b3d0247b 99 print -Pnf "\e]0;%s\a" "%#${SSH_CLIENT+$USER@$HOST:}$1"
8f9c4a17 100 # save last exec time for bell
b3d0247b 101 _exectime=$SECONDS
102}
8f9c4a17 103function chpwd {
104 l
105}
b3d0247b 106
189288f7 107# The following lines were added by compinstall
108zstyle ':completion:*' auto-description 'specify: %d'
109zstyle ':completion:*' expand suffix
110zstyle ':completion:*' format '# %d'
111zstyle ':completion:*' group-name ''
112zstyle ':completion:*' ignore-parents parent
113zstyle ':completion:*' insert-unambiguous false
114zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
115zstyle ':completion:*' list-prompt '%B%i%b'
116zstyle ':completion:*' list-suffixes true
117zstyle ':completion:*' matcher-list '' 'm:{[:lower:]}={[:upper:]}' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]} r:|[._-]=* r:|=*' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]} l:|=* r:|=*'
118zstyle ':completion:*' menu select=1
119zstyle ':completion:*' original false
120zstyle ':completion:*' select-prompt '%B%l%b'
121zstyle ':completion:*' verbose true
122zstyle :compinstall filename '/home/ds6/.zshrc'
123
124autoload -Uz compinit
125compinit
126# End of lines added by compinstall
127
d9362f34 128# vim: ts=8:sts=4:sw=4:et:tw=79
This page took 0.107713 seconds and 4 git commands to generate.