The decent keyboard layout discussion thread matrix
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
Since everyone and their dog (myself included) is making a keyboard or remapping one, I felt a dire need for a thread dedicated to discussing the 'essentially perfect' layout.
Where do the modifiers go, how many do you envision being essential, how many keys/symbols can go to other layers, etc.
This is not supposed to be about the Alpha's, thus leaving the actual layouts (like ADNW, NEO, Workman, Dvorak, Qwerty, etc) out of the equation.
Ofcourse there are a lot of preferences playing parts as well, some might prefer a proverbial shit-ton of keys, while others might prefer as few keys as they can get away with (practically; for aesthetic or ergonomic reasons), some people practice languages that require many more symbols than others, but for the sake of fake universality, let's keep this to people mainly utilizing the english language, but with a nack for programming.
Another quite important subject in this regard is the implementation aspect; how the heck is anyone supposed to make this layout into a simple 'appliance' needing very little to none in the way of configuration and installation, on basically all O/Ss.
To complicate matters I'll mention this: while it appears Autohotkey could perhaps do remaps in a roundabout way allowing a key to have another key's shift-character moved to it, that would require an external application that will most probably not be allowed in working environments.
In practice, without extra software, Windows (and, uninformed bet, the same goes for Unix/BSD) can only remap from one key to another in full; this goes for the firmware driving boards attached to those systems as well.
I, and probably a lot of others, have spent buckets of their time on thinking about things like these, and probably most of that work has not made it to the interwebz; this is hoping to change that, get the discussion that raves in our heads public.
Where do the modifiers go, how many do you envision being essential, how many keys/symbols can go to other layers, etc.
This is not supposed to be about the Alpha's, thus leaving the actual layouts (like ADNW, NEO, Workman, Dvorak, Qwerty, etc) out of the equation.
Ofcourse there are a lot of preferences playing parts as well, some might prefer a proverbial shit-ton of keys, while others might prefer as few keys as they can get away with (practically; for aesthetic or ergonomic reasons), some people practice languages that require many more symbols than others, but for the sake of fake universality, let's keep this to people mainly utilizing the english language, but with a nack for programming.
Another quite important subject in this regard is the implementation aspect; how the heck is anyone supposed to make this layout into a simple 'appliance' needing very little to none in the way of configuration and installation, on basically all O/Ss.
To complicate matters I'll mention this: while it appears Autohotkey could perhaps do remaps in a roundabout way allowing a key to have another key's shift-character moved to it, that would require an external application that will most probably not be allowed in working environments.
In practice, without extra software, Windows (and, uninformed bet, the same goes for Unix/BSD) can only remap from one key to another in full; this goes for the firmware driving boards attached to those systems as well.
I, and probably a lot of others, have spent buckets of their time on thinking about things like these, and probably most of that work has not made it to the interwebz; this is hoping to change that, get the discussion that raves in our heads public.
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
The 'matrix' in the title is hinting at this: although I've never typed on one, and getting used to it will probably take a bit, it's what I wanna make; and it's what seems most ergonomic imho.
So I'll post an example pic of a minimal layout, post your takes on what keys should have what functions in what layers, and why, and through which layerswitch keys, positioned where. Ofcourse this example has the challenges of not being full-width, hence needing to put
somewhere!
Note that the arrow keys at the bottom are not meant as such, they just fit there; and I do think the left to right order might be nice, just somewhere else; like on 'JKL;' for instance.
Ofcourse a truly proper layout would include Multimedia keys and a Numerical pad as well.
And personally I feel (as apparent from the jpg) a symmetrical layout would be awesome, but very tricky to accomplish seeing how that would need even more layers to make sure everything is accessible from both the left and right sides; slightly further diminished in feasibility by 'being used to' type the letters with a certain finger from a certain hand.
Also note that this is meant as a split board; again, this is a compromise as well, seeing how another row would perhaps be better for thumb-use, but this keeps it compact while still providing quite a few keys (and when actually split, another key towards the middle for the thumbs, one on each side (under B for right, under N for left), would be nicer, yet limiting).
So I'll post an example pic of a minimal layout, post your takes on what keys should have what functions in what layers, and why, and through which layerswitch keys, positioned where. Ofcourse this example has the challenges of not being full-width, hence needing to put
Code: Select all
up
down
left
right
' & "
\ & |
- & _
= & +
pg_up
pg_dn
home
end
` & ~
(insert)
delete
backspace
tab
enter
ctrl
alt
(alt-gr)
win
menu
F1 to F12
Note that the arrow keys at the bottom are not meant as such, they just fit there; and I do think the left to right order might be nice, just somewhere else; like on 'JKL;' for instance.
Ofcourse a truly proper layout would include Multimedia keys and a Numerical pad as well.
And personally I feel (as apparent from the jpg) a symmetrical layout would be awesome, but very tricky to accomplish seeing how that would need even more layers to make sure everything is accessible from both the left and right sides; slightly further diminished in feasibility by 'being used to' type the letters with a certain finger from a certain hand.
Also note that this is meant as a split board; again, this is a compromise as well, seeing how another row would perhaps be better for thumb-use, but this keeps it compact while still providing quite a few keys (and when actually split, another key towards the middle for the thumbs, one on each side (under B for right, under N for left), would be nicer, yet limiting).
Last edited by off on 20 Jun 2012, 13:36, edited 1 time in total.
-
- Location: France
- DT Pro Member: -
You choose to go the non staggered route !
I'm not sure yet if I'm ready to go into this route, so for now I'll keep everything staggered.
Here is mine
F1 to F12 would be from esc till 0, print sceen, scroll lock and pause will be on the next 3 keys (including backspace)
And home and end of document will replace pageup and pagedown if you use the FN key.
PRG1 to PRG4 are used for macros or other usefull keys, I have not decided yet.
The arrows will be centered in the gap they can use ! I only saw it afterwards and am to lazy to change it.
del/insert/pageup/pagedown might be subject to swaps.
I'm not sure yet if I'm ready to go into this route, so for now I'll keep everything staggered.
Here is mine
F1 to F12 would be from esc till 0, print sceen, scroll lock and pause will be on the next 3 keys (including backspace)
And home and end of document will replace pageup and pagedown if you use the FN key.
PRG1 to PRG4 are used for macros or other usefull keys, I have not decided yet.
The arrows will be centered in the gap they can use ! I only saw it afterwards and am to lazy to change it.
del/insert/pageup/pagedown might be subject to swaps.
- Attachments
-
- mylayout.png (18.08 KiB) Viewed 12947 times
- Icarium
- Location: Germany
- Main keyboard: These fields just
- Main mouse: opened my eyes
- Favorite switch: I need to bring stuff to work
- DT Pro Member: -
Throw out one column and one row. Judging by my Kinesis at least the top left and top right get pretty hard to reach. If you use another layer (and there are plenty of modifiers to dot that) you should have enough Keys anyway.
But let's start in a more structured way. By counting keys.
Now my 122key M obviously has 122 key
the datahand has 50, 5 per finger
my Kinesis has 6 in each thumb cluster and 28 in each well and 18 of those shitty rubber keys. total: 86
...
what do we need?
10 digits,
26 + X letters (another 4 for German, I mostly use us layout and make due, though),
32 signs (+=!@#$%^&*()_-|\"':;?/>.<,}]{[~`),
3 whitespaces (tab, space, enter),
6 modifiers (shift, alt, altgr, ctrl, windows, windowscontext),
4 arrows,
6 in the edit cluster (pgup, pgdn, delete, insert, home, end)
3 oldschool (printscreen, scroll lock, pause) supremely useless except for sysrq magic
2 other (backspace, escape)
12 function keys
total: 105
Intentionally left out:
extra modifiers for layer switching
repetitions
What did I miss, where did I miscount?
But let's start in a more structured way. By counting keys.

Now my 122key M obviously has 122 key
the datahand has 50, 5 per finger
my Kinesis has 6 in each thumb cluster and 28 in each well and 18 of those shitty rubber keys. total: 86
...
what do we need?
10 digits,
26 + X letters (another 4 for German, I mostly use us layout and make due, though),
32 signs (+=!@#$%^&*()_-|\"':;?/>.<,}]{[~`),
3 whitespaces (tab, space, enter),
6 modifiers (shift, alt, altgr, ctrl, windows, windowscontext),
4 arrows,
6 in the edit cluster (pgup, pgdn, delete, insert, home, end)
3 oldschool (printscreen, scroll lock, pause) supremely useless except for sysrq magic
2 other (backspace, escape)
12 function keys
total: 105
Intentionally left out:
extra modifiers for layer switching
repetitions
What did I miss, where did I miscount?
Last edited by Icarium on 20 Jun 2012, 14:16, edited 1 time in total.
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
Good luck pressing (fn+)ctrl+shift+home on yours!Djuzuh wrote:You choose to go the non staggered route !
I'm not sure yet if I'm ready to go into this route, so for now I'll keep everything staggered.
F1 to F12 would be from esc till 0, print sceen, scroll lock and pause will be on the next 3 keys (including backspace)
And home and end of document will replace pageup and pagedown if you use the FN key.

And personally I'm still hesitant to shift the F-keys on the number row; it'll be hard to explain or master having F3 on 1 for example; but with the little space I'm granting myself in my pic, I'll need to do either that or have F11/12 on another row.
Incidentally, what app did you use to make that mockup?
Regarding the staggered/matrix/equistaggered; I've always been irked by the false stagger that has become standard.. the half-step-stagger as is used on some tipros might be nice, but again, not tried it; and when breaking with the mold I wanna do it good.

@Ica; what you missed out on are the F-keys, the modifiers that enable using less keys for the same result, the 'lock' keys, the printscreen and pause/break keys, and possibly the multimedia keys and integrated numpad.
92+ 12 func+ 3 locks+ 2 print/break+ 2/4 fn-mods +17 numpad (single functions, none of the extras needed again)
AND ofcourse modifiers on both sides... as space and perhaps enter and backspace.
@djuz; good question

Last edited by off on 20 Jun 2012, 14:12, edited 1 time in total.
-
- Location: France
- DT Pro Member: -
I never ever used ctrl shift home, so heh !
Also, I have 4 programmable buttons, if I ever need to do something that strange on a regular basis.
And about the Fkeys, I don't think it'll be hard.
EDIT: I used kolourpaint ( a paint like program on linux), and a layout I found on google images.
Also, I have 4 programmable buttons, if I ever need to do something that strange on a regular basis.
And about the Fkeys, I don't think it'll be hard.
EDIT: I used kolourpaint ( a paint like program on linux), and a layout I found on google images.
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
ha, used the same lame method as I did then; just moving selections around, no advanced layering nor (vector)objects probably.
Re: F-keys, think about it, hitting F7 requires you to tap Fn+5... is that logical, will you remember not to look at the board?
ctrl+shift+home gets you from where you are to the start of the text while selecting, pretty useful.
Re: F-keys, think about it, hitting F7 requires you to tap Fn+5... is that logical, will you remember not to look at the board?
ctrl+shift+home gets you from where you are to the start of the text while selecting, pretty useful.
- Icarium
- Location: Germany
- Main keyboard: These fields just
- Main mouse: opened my eyes
- Favorite switch: I need to bring stuff to work
- DT Pro Member: -
I was talking to off, but purely from an ergonomic perspective.Djuzuh wrote:Icarium: who are you talking to when you say to throw out one column and one row?
off wrote: @Ica; what you missed out on are the F-keys, the modifiers that enable using less keys for the same result, the 'lock' keys, the printscreen and pause/break keys, and possibly the multimedia keys and integrated numpad.
*editing*
How many multimedia keys are there? volup, voldn, play, stop, prev, next? 6?
I left out the locking keys because I consider them duplicates, I didn't count duplicates that's why I didn't double count the digits for an integrated numpad.
The extra modifiers I didn't count because we don't know how many we'll need/want without knowing how many layers we need.
- Icarium
- Location: Germany
- Main keyboard: These fields just
- Main mouse: opened my eyes
- Favorite switch: I need to bring stuff to work
- DT Pro Member: -
...You don't have to press control for that, do you?off wrote: ctrl+shift+home gets you from where you are to the start of the text while selecting, pretty useful.
But the point stands, there are some pretty obscure combinations for some programs and depending on the programs you use keeping them easily accessible will be quite a challenge.
-
- Location: France
- DT Pro Member: -
off wrote:ha, used the same lame method as I did then; just moving selections around, no advanced layering nor (vector)objects probably.
Re: F-keys, think about it, hitting F7 requires you to tap Fn+5... is that logical, will you remember not to look at the board?
ctrl+shift+home gets you from where you are to the start of the text while selecting, pretty useful.
I could put them on the right numbers, but then I'll have to use only printscreen(on backspace) from the 3 other keys. Which is fine actually, as I never use the 2 others.
-
- Location: France
- DT Pro Member: -
Icarium wrote:...You don't have to press control for that, do you?off wrote: ctrl+shift+home gets you from where you are to the start of the text while selecting, pretty useful.
But the point stands, there are some pretty obscure combinations for some programs and depending on the programs you use keeping them easily accessible will be quite a challenge.
This is why I've 4 extra keys, you never know.
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
So you consider 5 rows too much? and only 6 collumns per hand too many as well?
Perhaps you're right, but I can't quite see it; how awkward is it to hit enter or backspace..
On second thought, you might be correct w.r.t. the top-left and top-right corner on those respective hands, but seeing how those keys can be delegated to less used functions (move backspace and esc for instance), it could be decent. I don't agree on the bottom-outer corners being hard to reach though; the regular CTRL spot is pefect for holding down while still allowing you to hit most of the other keys, in combination with shift less so, so a shift next to space would work for that.
Multimedia keys, personally I'd say at least around 24; Prev, Next, VolUp, VolDown, PlayPause, Stop, FWD, RWD, VolMute, Kill/Run, and a set each for audio and video, and ofcourse MainVolume up/down/mute; and I really prefer having a way to search and queue on the fly as well; but seeing how that requires a separate display or overlay anyhow, that can be left aside.
And counting duplicates is quite essential to the equation I'd say, although ofcourse tricky; the extra FN modifiers are indeed a variable still.
@ica's remark, nope; try it, edit a post (or any text document) and hit shift+home; jumps to the start of the line, not the entire text field (Windows).
Perhaps you're right, but I can't quite see it; how awkward is it to hit enter or backspace..
On second thought, you might be correct w.r.t. the top-left and top-right corner on those respective hands, but seeing how those keys can be delegated to less used functions (move backspace and esc for instance), it could be decent. I don't agree on the bottom-outer corners being hard to reach though; the regular CTRL spot is pefect for holding down while still allowing you to hit most of the other keys, in combination with shift less so, so a shift next to space would work for that.
Multimedia keys, personally I'd say at least around 24; Prev, Next, VolUp, VolDown, PlayPause, Stop, FWD, RWD, VolMute, Kill/Run, and a set each for audio and video, and ofcourse MainVolume up/down/mute; and I really prefer having a way to search and queue on the fly as well; but seeing how that requires a separate display or overlay anyhow, that can be left aside.
And counting duplicates is quite essential to the equation I'd say, although ofcourse tricky; the extra FN modifiers are indeed a variable still.
@ica's remark, nope; try it, edit a post (or any text document) and hit shift+home; jumps to the start of the line, not the entire text field (Windows).
- Icarium
- Location: Germany
- Main keyboard: These fields just
- Main mouse: opened my eyes
- Favorite switch: I need to bring stuff to work
- DT Pro Member: -
Afaik can tell there are 7, I missed MUTE. The others simply don't exist. There may be ways to fake them and it would be possible by writing your own keyboard driver I suppose. Since the functionality is quite specific and you don't really have to "type" on these keys you could just put them on a another board.off wrote: Multimedia keys, personally I'd say at least around 24; Prev, Next, VolUp, VolDown, PlayPause, Stop, FWD, RWD, VolMute, Kill/Run, and a set each for audio and video, and ofcourse MainVolume up/down/mute; and I really prefer having a way to search and queue on the fly as well; but seeing how that requires a separate display or overlay anyhow, that can be left aside.
Yeah, but if I have an integrated numpad why do I even need the numbers somewhere else?off wrote: And counting duplicates is quite essential to the equation I'd say, although ofcourse tricky; the extra FN modifiers are indeed a variable still.
True but at some point it's just easier to use a mouse anyway. Coming from a vim user that has to count for something.off wrote: @ica's remark, nope; try it, edit a post (or any text document) and hit shift+home; jumps to the start of the line, not the entire text field (Windows).

I think the problem with layouts is that people can't agree on what they want. ;D
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
Correct+agreed.Icarium wrote:Afaik can tell there are 7, I missed MUTE. The others simply don't exist.
you could just put them on a another board.
I'm thinking you're quoting the wrong thing, but I'll respons to your line; because for instance in game you'll 'need' acces to the 1-5 keys with a single hit of your left hand, while a numpad would presumably go on your right hand to keep with muscle memory.icarium wrote:Yeah, but if I have an integrated numpad why do I even need the numbers somewhere else?off wrote: And counting duplicates is quite essential to the equation I'd say, although ofcourse tricky; the extra FN modifiers are indeed a variable still.
True but at some point it's just easier to use a mouse anyway. Coming from a vim user that has to count for something.off wrote:shift+home; jumps to the start of the line, not the entire text field (Windows).


- Icarium
- Location: Germany
- Main keyboard: These fields just
- Main mouse: opened my eyes
- Favorite switch: I need to bring stuff to work
- DT Pro Member: -
Well, 1-5 in games... here we are again with the challenging problems
If you're playing doom actually you'll need 6-9 as well and those are on the other half of your, now split, board.
I don't really think it's possible to solve this in a general way and still change the layout. If you go down this road a lot of things are going to require extra work. :/
If you're playing doom actually you'll need 6-9 as well and those are on the other half of your, now split, board.
I don't really think it's possible to solve this in a general way and still change the layout. If you go down this road a lot of things are going to require extra work. :/
- suka
- frobiac
- Location: Germany
- Main keyboard: custom split ergonomic "RedTilt"
- Main mouse: IBM trackpoint
- Favorite switch: MX red
- DT Pro Member: 0046
With my custom split board I utilize thumbkeys a lot and find it quite easy to use after a while: Especially having frequently used keys like space and the outmost pinky columns on them is great! In addition, since all modifiers are also on the thumbs I could effectively go with two 4x5 matrices in my next design.
Must admit, though, that I'm not into gaming, and have optimized my development habits so I rarely need the Fx-row, but can understand not everyone may be able to sacrifice these keys. And should I need any combination more often I can always resort to programming a macro if it was to clumsy to type.
Custom AdNW layout (adnw.de, only in German) with 3rd and 4th layer from neo-layout.org :
Modifiers in thumb row have an alternate key if toggled without any other key being pressed, making the outer columns effectively obsolete
L1 = Backspace / Shift
L2 = Return / 3rd layer Neo ( programmers heaven )
L3 = 4th layer Neo ( Navigation keys, numblock )
L4 = F-x keys and umlaut layer
R2 = Tab / Ctrl
R4 = Esc / Alt
Mac= Macro mode
Must admit, though, that I'm not into gaming, and have optimized my development habits so I rarely need the Fx-row, but can understand not everyone may be able to sacrifice these keys. And should I need any combination more often I can always resort to programming a macro if it was to clumsy to type.
Code: Select all
+---+ +---+
+---| Q |---+---+ +---+---| C |---+
| U |---| . | J | | V | G |---| L |
+---+---+---| E |---+---+ +---+---| R |---+---+---+
|Esc| K | I |---| A | O | | D | T |---| N | F | BS|
+---+---+---| - |---+---+ +---+---| W |---+---+---+
|Tab| H | Y |---| , | / |---+ +---| B | P |---| M | S |Ret|
+---+---+---+---+---+---+Mac| | +---+---+---+---+---+---+
| " | X |Win|R4 |R2 |Spa|---+ +---| L1| L2| L4|AGr| Z | |
+---+---+---+---+---+---+R3 | | L3+---+---+---+---+---+---+
+---+ +---+
Custom AdNW layout (adnw.de, only in German) with 3rd and 4th layer from neo-layout.org :
Modifiers in thumb row have an alternate key if toggled without any other key being pressed, making the outer columns effectively obsolete
L1 = Backspace / Shift
L2 = Return / 3rd layer Neo ( programmers heaven )
L3 = 4th layer Neo ( Navigation keys, numblock )
L4 = F-x keys and umlaut layer
R2 = Tab / Ctrl
R4 = Esc / Alt
Mac= Macro mode
- suka
- frobiac
- Location: Germany
- Main keyboard: custom split ergonomic "RedTilt"
- Main mouse: IBM trackpoint
- Favorite switch: MX red
- DT Pro Member: 0046
The other layers 3 and 4 in their original form can be seen on http://www.neo-layout.org by hovering over the headers of the image shown there. I only modified some codes I never use anyways or already have on my main layer.
I used a teensy-2.0++ when I started, but have switched to the smaller 2.0 one now - it still has more than enough pins for a PS/2 trackpoint in addition to my 6x8 matrix.
I used a teensy-2.0++ when I started, but have switched to the smaller 2.0 one now - it still has more than enough pins for a PS/2 trackpoint in addition to my 6x8 matrix.
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
Cheers for coming in, was hoping you would. I actually checked to see if you did in response to my PM; but I noticed I never did send one. 
Ah, 6+(4x2) pins used for the matrix, 25 I/O available, so indeed enough for a touchpad and another goodie.
Thanks for reminding me that my minimal wasn't as minimal as it can get ofcourse.
How do you feel about the physical placement of the keys on your board by now?
And how are you creating this effect: "Modifiers in thumb row have an alternate key if toggled without any other key being pressed", by triggering the alternate key upon release if no other has been pressed in the meantime?
Also, I forgot if I'd asked before, but since it bears relevancy here: How are you enabling AdnW on your board? Asking in regards to the problem that arises out of sending special characters; are you using any kind of software on your PC, or just a regular keyboard mapping in your OS and the rest is handled by the Teensy?

Ah, 6+(4x2) pins used for the matrix, 25 I/O available, so indeed enough for a touchpad and another goodie.
Thanks for reminding me that my minimal wasn't as minimal as it can get ofcourse.
How do you feel about the physical placement of the keys on your board by now?
And how are you creating this effect: "Modifiers in thumb row have an alternate key if toggled without any other key being pressed", by triggering the alternate key upon release if no other has been pressed in the meantime?
Also, I forgot if I'd asked before, but since it bears relevancy here: How are you enabling AdnW on your board? Asking in regards to the problem that arises out of sending special characters; are you using any kind of software on your PC, or just a regular keyboard mapping in your OS and the rest is handled by the Teensy?
- suka
- frobiac
- Location: Germany
- Main keyboard: custom split ergonomic "RedTilt"
- Main mouse: IBM trackpoint
- Favorite switch: MX red
- DT Pro Member: 0046
Simply wonderful to have these thumbkeys, although only 3 per thumb are used often as modifiers or frequent keys. The outermost ones are rarely needed, serving as special mode switches for macros or resetting the trackpointoff wrote: How do you feel about the physical placement of the keys on your board by now?

I implemented a special handling of keys that also serve as a layer or mode modifier: If pressed and released without any further key (and only within a certain timeframe), their alternate keycode gets send. Only if another key is pressed in addition, they select its corresponding code from the modified layer. hasu has something similar implemented in his tmk code layer.coff wrote: And how are you creating this effect: "Modifiers in thumb row have an alternate key if toggled without any other key being pressed", by triggering the alternate key upon release if no other has been pressed in the meantime?
Everything is running on the Teensy itself, no other drivers required. In my keycode handling, every key in a layer translates to a combination of key plus all necessary modifiers on a OS running with a german layout. So for example "AT sign" in my matrix will be translated to AltGr+q directly (of course I could also press these 2 keys directly instead of MOD_3+q, but AltGr is harder to reachoff wrote: Also, I forgot if I'd asked before, but since it bears relevancy here: How are you enabling AdnW on your board? Asking in regards to the problem that arises out of sending special characters; are you using any kind of software on your PC, or just a regular keyboard mapping in your OS and the rest is handled by the Teensy?

- off
- Location: the crapper, NL, EU
- DT Pro Member: -
Which would indicate that you're also sending [shift down][6][shift up] to get the character [^] (wrongfully assuming ANSI layout here)... I'm not sure but I think I remember that implementation leading to errors in some situations, though I can't recall any examples. Have you noticed any drawbacks to that technique?
In regards to the 'how do the key positions feel' I meant more like, the exact placement of the various keys, like the three for each thumb, the slight jump on the middle-finger-row to create a faint stagger, stuff like that (feel free to mention your trackpoint as well
).
Although, I am indeed also interested in a discussion (and thus your feelings on) thumbkeys, the most one can comfortably use, their exact placements, and their functions.
So far I'd say (no actual experience) that three is around the practical maximum with a straight PCB (no keys on other levels), seeing how jumping over a key with a thumb makes for quite an awkward press. Perhaps four is still very usable, in a pattern like this:
-+++
+
But I think that's still quite a stretch (literally), so the rightmost key there would be one that doesn't get used a lot.
In regards to the 'how do the key positions feel' I meant more like, the exact placement of the various keys, like the three for each thumb, the slight jump on the middle-finger-row to create a faint stagger, stuff like that (feel free to mention your trackpoint as well

Although, I am indeed also interested in a discussion (and thus your feelings on) thumbkeys, the most one can comfortably use, their exact placements, and their functions.
So far I'd say (no actual experience) that three is around the practical maximum with a straight PCB (no keys on other levels), seeing how jumping over a key with a thumb makes for quite an awkward press. Perhaps four is still very usable, in a pattern like this:
-+++
+
But I think that's still quite a stretch (literally), so the rightmost key there would be one that doesn't get used a lot.
- suka
- frobiac
- Location: Germany
- Main keyboard: custom split ergonomic "RedTilt"
- Main mouse: IBM trackpoint
- Favorite switch: MX red
- DT Pro Member: 0046
No, everything I need seems to work fine, but you're right that some combinations will not be possible without dedicated modifiers for CTRL, ALT and so on - but these are on single-use thumbkeys further out, so no problem there so far. And the few clumsy combinations like for example Ctrl+Shift+Left for marking a word that would require me to press an additional Mod3 as that's were my cursor keys are do work in principal, but I'd run out of thumbs
It would be possible to use the dormant pinky columns for such modifiers, but since I use vim most of the time or similar bindings in other programs I don't feel the need to map them. Besides, using the trackpoint is much faster for such text operations anyways...
Regarding the physical positions of the keys I am very happy with my last prototype - a vertical stagger (compared to index finger columns) of +1/2 key for middle finger, +1/4 key for ring-finger and -3/4 of a key for the pinky suits me fine and leads to a fairly compact rectangular layout as well. And certainly I wouldn't want to use more than 3 thumb keys regularly: In the picture below, "J" is the most comfortable one and thus mapped to my second layer (which is basically just Shift or capital letters) and Backspace, and the arrows left and right to it are equally comfortable for the remaining 2 main layers. Interesting enough, I just found out that this only seems to apply with my tented setup - flat on the table, the staggering is fine, but I tend to move my thumbs further to the inside - but after a few minutes and some adjustments to the placement of the halves it feels quite ok. The outmost blue thumbkeys I rarely use, and the brown one toggles the trackpoint on and off (still got drifting issues in my code somewhere)


Regarding the physical positions of the keys I am very happy with my last prototype - a vertical stagger (compared to index finger columns) of +1/2 key for middle finger, +1/4 key for ring-finger and -3/4 of a key for the pinky suits me fine and leads to a fairly compact rectangular layout as well. And certainly I wouldn't want to use more than 3 thumb keys regularly: In the picture below, "J" is the most comfortable one and thus mapped to my second layer (which is basically just Shift or capital letters) and Backspace, and the arrows left and right to it are equally comfortable for the remaining 2 main layers. Interesting enough, I just found out that this only seems to apply with my tented setup - flat on the table, the staggering is fine, but I tend to move my thumbs further to the inside - but after a few minutes and some adjustments to the placement of the halves it feels quite ok. The outmost blue thumbkeys I rarely use, and the brown one toggles the trackpoint on and off (still got drifting issues in my code somewhere)
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
It really is an absolutely wicked thought to be able to use the thumb-keys as single keys and as shifts.. But another 'objection' popped into my head just now; again probably mostly relevant to gaming though; which is, that I reckon I'm trained to expect the trigger (of space mainly) to occur on the way down, and immediately. That slight delay (from the code itself), and the other slight delay imposed by perhaps holding the bar down longer than 'wanted' might make for an awful experience.
Should remember to test that once I get my hands on a Teensy. Would you be willing to post the relevant part of your code (the one-key-for-layer+singlefunction part)?
Also, what are the three ML(?) keys to the side for, mousebuttons? Are they even usable (comfortably)?
Should remember to test that once I get my hands on a Teensy. Would you be willing to post the relevant part of your code (the one-key-for-layer+singlefunction part)?
Really? I never really did get along with those nibs... nor touchpads for that matter, but to a lesser extent.suka wrote: Besides, using the trackpoint is much faster for such text operations anyways...
Making a mash up on your pic as we speak, will need you to add/correct some I think.Regarding the physical positions of the keys I am very happy with my last prototype - a vertical stagger (compared to index finger columns) of +1/2 key for middle finger, +1/4 key for ring-finger and -3/4 of a key for the pinky suits me fine and leads to a fairly compact rectangular layout as well.
What exactly are you pointing at when you say 'this only seems to apply with'? That the keys left and right of the one labeled 'J' are comfortable? Meaning those are not as comfy when tried flat? Or that basically all thumbkeys are in fact comfortable when flat? Really not clear for me what it is that you meant.And certainly I wouldn't want to use more than 3 thumb keys regularly: In the picture below, "J" is the most comfortable one and thus mapped to my second layer (which is basically just Shift or capital letters) and Backspace, and the arrows left and right to it are equally comfortable for the remaining 2 main layers. Interesting enough, I just found out that this only seems to apply with my tented setup - flat on the table, the staggering is fine, but I tend to move my thumbs further to the inside - but after a few minutes and some adjustments to the placement of the halves it feels quite ok.

How often do you accidentally hit the key below the brown together with it when you want to toggle TP on/off?The outmost blue thumbkeys I rarely use, and the brown one toggles the trackpoint on and off (still got drifting issues in my code somewhere)
Also, what are the three ML(?) keys to the side for, mousebuttons? Are they even usable (comfortably)?
- suka
- frobiac
- Location: Germany
- Main keyboard: custom split ergonomic "RedTilt"
- Main mouse: IBM trackpoint
- Favorite switch: MX red
- DT Pro Member: 0046
It really is an absolutely wicked thought to be able to use the thumb-keys as single keys and as shifts..
There is certainly some rethinking necessary in the beginning, but considering that during normal typing you rarely should need backspace

Correct, one of my earliest design flaws was to put space together with shift on one key - that's why I made space a first-class key on the left thumbs main keyI'm trained to expect the trigger (of space mainly) to occur on the way down, and immediately. That slight delay (from the code itself), and the other slight delay imposed by perhaps holding the bar down longer than 'wanted' might make for an awful experience.

Sure - very old version but this code still applies is at keyboard_class.c, search for MKT_ occurences (ModeKeyToggle) : Basically it is a minimal state machine with a single timeout to not emit any keycode if the key is pressed too long by itself, and a check if another "normal" key was pressed at the same time to modify it accordingly... Should definately get that code updated again, but need to clean my git repo before pushing those precious eeprom macros out in the wildWould you be willing to post the relevant part of your code (the one-key-for-layer+singlefunction part)?

Sorry for not being clear here: If the boards lie flat on the table I would naturally shift all thumbkeys about half a key towards the centerWhat exactly are you pointing at when you say 'this only seems to apply with'? That the keys left and right of the one labeled 'J' are comfortable? Meaning those are not as comfy when tried flat? Or that basically all thumbkeys are in fact comfortable when flat? Really not clear for me what it is that you meant.![]()
How often do you accidentally hit the key below the brown together with it when you want to toggle TP on/off?Also, what are the three ML(?) keys to the side for, mousebuttons? Are they even usable (comfortably)?
Actually never - selecting a feature like TP-toggle or MacroMode on the mirrored key is such a seldom and conscious movement that it is always slow enough to hit correctly, and it is also a higher keycap from the number row...
The 3 ML-keys are 3 mousebuttons hard-wired to the trackpoints PS/2 pins, but I rarely use them as the left hands homerow acts as buttons and scroll-wheel activations a long as there is movement on the trackpoint ( and a few milliseconds longer, of course)
- off
- Location: the crapper, NL, EU
- DT Pro Member: -
I don't think I've ever even tried to hit Escape with my pinky.. I tend to just whack it, with either my left or right middle finger.suka wrote:The truth is, I always found reaching Esc and Backspace with the pinkys extremely annoying
Heyyyy...Should definately get that code updated again, but need to clean my git repo before pushing those precious eeprom macros out in the wild![]()

Towards the center meaning between the two halves and not the center of each half I take it: And if shfited, how many of those would still be comfortable; the same amount (just <+J+>)?Sorry for not being clear here: If the boards lie flat on the table I would naturally shift all thumbkeys about half a key towards the center
Nice solution! Can't see myself typing so shortly after moving the mouse anyway (well, apart from gaming ofcourse).Actually never - selecting a feature like TP-toggle or MacroMode on the mirrored key is such a seldom and conscious movement that it is always slow enough to hit correctly, and it is also a higher keycap from the number row...off wrote: How often do you accidentally hit the key below the brown together with it when you want to toggle TP on/off?Also, what are the three ML(?) keys to the side for, mousebuttons? Are they even usable (comfortably)?
The 3 ML-keys are 3 mousebuttons hard-wired to the trackpoints PS/2 pins, but I rarely use them as the left hands homerow acts as buttons and scroll-wheel activations a long as there is movement on the trackpoint ( and a few milliseconds longer, of course)
So about that MacroMode key... that makes it seem to me that it is a key you hit only to actually program a macro, not to run one, correct? Then where do the runnable macros end up at (what mode of execution do you have for them)?
Also, what does R3 do?
And would you mind filling this out with any info that might be missing (the mostly 'layout agnostic' part)?

On a partially related note, I've reeeeally come to like Ctrl+Backspace as Delete (probably mostly due to this board, mx11800, having Delete around where F7 would normally be)
@ica: did you just really call PrintScreen supremely useless?? Also pause/break is still useful in Windows (ctrl+pause for sysinfo), and during boot..
- Icarium
- Location: Germany
- Main keyboard: These fields just
- Main mouse: opened my eyes
- Favorite switch: I need to bring stuff to work
- DT Pro Member: -
Yes, and I'd do it again. Launching two marginally useful applications doesn't count, does it?off wrote: @ica: did you just really call PrintScreen supremely useless?? Also pause/break is still useful in Windows (ctrl+pause for sysinfo), and during boot..