#
# This script makes an attempt to simulate vi keybindings using the
# ^E sticky keybinding.  Who knows how successful I will be...
# This is very much a work in progress.  Not every vi keybinding maps
# nicely to an ircII keybinding.  Some of these new keybindings can just
# as well be added to epic, some of them may never be.  Suggestions for
# improvements are always welcome.
#

bind ^E ^E
bind ^E0 BEGINNING_OF_LINE
bind ^E$$ END_OF_LINE
bind ^Ew FORWARD_WORD
bind ^EW FORWARD_WORD
bind ^Eb BACKWARD_WORD
bind ^EB BACKWARD_WORD
#bind ^Ee <end of current word>
#bind ^EE <end of current word>
bind ^Ea parse_command {
	parsekey FORWARD_CHARACTER
	# Insert mode?
}
bind ^EA parse_command {
	parsekey END_OF_LINE
	# Insert mode?
}
#bind ^Er <overwrite mode>
#bind ^ER <delete line -- overwrite mode -- ^E>
bind ^Ep YANK_FROM_CUTBUFFER
bind ^Ex DELETE_CHARACTER
bind ^EX BACKSPACE

#bind ^Ey <???>
#bind ^EY <???>
#bind ^Ei <insert-mode>
#bind ^EI <start-of-line + insert-mode>

bind ^Eh BACKWARD_CHARACTER
bind ^El FORWARD_CHARACTER
bind ^Ek BACKWARD_HISTORY
bind ^Ej FORWARD_HISTORY

#bind ^Eu <Undo -- not possible>
#bind ^EU <Undo -- not possible>

#bind ^Ecw <delete word -- insert mode>
#bind ^EcW <delete word -- insert mode>
#bind ^Ecb <delete to start-of-word -- insert mode>
#bind ^EcB <delete to start-of-word -- insert mode>
#bind ^Ec$$ <delete to end-of-line -- insert mode>
#bind ^EC <delete to end-of-line -- insert mode>
#bind ^Ec0 <delete to start-of-line -- insert mode

bind ^Edd ERASE_LINE
bind ^ED ERASE_TO_END_OF_LINE
#bind ^Edw <delete word>
#bind ^EdW <delete word>
#bind ^Edb <delete to start of word>
#bind ^EdB <delete to start of word>
#bind ^Ed$$ <delete to end of line>
#bind ^Ed0 <delete to start of line>

#hop'y2k
