+## another approach for global aliases: cloning vim's abbreviation feature {{{
+# http://zshwiki.org/home/examples/zleiab
+# typeset -A abbreviations
+# abbreviations=(
+# "Im" "| more"
+# "Ia" "| awk"
+# "Ig" "| grep"
+# "Ieg" "| egrep"
+# "Iag" "| agrep"
+# "Igr" "| groff -s -p -t -e -Tlatin1 -mandoc"
+# "Ip" "| $PAGER"
+# "Ih" "| head"
+# "Ik" "| keep"
+# "It" "| tail"
+# "Is" "| sort"
+# "Iv" "| ${VISUAL:-${EDITOR}}"
+# "Iw" "| wc"
+# "Ix" "| xargs"
+# )
+#
+# magic-abbrev-expand() {
+# local MATCH
+# LBUFFER=${LBUFFER%%(#m)[_a-zA-Z0-9]#}
+# LBUFFER+=${abbreviations[$MATCH]:-$MATCH}
+# zle self-insert
+# }
+#
+# no-magic-abbrev-expand() {
+# LBUFFER+=' '
+# }
+#
+# zle -N magic-abbrev-expand
+# zle -N no-magic-abbrev-expand
+# bindkey " " magic-abbrev-expand
+# bindkey "^x " no-magic-abbrev-expand
+# }}}
+