On 24/06/11 17:24, Andrew Neil wrote:
Suppose I was to type the following:

     qq
     oHello, Wordl!<BS><BS><BS>ld!<Esc>
     q

For the purposes of illustration here, I'm using<BS>  to stand for the backspace
key, and<Esc>  to stand for the escape key. Now, if I put the contents of the
'q' register into the document (e.g. `:put q`), it looks like this:

     oHello, wordl!<80>kb<80>kb<80>kbld!

It looks like Vim saves the actual key codes, so instead of the<Esc>  notation I
get ^[. That much is clear, but I'm confused by the key code for the backspace
key:<80>kb. The<80>  looks like four separate characters, but it's just a
single character. If I place my cursor on it and press `ga`, it reveals the
following info:

     <Â<80>>  128, Hex 0080, Octal 200

What is this character? And how does<80>kb relate to the backspace key?

Thanks,
Drew


<80> (or 0x80 or maybe U+0080) is a control character, internally used by gvim to herald some pseudo-key-sequences specific to its internal workings. It is defined in Latin1 and Unicode as a "control character" with no further specification.

My first hypothesis was that <80>kb is gvim's internal code for the t_kb termcap code for the "builtin-gui" terminal; this hypothesis is hard to check in gvim because there the output of ":set termcap" doesn't include key codes such as t_kb, and ":set t_kb?" returns E846: Keycode not set.

However, even in console mode (with 'term' set to "xterm" and 't_kb' set to Ctrl-?) recording a <BS> key still gives me <80>kb

So my second hypothesis is that <80>kb is an internal code used by Vim after termcap translation to mean "at this point in the input stream the key corresponding to the t_kb termcap code was used".

See
        :help 't_kb'


Best regards,
Tony.
--
Murphy's Law is recursive.  Washing your car to make it rain doesn't
work.

--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Reply via email to