# To find out the keynames you can use
#  | cat > /dev/null 
#  or
#  | od -c
#
# Some useful keybindings
#  | $ xterm -version
#  |   XFree86 4.3/OpenBSD 3.3(174)
#  | $ echo $TERM
#  |   xterm
#
#  bindkey "^Y"    yank                                # <STRG>-Y
#  bindkey "\e[3~" delete-char                         # Delete
#  bindkey '^[[7~' beginning-of-line                   # Home (xterm)
#  bindkey '^[[8~'  end-of-line                        # End (xterm)
#  bindkey '^[[5~'  history-beginning-search-backward  # Page Up
#  bindkey '^[[6~'  history-beginning-search-forward   # Page Down
#  bindkey '^[[2~' overwrite-mode                      # Insert
#  bindkey "^[[A"  up-line-or-search                   # <ESC>-N
#  bindkey "^[[B"  down-line-or-search                 # <ESC>-
#  bindkey "^Q"  edit-command-line                     # <STRG>-Q
#  bindkey " "     magic-space                         # ' ' (Space>
#  bindkey "^B"    backward-word                       # <STRG>-B
#  bindkey "^E"    expand-cmd-path                     # <STRG>-E
#  bindkey "^N"    forward-word                        # <STRG>-N
#  bindkey "^R"    history-incremental-search-backward # <STRG>-R
#  bindkey "^P"    quote-line                          # <STRG>-P
#  bindkey "^K"    run-help                            # <STRG>-K
#  bindkey "^Z"    which-command                       # <STRG>-Z
#  bindkey "^X"    what-cursor-position                # <STRG>-X
#  bindkey -v

case $TERM in
	xterm*)
	# Pos1 && End
	bindkey "^[[H" beginning-of-line
	bindkey "^[[F" end-of-line
	;;
	screen*)
	bindkey "^[[1~" beginning-of-line
	bindkey "^[[4~" end-of-line
	;;
	linux*)
	bindkey "^[[1~" beginning-of-line
	bindkey "^[[4~" end-of-line
	;;
	rxvt*)
	bindkey "^[[1~" beginning-of-line
	bindkey "^[[4~" end-of-line
	;;
	Eterm*)
	bindkey "^[[7~" beginning-of-line
	bindkey "^[[8~" end-of-line
	;;
esac
	bindkey "^[[2~" yank			# Einfg
	bindkey "^[[5~" up-line-or-history	# PageUp
	bindkey "^[[6~" down-line-or-history	# PageDown
	bindkey "^[e" expand-cmd-path		# C-e for expanding path of typed command
	bindkey "^[[A" up-line-or-search	# up arrow for back-history-search
	bindkey "^[[B" down-line-or-search	# down arrow for fwd-history-search
	bindkey " " magic-space			# do history expansion on space
	bindkey -v				# vi keybindings
	bindkey "\e[3~" delete-char		# "Entf" or "Del"
	bindkey "^[[A" history-search-backward	# PgUp
	bindkey "[B" history-search-forward	# PgDown
	bindkey "[C" forward-char		# ->
	bindkey "[D" backward-char		# <-
	bindkey "q" push-line			# Kill the *complete* line! (ESC+q)
	bindkey "^R" history-incremental-search-backward # Search in my $HISTFILE (STRG+R)
	bindkey "^[[2;5~" insert-last-word	# STRG+Einfg
	bindkey "a" accept-and-hold		# ESC+a
	bindkey "^B"  backward-word		# One word back
	bindkey "^N"  forward-word		# One word forward
	bindkey "^P" quote-line			# quote the whole line
	bindkey "^K" run-help			#  i. e. "run-help foo" == "man foo"
	bindkey -s "\C-t" "dirs -v\rcd ~"	# STRG+t
	bindkey "^I" expand-or-complete		# assimilable to "ls<TAB>"
	bindkey "^E" expand-cmd-path		# $ ls<STRG+E> == /bin/ls
	bindkey "^X" which-command		# <STRG>+Z == which foo
	bindkey " " my-expand-abbrev		# See ~/.zsh/zshmisc "/^myiabs" for details
	#--------------------------------------------------
	# # VI-like ;-)
	#   bindkey -M vicmd "^R" redo
	#   bindkey -M vicmd "u" undo
	#   bindkey -M vicmd "ga" what-cursor-position
	#   bindkey -M viins "^R" redisplay
	#   bindkey -M vicmd "^R" redisplay2
	#   bindkey "^L" clear-screen
	#   bindkey -M vicmd "A" vi-add-eol
	#   bindkey -M vicmd "a" vi-add-next
	#   bindkey "^Xl" screenclearx
	#   bindkey -M vicmd "c" vi-change
	#   bindkey -M vicmd "C" vi-change-eol
	#   bindkey -M vicmd "S" vi-change-whole-line
	#   bindkey -M vicmd "i" vi-insert
	#   bindkey -M vicmd "I" vi-insert-bol
	#   bindkey -M vicmd "O" vi-open-line-above
	#   bindkey -M vicmd "o" vi-open-line-below
	#   bindkey -M vicmd "s" vi-substitute
	#   bindkey -M vicmd "R" vi-replace
	#   bindkey -M viins "" vi-cmd-mode
	#   bindkey -M vicmd "g~" vi-oper-swap-case
	#-------------------------------------------------- 
#;;
#esac
