# zshrc/90_history
#
# Set up command line history functions
#
# Copyright © 1994–2008 martin f. krafft <madduck@madduck.net>
# Released under the terms of the Artistic Licence 2.0
#
# Source repository: http://git.madduck.net/v/etc/zsh.git
#

DEFAULT_HISTFILE=$ZVAR/history
HISTFILE=$DEFAULT_HISTFILE
HISTSIZE=10000
SAVEHIST=$HISTSIZE
LISTMAX=1000

# treat ! specially like csh did
setopt bang_hist

# ignore duplicates in the history
setopt hist_ignore_dups

# save timestamp and duration with each event
setopt extended_history

# properly lock the file on write
autoload -U is-at-least
# actually ignores the -dev-* stuff, but so be it
is-at-least 4.3.6-dev-0+0417 && setopt hist_fcntl_lock

# skip over non-contiguous duplicates when searching history
setopt hist_find_no_dups

# don't store commands starting with a space in the history file
setopt hist_ignore_space

# don't store history/fc -l invocations
setopt hist_no_store

# remove superfluous blanks from each command line
setopt hist_reduce_blanks

# vim:ft=zsh