In accordance with terminal standards, my terminal sends modified Unicode that doesn't have any other representation (such as Ctrl-Shift-P) using CSI u encoding; for example
<C-S-P> == CSI 80;5 u Unfortunately vim doesn't understand this, getting as far as the Escape part of the CSI, treating it as Esc [ 80 ; 5 u causing vim to leave insert mode, start a [ movement that's then aborted, then undo the previous 5 changes. Not helpful. Currently I have something of a bit of a hack in my .vimrc to handle a few of the more common ones by programatically generating a large list of map/imap commands; for example, the handler for Space: <Esc>[32;8u <C-S- > <Esc>[32;7u <C- > <Esc>[32;6u <C-S-Space> <Esc>[32;5u <C-Space> <Esc>[32;4u <S- > <Esc>[32;3u <Esc>[32;2u <S-Space> However, I believe we can all agree this is unsustainable, as I don't want to have to store a map and an imap command 7 times for each of the ~60-odd Unicode keys I could type. Instead does anyone have a better idea here? -- Paul "LeoNerd" Evans [email protected] ICQ# 4135350 | Registered Linux# 179460 http://www.leonerd.org.uk/
signature.asc
Description: PGP signature
