]> git.donarmstrong.com Git - zsh.git/blob - .zsh/zshrc/30_aliases
edalias/edfunc functions
[zsh.git] / .zsh / zshrc / 30_aliases
1 # zshrc/30_aliases
2 #
3 # Defines command shortcuts
4 #
5 # Copyright © 1994–2008 martin f. krafft <madduck@madduck.net>
6 # Released under the terms of the Artistic Licence 2.0
7 #
8 # Source repository: git://git.madduck.net/etc/zsh.git
9 #
10
11 function trace() { eval "set -x; $@" }
12
13 alias mv='nocorrect mv'
14 alias cp='nocorrect cp'
15 alias ln='nocorrect ln'
16 alias mkdir='nocorrect mkdir'
17 alias rm='nocorrect rm'
18
19 alias find='noglob find'
20 alias w3m='noglob w3m -no-mouse'
21 alias links='noglob links'
22 alias wb='noglob www-browser'
23 alias wget='noglob wget'
24 alias curl='noglob curl'
25 alias apt-cache='noglob apt-cache'
26 alias locate='noglob locate'
27
28 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)"
29 alias swget="noglob wget --user-agent='$USER_AGENT'"
30
31 typeset -a _ls_opts; _ls_opts=(-bC --color=auto)
32 command ls --group-directories-first >/dev/null 2>&1 \
33   && _ls_opts+=--group-directories-first
34 # I prefer POSIX collation for ls
35 alias ls="LC_COLLATE=POSIX ls $_ls_opts"
36
37 alias l='ls --time-style=+%Y%m%d.%H%M -gG'
38 alias ll='ls -l'
39 alias la='ls -a'
40 alias lla='ls -la'
41 alias lt='ls -lt'
42 alias lrt='ls -lrt'
43 alias lat='ls -lat'
44 alias lart='ls -lart'
45 # List only directories and symbolic links that point to directories
46 alias lsd='ll -d *(-/DN)'
47
48 alias lscontext=ls
49 cd () { __CHPWD_RUN_FIRST=lscontext && builtin cd "$@" && unset __CHPWD_RUN_FIRST }
50 #_cd_l() { ll }
51 #chpwd_functions+=_cd_l
52
53 # #183394
54 alias w='w|cat'
55
56 alias -g ND='*(/om[1])' # newest directory
57 alias -g NF='*(.om[1])' # newest file
58
59 alias egrep='egrep --color=auto -d skip'
60 alias fgrep='fgrep --color=auto -d skip'
61 alias grep='grep --color=auto -d skip'
62
63 alias mmv='noglob zmv -W'
64 alias zcp='zmv -C'
65 alias zln='zmv -L'
66 alias zgmv='zmv -p git-mv'
67
68 alias cal='cal -3'
69 alias ftp=lftp
70
71 alias mbug='bts show --mbox'
72 alias bug='BROWSER=www-browser bts show'
73
74 edalias() {
75   [[ -z "$1" ]] && { echo "Usage: edalias <alias_to_edit>" ; return 1 } || vared aliases'[$1]' ;
76 }
77 compdef _aliases edalias
78
79 edfunc() {
80   [[ -z "$1" ]] && { echo "Usage: edfunc <function_to_edit>" ; return 1 } || zed -f "$1" ;
81 }
82 compdef _functions edfunc
83
84 doc() { cd /usr/share/doc/$1 }
85 compdef '_files -W /usr/share/doc -/' doc
86
87 alias giti='git init && git add . && git commit -minitial\ checkin && git tag orig'
88 gbs() {
89   local branch; branch="$(git symbolic-ref -q HEAD)"; branch="${branch##*/}"
90   git config branch.${branch}.remote ${1:-origin}
91   git config branch.${branch}.merge refs/heads/${branch}
92   git config branch.${branch}.rebase true
93 }
94
95 if whence mtail >/dev/null; then
96   alias t=mtail
97 elif whence tailf >/dev/null; then
98   alias t=tailf
99 else
100   alias t='tail -f'
101 fi
102 compdef _files t
103
104 function ltail() { t ~log/$1 }
105 compdef '_files -W ~log' ltail
106
107 function lless() { sensible-pager ~log/$1 }
108 compdef '_files -W ~log' lless
109
110 alias tsl='ltail syslog'
111 alias lsl='lless syslog'
112 alias tml='ltail mail.log'
113 alias lml='lless mail.log'
114 alias tal='ltail auth.log'
115 alias lal='lless auth.log'
116 alias tdl='ltail daemon.log'
117 alias ldl='lless daemon.log'
118 alias tkl='ltail kern.log'
119 alias lkl='lless kern.log'
120
121 function lgrep() {
122   local pattern="$1"; shift
123   eval egrep "'$pattern'" "~log/${(j: ~log/:)@}"
124 }
125
126 alias px='ps afux'
127 alias mps='ps -ao user,pcpu,start,command'
128
129 function of() { lsof -np "$1" }
130 compdef _pids of
131
132 function psgrep() { ps aux | grep "[${1[1]}]${1[2,-1]}" }
133
134 alias bofh='fortune bofh-excuses'
135
136 autoload -U baseconv
137 alias b2d='baseconv 2 10'
138 alias d2b='baseconv 10 2'
139 alias d2h='baseconv 10 16'
140 alias h2d='baseconv 16 10'
141 alias d2o='baseconv 10 8'
142 alias d2o='baseconv 10 8'
143 alias h2b='baseconv 16 2'
144 alias b2h='baseconv 2 16'
145
146 alias sendmail=/usr/sbin/sendmail
147
148 _d() { dict $* }
149 d() { _d $* | sensible-pager }
150 the() { d -d moby-thesaurus $* }
151 typeset -A _LANGUAGES
152 _LANGUAGES[en]=eng
153 _LANGUAGES[de]=deu
154 _LANGUAGES[es]=spa
155 _LANGUAGES[fr]=fra
156 _LANGUAGES[it]=ita
157 _LANGUAGES[tn]=lat
158 for l0 in ${(k)_LANGUAGES}; do
159   for l1 in ${(k)_LANGUAGES}; do
160     eval "function _${l0}-${l1}() { _d -d fd-${_LANGUAGES[$l0]}-${_LANGUAGES[$l1]} \$* }"
161     eval "function ${l0}-${l1}() { d -d fd-${_LANGUAGES[$l0]}-${_LANGUAGES[$l1]} \$* }"
162   done
163 done
164 unset '_LANGUAGES[en]'
165 for l in ${(k)_LANGUAGES}; do
166   eval "function ${l}() { (_${l}-en \$*; _en-${l} \$*) | more }"
167 done
168 unset _LANGUAGES
169
170 alias dpkg-buildpackage="dpkg-buildpackage -k$DEBKEYID -rfakeroot"
171
172 bugsub() { echo X-debbugs-autosubscribe: madduck | sendmail -f $DEBEMAIL ${1:?No bug number}-subscribe@bugs.debian.org }
173 bugunsub() { sendmail -f $DEBEMAIL ${1:?No bug number}-unsubscribe@bugs.debian.org </dev/null }
174 ptssub() { echo subscribe ${1:?E: no package name given.} | sendmail -f ${2:-$DEBEMAIL} pts@qa.debian.org }
175 ptsunsub() { echo unsubscribe ${1:?E: no package name given.} | sendmail -f ${2:-$DEBEMAIL} pts@qa.debian.org }
176 qasub() { echo subscribe ${1:?E: no package name given.} ${2:-unspecifed} | sendmail -f $DEBEMAIL ddpo@qa.debian.org }
177 qaunsub() { echo unsubscribe ${1:?E: no package name given.} ${2:-unspecifed} | sendmail -f $DEBEMAIL ddpo@qa.debian.org }
178
179 uc() { unicode --max=0 --colour=off "$@" | sensible-pager }
180
181 alias ipr='ip r'
182 alias ipa='ip a'
183 alias ipl='ip l'
184
185 alias btd='btdownloadheadless'
186
187 alias mdtest='swaks -s localhost -t'
188
189 if whence devtodo >/dev/null; then
190   _devtodo_on_chpwd() {
191     local out; out="$(devtodo)"
192     [[ -n $out ]] && print "todo:\n$out"
193   }
194   [[ -z ${(M)chpwd_functions:#_devtodo_on_chpwd} ]] && chpwd_functions+=_devtodo_on_chpwd
195 fi
196
197 # vim:ft=zsh