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