aboutsummaryrefslogtreecommitdiff
path: root/zshrc.dot.link
blob: 5e521d162728136d8c95321d7f61c078f2bdd39b (plain)
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
# Source default profile
source ~/.profile

# Set up the prompt
autoload -Uz promptinit && promptinit
autoload -U colors && colors
PROMPT="%(?.%{$fg[green]%}.%{$fg[red]%})%? %{$fg[cyan]%}$(date +%Y%m%d) %* %{$fg[yellow]%}%n@%m%{$reset_color%}:%{$fg[cyan]%}%~%{$reset_color%} %# "

# Set history
setopt histignorealldups sharehistory

# Use emacs keybindings even if our EDITOR is set to vi
bindkey -e

# Keep 1000 lines of history within the shell and save it to ~/.zsh_history:
HISTSIZE=1000
SAVEHIST=1000
HISTFILE=~/.zsh_history

# Add custom completion scripts
fpath=(~/.zsh/completion $fpath)

# Use modern completion system
autoload -Uz compinit
compinit

# CD behavior
# Whishlist: https://superuser.com/questions/565310/silent-cd-using-cdpath-with-zsh/565396
setopt auto_cd

# Completion config
zstyle ':completion:*' auto-description 'specify: %d'
zstyle ':completion:*' completer _expand _complete _correct _approximate
zstyle ':completion:*' format 'Completing %d'
zstyle ':completion:*' group-name ''
zstyle ':completion:*' menu select=2
eval "$(dircolors -b)"
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
zstyle ':completion:*' list-colors ''
zstyle ':completion:*' list-prompt %SAt %p: Hit TAB for more, or the character to insert%s
zstyle ':completion:*' matcher-list '' 'm:{a-z}={A-Z}' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=* l:|=*'
zstyle ':completion:*' menu select=long
zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s
zstyle ':completion:*' use-compctl false
zstyle ':completion:*' verbose true
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31'
zstyle ':completion:*:kill:*' command 'ps -u $USER -o pid,%cpu,tty,cputime,cmd'
zstyle ':completion:*:descriptions' format %d
zstyle ':completion:*:descriptions' format %B%d%b
zstyle ':completion:*:complete:(cd|pushd):*' tag-order 'local-directories named-directories path-directories'

# Powerline
if [ -e '/usr/share/powerline/bindings/zsh/powerline.zsh' ]; then
  . /usr/share/powerline/bindings/zsh/powerline.zsh
fi