Lenovo: we need to talk about the Evil Layoutery you're applying in your laptop keyboards.
Posted: 30 Aug 2022, 23:53
Obligatory disclaimer: I am a braindead idiot who doesn’t know anything about anything, and has the habit of presenting his own opinions as unquestionably unquestionable facts.
I don't think any regular around here has failed to notice how much I have come to hate laptop keyboards, as each generation builds upon the crimes of the previous one.
As it turns out, I have gotten a replacement for my aging Lenovo G570 laptop — a Lenovo T15. All in all, a nice machine, with the (by now usual) exception of a disappointing keyboard.
Being a high-grade Lenovo laptop, I expected a keyboard with good-enough switches, slighly curved instead of flat keytops...
... and the usual shenanigans (both industry-wide and Lenovo-specific) that are now expected in the keyboard of a laptop: a function row with small buttons, swapped Fn and Ctrl keys...
... smaller buttons for the arrow keys...
... and the Page Up and Page Down buttons uncomfortably shoved in there as well, as if the lessons of the mid-90s in this regard had been forgott...WAIT, what is PrtSc doing there?!
Oh, Home and End displaced it. But... if the HUDE keys are here and there, instead of remaining in their usual assignment in Lenovo's typical 1800-like layout, what IS on top of the numeric keypad??
Oh. An equals sign, parentheses signs... and a BACKSPACE key?
For heaven's sake, Lenovo. A cursory look will reveal the superfluousness of the second Backspace key — the first one, still 1U in height and 1.75U in width, is RIGHT THERE, so that addition is pointless — it'd have been better to place a comma or a Tab key there. Or, you know, either (or both) of Pause and Scroll Lock, which are absent for no reason? (and don't come tell me that Fn+K or Fn+P (or Fn+B and Fn+S) supplement their absence — this is still a 1800-like physical layout)
Still, you could be in for a 3 out of 4. Unless...
With Switch Hitter, I pressed first the =+ key, then Shift-9 and then Shift-0, then the space bar, and then the keys =, ( and ) in the supranumpad row. Or was it the other way around? The scan codes produced are the exact same.
DAMMIT, LENOVO! What the hell, hard-coded national-layout-dependent scan codes? What WERE you smoking? (please tell us so we'll know to avoid it like the plague)
It's not just that this is dumb beyond words — these keys won't work on most other national layouts (right now, pressing those keys with the one I use results in "!)=" instead of "=()") and doing so is hard to properly maintain (do T15 models with ISO keyboards instead return the scan codes 0x10;0x30, 0x10;0x38 and 0x10;0x39, so they'll produce the characters =, ( and )? Never mind that this will work in most but not all ISO-based layouts). Worse than that is the fact that the USB HID Usage Tables specification DOES provide scan codes for these three keys, with their intended meaning (pages 56 to 58). Get the hardware properly designed, get the firmware right, then reach an accord with other OEM makers to support what the standard already provides for, and do so as well with the largest operating system makers, so they'll update their logical layouts to support these three "new" keys as they are supposed to be.
But, hey, at least the second Backspace key is not a Power Off key.
We definitely need keyboard-less laptops. Getting a laptop with a good keyboard is definitely a lost cause.
I don't think any regular around here has failed to notice how much I have come to hate laptop keyboards, as each generation builds upon the crimes of the previous one.
As it turns out, I have gotten a replacement for my aging Lenovo G570 laptop — a Lenovo T15. All in all, a nice machine, with the (by now usual) exception of a disappointing keyboard.
Being a high-grade Lenovo laptop, I expected a keyboard with good-enough switches, slighly curved instead of flat keytops...
... and the usual shenanigans (both industry-wide and Lenovo-specific) that are now expected in the keyboard of a laptop: a function row with small buttons, swapped Fn and Ctrl keys...
... smaller buttons for the arrow keys...
... and the Page Up and Page Down buttons uncomfortably shoved in there as well, as if the lessons of the mid-90s in this regard had been forgott...WAIT, what is PrtSc doing there?!
Oh, Home and End displaced it. But... if the HUDE keys are here and there, instead of remaining in their usual assignment in Lenovo's typical 1800-like layout, what IS on top of the numeric keypad??
Oh. An equals sign, parentheses signs... and a BACKSPACE key?
For heaven's sake, Lenovo. A cursory look will reveal the superfluousness of the second Backspace key — the first one, still 1U in height and 1.75U in width, is RIGHT THERE, so that addition is pointless — it'd have been better to place a comma or a Tab key there. Or, you know, either (or both) of Pause and Scroll Lock, which are absent for no reason? (and don't come tell me that Fn+K or Fn+P (or Fn+B and Fn+S) supplement their absence — this is still a 1800-like physical layout)
Still, you could be in for a 3 out of 4. Unless...
With Switch Hitter, I pressed first the =+ key, then Shift-9 and then Shift-0, then the space bar, and then the keys =, ( and ) in the supranumpad row. Or was it the other way around? The scan codes produced are the exact same.
DAMMIT, LENOVO! What the hell, hard-coded national-layout-dependent scan codes? What WERE you smoking? (please tell us so we'll know to avoid it like the plague)
It's not just that this is dumb beyond words — these keys won't work on most other national layouts (right now, pressing those keys with the one I use results in "!)=" instead of "=()") and doing so is hard to properly maintain (do T15 models with ISO keyboards instead return the scan codes 0x10;0x30, 0x10;0x38 and 0x10;0x39, so they'll produce the characters =, ( and )? Never mind that this will work in most but not all ISO-based layouts). Worse than that is the fact that the USB HID Usage Tables specification DOES provide scan codes for these three keys, with their intended meaning (pages 56 to 58). Get the hardware properly designed, get the firmware right, then reach an accord with other OEM makers to support what the standard already provides for, and do so as well with the largest operating system makers, so they'll update their logical layouts to support these three "new" keys as they are supposed to be.
But, hey, at least the second Backspace key is not a Power Off key.
We definitely need keyboard-less laptops. Getting a laptop with a good keyboard is definitely a lost cause.