# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2.
-# Latest change: Sam Mär 17 20:12:26 CET 2007 [mika]
+# Latest change: Son Apr 15 22:36:24 CEST 2007 [mika]
################################################################################
# This file is sourced only for interactive shells. It
# should contain commands to set up aliases, functions,
# Search path for the cd comman
# cdpath=(.. ~)
-# Support our own site-functions
- [ -d /etc/zsh/site-functions ] && FPATH=/etc/zsh/site-functions:$FPATH
+# completion functions go to /etc/zsh/completion.d
+# function files may be put into /etc/zsh/functions.d, from where they
+# will be automatically autoloaded.
+ [[ -d /etc/zsh/completion.d ]] && 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
+ autoload -U ${func:t}
+ done
+ fi
# automatically remove duplicates from these arrays
typeset -U path cdpath fpath manpath
autoload history-search-end
# we don't want to quote/espace URLs on our own...
- if autoload -U url-quote-magic ; then
- zle -N self-insert url-quote-magic
- else
- print 'Notice: no url-quote-magic available :('
- fi
+ # if autoload -U url-quote-magic ; then
+ # zle -N self-insert url-quote-magic
+ # zstyle ':url-quote-magic:*' url-metas '*?[]^()~#{}='
+ # else
+ # print 'Notice: no url-quote-magic available :('
+ # fi
+ alias url-quote='autoload -U url-quote-magic ; zle -N self-insert url-quote-magic'
alias run-help >&/dev/null && unalias run-help
autoload run-help # use via 'esc-h'
fi
fi
+# get_tw_cli has been renamed into get_3ware
+ if [ -x /usr/bin/get_3ware ] ; then
+ get_tw_cli() {
+ echo 'Warning: get_tw_cli has been renamed into get_3ware. Invoking get_3ware for you.'>&2
+ get_3ware
+ }
+ fi
+
# I hate lacking backward compability, so provide an alternative therefore
if ! [ -x /usr/sbin/apache2-ssl-certificate ] ; then
function apache2-ssl-certificate(){
# {{{ completion stuff
-# Where to look for autoloaded function definitions
- if [ -d /etc/zsh/completion.d ] ; then
- local comp=/etc/zsh/completion.d
- for func in $comp/*(N-.:t); . ${comp}/${func}
- fi
-
# called later (via is4 && grmlcomp)
# notice: use 'zstyle' for getting current settings
# press ^Xh (control-x h) for getting tags in context; ^X? (control-x ?) to run complete_debug with trace output
}
# some people don't like the automatic correction - so run 'NOCOR=1 zsh' to deactivate it
if [[ -n "$NOCOR" ]] ; then
- zstyle ':completion:*' completer _oldlist _expand _force_rehash _complete
+ zstyle ':completion:*' completer _oldlist _expand _force_rehash _complete _files
setopt nocorrect # do not try to correct the spelling if possible
else
-# zstyle ':completion:*' completer _oldlist _expand _force_rehash _complete _correct _approximate
+# zstyle ':completion:*' completer _oldlist _expand _force_rehash _complete _correct _approximate _files
setopt correct # try to correct the spelling if possible
zstyle -e ':completion:*' completer '
if [[ $_last_try != "$HISTNO$BUFFER$CURSOR" ]]; then
_last_try="$HISTNO$BUFFER$CURSOR"
- reply=(_complete _match _prefix)
+ reply=(_complete _match _prefix _files)
else
if [[ $words[1] = (rm|mv) ]]; then
- reply=(_complete)
+ reply=(_complete _files)
else
- reply=(_oldlist _expand _force_rehash _complete _correct _approximate)
+ reply=(_oldlist _expand _force_rehash _complete _correct _approximate _files)
fi
fi'
fi
}
compdef _functions reload freload
+ # list symlinks in detail (more detailed version of 'readlink -f' and 'whence -s')
+ sll() {
+ [ -z "$1" ] && printf 'Usage: %s <file(s)>\n' "$0" && return 1
+ for i in "$@" ; do
+ file=$i
+ while [ -h "$file" ] ; do
+ ls -l $file
+ file=$(readlink "$file")
+ done
+ done
+ }
+
# fast manual access
if type -p qma &>/dev/null ; then
manzsh() { qma zshall "$1" }
# manzsh() { man zshall | $MYLESS -p $1 ; }
fi
-# use "dchange <package-name>" to view Debian's changelog of the package:
- dchange() {
- if [ -r /usr/share/doc/${1}/changelog.Debian.gz ] ; then
- most /usr/share/doc/${1}/changelog.Debian.gz
- else
- if [ -r /usr/share/doc/${1}/changelog.gz ] ; then
- most /usr/share/doc/${1}/changelog.gz
- else
- echo "No changelog for package $1 found, sorry."
- return 1
- fi
- fi
- }
- _dchange() { _files -W /usr/share/doc -/ }
- compdef _dchange dchange
-
-# use "uchange <package-name>" to view upstream's changelog of the package:
- uchange() {
- if [ -r /usr/share/doc/${1}/changelog.gz ] ; then
- most /usr/share/doc/${1}/changelog.gz
- else
- echo "No changelog for package $1 found, sorry."
- return 1
- fi
- }
- _uchange() { _files -W /usr/share/doc -/ }
- compdef _uchange uchange
+ if [ -x /usr/bin/most ] ; then
+ # use "dchange <package-name>" to view Debian's changelog of the package:
+ dchange() {
+ if [ -r /usr/share/doc/${1}/changelog.Debian.gz ] ; then
+ most /usr/share/doc/${1}/changelog.Debian.gz
+ else
+ if [ -r /usr/share/doc/${1}/changelog.gz ] ; then
+ most /usr/share/doc/${1}/changelog.gz
+ else
+ echo "No changelog for package $1 found, sorry."
+ return 1
+ fi
+ fi
+ }
+ _dchange() { _files -W /usr/share/doc -/ }
+ compdef _dchange dchange
+
+ # use "uchange <package-name>" to view upstream's changelog of the package:
+ uchange() {
+ if [ -r /usr/share/doc/${1}/changelog.gz ] ; then
+ most /usr/share/doc/${1}/changelog.gz
+ else
+ echo "No changelog for package $1 found, sorry."
+ return 1
+ fi
+ }
+ _uchange() { _files -W /usr/share/doc -/ }
+ compdef _uchange uchange
+ fi
# zsh profiling
profile () {