]> git.madduck.net Git - etc/zsh.git/blobdiff - .zsh/zshrc/30_aliases

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

make log tailing and paging more generic
[etc/zsh.git] / .zsh / zshrc / 30_aliases
index 846b6844c3d35ff9e617adbd20eef36599d062ac..16005bf82c67da0b31ecd6d7585459f0987d5f42 100644 (file)
@@ -5,9 +5,11 @@
 # 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
+# Source repository: git://git.madduck.net/etc/zsh.git
 #
 
+function trace() { eval "set -x; $@" }
+
 alias mv='nocorrect mv'
 alias cp='nocorrect cp'
 alias ln='nocorrect ln'
@@ -20,24 +22,36 @@ alias links='noglob links'
 alias wb='noglob www-browser'
 alias wget='noglob wget'
 alias curl='noglob curl'
+alias apt-cache='noglob apt-cache'
+alias locate='noglob locate'
+
+local _USER_AGENT="Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.14) Gecko/20080404 Iceweasel/2.0.0.14 (Debian-2.0.0.14-2)"
+alias swget="noglob wget --user-agent='$USER_AGENT'"
 
-_LS_OPTS='-bCF --color=auto'
-ls --group-directories-first >/dev/null 2>&1 \
-  && _LS_OPTS="$_LS_OPTS --group-directories-first"
+typeset -a _ls_opts; _ls_opts=(-bC --color=auto)
+command ls --group-directories-first >/dev/null 2>&1 \
+  && _ls_opts+=--group-directories-first
 # I prefer POSIX collation for ls
-alias ls="LC_COLLATE=POSIX ls $_LS_OPTS"
-unset _LS_OPTS
+alias ls="LC_COLLATE=POSIX ls $_ls_opts"
 
+alias l='ls --time-style=+%Y%m%d.%H%M -gG'
 alias ll='ls -l'
 alias la='ls -a'
 alias lla='ls -la'
+alias lt='ls -lt'
+alias lrt='ls -lrt'
+alias lat='ls -lat'
+alias lart='ls -lart'
 # List only directories and symbolic links that point to directories
-alias lsd='ls -ld *(-/DN)'
+alias lsd='ll -d *(-/DN)'
+
+alias lscontext=l
+cd () { __CHPWD_RUN_FIRST=lscontext && builtin cd "$@" && unset __CHPWD_RUN_FIRST }
+#_cd_l() { ll }
+#chpwd_functions+=_cd_l
 
-alias lsbig="ls -flh *(.OL[1,10])"
-alias lssmall="ls -Srl *(.oL[1,10])"
-alias lsnew="ls -rl *(D.om[1,10])"
-alias lsold="ls -rtlh *(D.om[1,10])"
+# #183394
+alias w='w|cat'
 
 alias egrep='egrep --color=auto -d skip'
 alias fgrep='fgrep --color=auto -d skip'
@@ -56,10 +70,99 @@ alias bug='BROWSER=www-browser bts show'
 
 # handy documentation lookup on Debian
 # from http://www.michael-prokop.at/computer/config/.zshrc
-doc() { cd /usr/share/doc/$1 && ls }
-_doc() { _files -W /usr/share/doc -/ }
-compdef _doc doc
+doc() { cd /usr/share/doc/$1 }
+compdef '_files -W /usr/share/doc -/' doc
+
+alias giti='git init && git add . && git commit -minitial\ checkin && git tag orig'
+
+if whence mtail >/dev/null; then
+  alias t=mtail
+elif whence tailf >/dev/null; then
+  alias t=tailf
+else
+  alias t='tail -f'
+fi
+compdef _files t
+
+function ltail() { t ~log/$1 }
+compdef '_files -W ~log' ltail
+
+function lless() { sensible-pager ~log/$1 }
+compdef '_files -W ~log' lless
+
+alias tsl='ltail syslog'
+alias lsl='lless ~log/syslog'
+alias tml='ltail mail.log'
+alias lml='lless ~log/mail.log'
+alias tal='ltail auth.log'
+alias lal='lless ~log/auth.log'
+alias tdl='ltail daemon.log'
+alias ldl='lless ~log/daemon.log'
+alias tkl='ltail kern.log'
+alias lkl='lless ~log/kern.log'
+
+alias px='ps afux'
+alias mps='ps -ao user,pcpu,start,command'
+
+alias bofh='fortune bofh-excuses'
+
+autoload -U baseconv
+alias b2d='baseconv 2 10'
+alias d2b='baseconv 10 2'
+alias d2h='baseconv 10 16'
+alias h2d='baseconv 16 10'
+alias d2o='baseconv 10 8'
+alias o2d='baseconv 8 10'
+
+alias sendmail=/usr/sbin/sendmail
+
+_d() { dict $* }
+d() { _d $* | sensible-pager }
+the() { d -d moby-thesaurus $* }
+typeset -A _LANGUAGES
+_LANGUAGES[en]=eng
+_LANGUAGES[de]=deu
+_LANGUAGES[es]=spa
+_LANGUAGES[fr]=fra
+_LANGUAGES[it]=ita
+_LANGUAGES[lt]=lat
+for l0 in ${(k)_LANGUAGES}; do
+  for l1 in ${(k)_LANGUAGES}; do
+    eval "_${l0}-${l1}() { _d -d fd-${_LANGUAGES[$l0]}-${_LANGUAGES[$l1]} \$* }"
+    eval "${l0}-${l1}() { d -d fd-${_LANGUAGES[$l0]}-${_LANGUAGES[$l1]} \$* }"
+  done
+done
+unset '_LANGUAGES[en]'
+for l in ${(k)_LANGUAGES}; do
+  eval "${l}() { (_${l}-en \$*; _en-${l} \$*) | more }"
+done
+unset _LANGUAGES
+
+alias dpkg-buildpackage="dpkg-buildpackage -k$DEBKEYID -rfakeroot"
+
+bugsub() { echo X-debbugs-autosubscribe: madduck | sendmail -f $DEBEMAIL ${1:?No bug number}-subscribe@bugs.debian.org }
+bugunsub() { sendmail -f $DEBEMAIL ${1:?No bug number}-unsubscribe@bugs.debian.org </dev/null }
+ptssub() { echo subscribe ${1:?E: no package name given.} | sendmail -f ${2:-$DEBEMAIL} pts@qa.debian.org }
+ptsunsub() { echo unsubscribe ${1:?E: no package name given.} | sendmail -f ${2:-$DEBEMAIL} pts@qa.debian.org }
+qasub() { echo subscribe ${1:?E: no package name given.} ${2:-unspecifed} | sendmail -f $DEBEMAIL ddpo@qa.debian.org }
+qaunsub() { echo unsubscribe ${1:?E: no package name given.} ${2:-unspecifed} | sendmail -f $DEBEMAIL ddpo@qa.debian.org }
+
+uc() { unicode --max=0 --colour=off "$@" | sensible-pager }
+
+alias ipr='ip r'
+alias ipa='ip a'
+alias ipl='ip l'
+
+alias btd='btdownloadheadless'
+
+alias mdtest='swaks -s localhost -t'
 
-alias giti='git init && git add . && git commit -minitial\ checkin'
+if whence devtodo >/dev/null; then
+  _devtodo_on_chpwd() {
+    local out; out="$(devtodo)"
+    [[ -n $out ]] && print "todo:\n$out"
+  }
+  [[ -z ${(M)chpwd_functions:#_devtodo_on_chpwd} ]] && chpwd_functions+=_devtodo_on_chpwd
+fi
 
 # vim:ft=zsh