Remapping keys in iterm2
Those hex codes are just sequences of bytes. For example mapping a key combination to 0x66 0x6f 0x6f would make it insert foo. 0xc3 0xa4 would insert ä if you use UTF-8. 0x1b 0x1b 0x5b 0x43 means escape escape [ C.

Some sequences of bytes like ANSI escape sequences and even single bytes like ASCII control characters have special meanings in terminals.

To make ⌘← and ⌘→ go to the beginning and end of line, you can assign them to 0x01 (^A in caret notation) and 0x05 (^E in caret notation):


⌘←: Send Hex Codes: 0x01
⌘→: Send Hex Codes: 0x05


You can make ⌥⌦ delete a word forward by assigning it to \ed:


⌥⌦: Send ^[ d


Changing ⌥← and ⌥→ to \eb and \ef in iTerm's preferences would also change them in programs that don't support readline or emacs-style keybindings. Another option is to add this to ~/.inputrc:

"\e\e[D": backward-word
"\e\e[C": forward-word


You can run read and press key combinations to see what characters they insert. For example ⌥← inserts ^[^[[D by default, where ^[ is escape in caret notation.

See also http://code.google.com/p/iterm2/wiki/Keybindings.