Sorry Ben

This is my first time joining a discussion, I had a hard time just to
open an account and send my suggestion. I use the default reply
function and I don't mean to upset anyone. Hopefull now this reply is
well-edited (I removed the quote).

About vim, I misunderstood that it was a keyboard problem. As Bram
said it is internally set as <CTRL-I> = <Tab> and people requesting
having structured input mechanism, all I can think of is to break
apart all internal linkages and revert to the their original settings:

I found that <CTRL-M> and <Enter> both have the same keymap code 0x0d,
and both <Tab> and <CTRL-I> gives 0x09, maybe that is why vim gives
the same output.

How about checking the Scan Codes directly?

<Enter> = 1c 9c
<L-CTRL> = 1d 9d
<M> = 32 b2

<Tab> = 0f 8f
<L-CTRL> = 1d 9d
<I> = 17 97


A shortcut table could be made to map between <Enter> and <L-CTRL>
+<M>, and load when vim starts.


So the new process would be:

detecting Scan Codes --> map between Scan Codes to alias like
"<Enter>" or "<Tab>"

Different keyboards from different countries maybe need different Scan-
Codes-to-alias mapping layouts, and therefore many layout files.

I know it is more complicated than getting the keycode conveniently
from the system, but this is all I know to my understanding.


About Paul's type:

>  Tab                      { 1, 0, KEY_TAB }
>  Ctrl-I                   { 0, MOD_CTRL, 'i' }
>  Ctrl-Shift-I             { 0, MOD_CTRL, 'I' }

I see is a switch type setting, it should work and require less
changes but I really don't know how to differentiate if it is
systemwise that <Tab> and <CTRL-I> gives the same 0x09.


Also about your question:

> When there is one. Or a codepoint in some encoding. Yeah, your struct
> does allow for that. The struct isn't inexpressive, it's just that it's
> big, and if it needs to be used in a LOT of places (which seem to just
> be increasing...input queue, mappings, registers, strings, buffers?!),
> suddenly not just one thing is getting a bit bigger--a lot of things are
> getting bigger--potentially a lot bigger! If every time you yank text
> into a register it gets 12 times larger, that may cause some problems!

Is it possilbe to swap those registers and histories onto hard disk so
as to control the memory size? It has advantages of large capacity,
infinite undo, and can be called to check the complete list.

Sorry again if I gave useless suggestions.

Stephen

-- 
You received this message from the "vim_dev" 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

Raspunde prin e-mail lui