# {{{ check for version/system
# check for versions (compatibility reasons)
-if autoload is-at-least && is-at-least 2>/dev/null ; then
- is4() { is-at-least 4 }
- is41() { is-at-least 4.1 }
- is42() { is-at-least 4.2 }
-else
- is4(){
- [[ $ZSH_VERSION == 4.* ]] && return 0
- return 1
- }
- is42(){
- [[ $ZSH_VERSION == 4.<2->* ]] && return 0
- return 1
- }
-fi
+is4(){
+ [[ $ZSH_VERSION == <4->* ]] && return 0
+ return 1
+}
+
+is41(){
+ [[ $ZSH_VERSION == 4.<1->* || $ZSH_VERSION == <5->* ]] && return 0
+ return 1
+}
+
+is42(){
+ [[ $ZSH_VERSION == 4.<2->* || $ZSH_VERSION == <5->* ]] && return 0
+ return 1
+}
+
+is43(){
+ [[ $ZSH_VERSION == 4.<3->* || $ZSH_VERSION == <5->* ]] && return 0
+ return 1
+}
#f1# Checks whether or not you're running grml
isgrml(){
# }}}
# {{{ set some variables
-#v#
if check_com -c vim ; then
+#v#
export EDITOR=${EDITOR:-vim}
else
export EDITOR=${EDITOR:-vi}
fi
+
#v#
+(( ${+PAGER} )) || export PAGER="less"
+#v#
export MAIL=${MAIL:-/var/mail/$USER}
# if we don't set $SHELL then aterm, rxvt,.. will use /bin/sh or /bin/bash :-/
if [[ -n "$BROKEN_COMPLETION_DIR" ]] ; then
print 'Warning: not setting completion directories because broken files have been found.' >&2
else
- [[ -d /etc/zsh/completion.d ]] && fpath+=( /etc/zsh/completion.d )
+ [[ -d /etc/zsh/completion.d ]] && fpath=( $fpath /etc/zsh/completion.d )
if [[ -d /etc/zsh/functions.d ]] ; then
fpath+=( /etc/zsh/functions.d )
for func in /etc/zsh/functions.d/[^_]*[^~] ; do
fi
chpwd() {
- builtin dirs -pl >! ~/.zdirs
+ builtin print -l ${(u)dirstack} >! ~/.zdirs
}
# }}}
# {{{ Use hard limits, except for a smaller stack and no core dumps
unlimit
-limit stack 8192
+is4 && limit stack 8192
isgrmlcd && limit core 0 # important for a live-cd-system
limit -s
# }}}
# manzsh() { man zshall | $MYLESS -p $1 ; }
fi
-if check_com -c most ; then
+if check_com -c $PAGER ; then
#f1# View Debian's changelog of a given package
dchange() {
if [[ -r /usr/share/doc/${1}/changelog.Debian.gz ]] ; then
- most /usr/share/doc/${1}/changelog.Debian.gz
+ $PAGER /usr/share/doc/${1}/changelog.Debian.gz
elif [[ -r /usr/share/doc/${1}/changelog.gz ]] ; then
- most /usr/share/doc/${1}/changelog.gz
+ $PAGER /usr/share/doc/${1}/changelog.gz
else
if check_com -c aptitude ; then
echo "No changelog for package $1 found, using aptitude to retrieve it."
#f1# View Debian's NEWS of a given package
dnews() {
if [[ -r /usr/share/doc/${1}/NEWS.Debian.gz ]] ; then
- most /usr/share/doc/${1}/NEWS.Debian.gz
+ $PAGER /usr/share/doc/${1}/NEWS.Debian.gz
else
if [[ -r /usr/share/doc/${1}/NEWS.gz ]] ; then
- most /usr/share/doc/${1}/NEWS.gz
+ $PAGER /usr/share/doc/${1}/NEWS.gz
else
echo "No NEWS file for package $1 found, sorry."
return 1
#f1# View upstream's changelog of a given package
uchange() {
if [[ -r /usr/share/doc/${1}/changelog.gz ]] ; then
- most /usr/share/doc/${1}/changelog.gz
+ $PAGER /usr/share/doc/${1}/changelog.gz
else
echo "No changelog for package $1 found, sorry."
return 1