Thanks, i seems to know what's happening. However, why vim(or Windows?) doesn't make a mapping as follow?
ASCII-----------------Latin1 Ctrl+0x20 -------> 0x80 Ctrl+0x21 -------> 0x81 ........... Ctrl+0x3F -------> 0x9F And if so, both Ctrl+digit and Alt+digit can work. Is 0x80~0x9F occupied by Ctrl+Alt+'x'? Regards, -William On Tue, Jun 15, 2010 at 5:06 PM, Tony Mechelynck <[email protected]> wrote: > On 15/06/10 06:49, William Fugy wrote: >> >> Hi list, >> >> Does anyone know why the following mapping can't work, and how to make >> it enable? >> >> " Windows Vista + gVim V7.2 >> :map<C--> <C-W>w- >> :map<C-=> <C-W>w+ >> >> ':map<C-->/<C-=>' and ':verbose map<C-->/<C--=>', it's OK. i.e. >> it's in the map list and hasn't been modified by others map. >> >> ------------------------------------------ >> i tried any<C+Numeric key>, in main keyboard not in keypad, none >> could work except<C-6>(interior map by gVim self). >> While mapping<A-1>,<A-2>....<A-=>, all of them can work. >> >> >> Regards, >> -William >> > > Because, in ASCII, they are not defined. > > What you get when you hit Ctrl and 6 together is probably not Ctrl-6 (which > is not defined) but Ctrl-^ (which is defined as 0x1E). > > The only Ctrl+printable keys defined by ASCII (and therefore known by Vim) > are the following: > > - Ctrl-? (control + Question-mark) is 0x7F (aka DEL) > - If X is in the range 0x40 to 0x5F (including all uppercase letters and 6 > non-alphabetic characters) then Ctrl-X = X - 0x40 (eks minus hex-40) > - If x is a lowercase letter, then Ctrl-x is the same as Ctrl+ upcase(x) > > That's all. The digits are 0x30 to 0x39 so they aren't included in any of > the above cases, and Ctrl+digit is not defined. > > OTOH, if X is in the range 0x00 to 0x7F, Alt+x is x + 0x80. This means that > every 7-bit ASCII character has an Alt counterpart in the upper half of the > Latin1 character set. However, it also means that if you use accented > letters, you should avoid using Alt+something as the {lhs} of an Insert-mode > mapping. For example, to Vim, é (small-e-acute) is the same as Alt-i (Alt > with small-i), so if you map Alt-i to do something, Vim will also do it when > you hit é (similarly, see above paragraphs, for Tab and Ctrl-I, Esc and > Ctrl-[, Enter and Ctrl-M). > > Note that the Alt modifier is case-sensitive while the Ctrl modifier isn't. > > > Best regards, > Tony. > -- > For a man to truly understand rejection, he must first be ignored by a > cat. > -- 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
