]> 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:

add function to create git test files
[etc/zsh.git] / .zsh / zshrc / 30_aliases
index 1f5f0a07963fb6a622bf9515334a1160334f1364..7d48c0a6aa50d0537705c71cd5754886ab146ee7 100644 (file)
@@ -45,7 +45,7 @@ alias lart='ls -lart'
 # List only directories and symbolic links that point to directories
 alias lsd='ll -d *(-/DN)'
 
-alias lscontext=l
+alias lscontext=ls
 cd () { __CHPWD_RUN_FIRST=lscontext && builtin cd "$@" && unset __CHPWD_RUN_FIRST }
 #_cd_l() { ll }
 #chpwd_functions+=_cd_l
@@ -53,6 +53,9 @@ cd () { __CHPWD_RUN_FIRST=lscontext && builtin cd "$@" && unset __CHPWD_RUN_FIRS
 # #183394
 alias w='w|cat'
 
+alias -g ND='*(/om[1])' # newest directory
+alias -g NF='*(.om[1])' # newest file
+
 alias egrep='egrep --color=auto -d skip'
 alias fgrep='fgrep --color=auto -d skip'
 alias grep='grep --color=auto -d skip'
@@ -68,12 +71,26 @@ alias ftp=lftp
 alias mbug='bts show --mbox'
 alias bug='BROWSER=www-browser bts show'
 
-# handy documentation lookup on Debian
-# from http://www.michael-prokop.at/computer/config/.zshrc
+edalias() {
+  [[ -z "$1" ]] && { echo "Usage: edalias <alias_to_edit>" ; return 1 } || vared aliases'[$1]' ;
+}
+compdef _aliases edalias
+
+edfunc() {
+  [[ -z "$1" ]] && { echo "Usage: edfunc <function_to_edit>" ; return 1 } || zed -f "$1" ;
+}
+compdef _functions edfunc
+
 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'
+gbs() {
+  local branch; branch="$(git symbolic-ref -q HEAD)"; branch="${branch##*/}"
+  git config branch.${branch}.remote ${1:-origin}
+  git config branch.${branch}.merge refs/heads/${branch}
+  git config branch.${branch}.rebase true
+}
 
 if whence mtail >/dev/null; then
   alias t=mtail
@@ -114,6 +131,13 @@ compdef _pids of
 
 function psgrep() { ps aux | grep "[${1[1]}]${1[2,-1]}" }
 
+alias rw-='chmod 600'
+alias rwx='chmod 700'
+alias r--='chmod 644'
+alias r-x='chmod 755'
+alias r-s='chmod 2755'
+alias rws='chmod 2775'
+
 alias bofh='fortune bofh-excuses'
 
 autoload -U baseconv
@@ -122,7 +146,9 @@ 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 d2o='baseconv 10 8'
+alias h2b='baseconv 16 2'
+alias b2h='baseconv 2 16'
 
 alias sendmail=/usr/sbin/sendmail
 
@@ -135,16 +161,16 @@ _LANGUAGES[de]=deu
 _LANGUAGES[es]=spa
 _LANGUAGES[fr]=fra
 _LANGUAGES[it]=ita
-_LANGUAGES[lt]=lat
+_LANGUAGES[tn]=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]} \$* }"
+    eval "function _${l0}-${l1}() { _d -d fd-${_LANGUAGES[$l0]}-${_LANGUAGES[$l1]} \$* }"
+    eval "function ${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 }"
+  eval "function ${l}() { (_${l}-en \$*; _en-${l} \$*) | more }"
 done
 unset _LANGUAGES
 
@@ -156,6 +182,8 @@ ptssub() { echo subscribe ${1:?E: no package name given.} | sendmail -f ${2:-$DE
 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 }
+listsub() { echo Subject: subscribe | sendmail -f ${1%@*}=${1#*@}@mass.madduck.net ${1%@*}-request@${1#*@} }
+listunsub() { echo Subject: unsubscribe | sendmail -f ${1%@*}=${1#*@}@mass.madduck.net ${1%@*}-request@${1#*@} }
 
 uc() { unicode --max=0 --colour=off "$@" | sensible-pager }
 
@@ -165,6 +193,9 @@ alias ipl='ip l'
 
 alias btd='btdownloadheadless'
 
+function asc () { autossh -t "$@" 'screen -qxp= || screen -qdRR' }
+compdef asc=ssh
+
 alias mdtest='swaks -s localhost -t'
 
 if whence devtodo >/dev/null; then
@@ -175,4 +206,44 @@ if whence devtodo >/dev/null; then
   [[ -z ${(M)chpwd_functions:#_devtodo_on_chpwd} ]] && chpwd_functions+=_devtodo_on_chpwd
 fi
 
+pdfextract() {
+  local i=$1
+  local o=$2
+  shift 2
+  pdftk "$i" cat "${@:-1-end}" output "${o%.pdf}.pdf"
+}
+compdef _files pdfextract
+
+gittestfile() {
+  local annex; annex=false
+  local file
+
+  case "$1" in
+    (-a) annex=true;;
+    (*)
+      if [ -n "$file" ]; then
+        echo >&2 "E: filename already given"
+        return 1
+      fi
+      file="$1";;
+  esac
+
+  if [ -z "$file" ]; then
+    file=$(TMPDIR=${PWD} tempfile -ptest. -s.txt)
+  fi
+
+  echo "Test file created $(date)" >| $file
+
+  case "$annex" in
+    true)
+      git annex add $file
+      git commit -m"Add test file $file to annex"
+      ;;
+    false)
+      git add $file
+      git commit -m"Add test file $file"
+      ;;
+  esac
+}
+
 # vim:ft=zsh