What makes a "Linux" keyboard different from a "Windows" keyboard?

User avatar
zslane

07 Aug 2017, 20:42

As the subject asks, what makes a Linux keyboard different from a Windows keyboard? Is it the scancodes that are sent? Is it a special layout that differs from ANSI? Is it just the keycap legends? All of the above?

User avatar
Menuhin

07 Aug 2017, 20:47

Is it a philosophy question?

e.g. if you attach a "Linux" keyboard to a windows machine or a "Windows" keyboard to a Linux box - does that change a keyboard from "Linux" to Windows or vice versa?

Engicoder

07 Aug 2017, 20:47

As far as I understand it's nothing more than replacing the legend on the windows key with a different legend, like a penguin or what ever that ubuntu thing is.

User avatar
DanielT
Un petit village gaulois d'Armorique…

07 Aug 2017, 20:53

A keyboard is a keyboard, unless some weird voodo is going on it should on any OS.
Some people "hate" Windows and don't want any related branding on the keyboards.

I don't give a flying f**k, I'm a long time Linux/UNIX user but I like the Windows logo on caps (I use Cherry/GMK ). I like the Windows logo more than some less inspired replacements like "CODE" or whatever it is used.

Findecanor

07 Aug 2017, 20:54

From what I have seen, there is no such thing as Linux keyboard hardware. The typical keyboard used for a Linux system is a regular PC keyboard - and those have the same USB HID "usage codes" as for Windows.

The differences would be in how the codes for the keys are interpreted. I have noticed that Swedish layout, that I use, are the same on Windows and the X Window System, except that under X, there are more symbols available on combinations with Alt Gr.
The Windows keys are interpreted either as "Super", or sometimes as "Meta" (when the "Alt" key is not Meta...).
There are replacement Windows keys for Linux users with various different symbols, such as Tux the penguin, but I think that is more of a novelty than anything else. Some keycap runs have provided keys with "Super" and/or "Meta" as text, or the Meta symbol "◆".

There are some keyboards with more keycodes. For instance, the Sun Type 6 and Sun Type 7 emit codes that Windows does not interpret, but which Linux and X interprets. But those keyboards were made for Sun Solaris, not Linux in the first place.
The Meta "◆" key on those keyboards emit the same codes as the Windows key, which BTW are the same code as the Command key on Macintosh.
Last edited by Findecanor on 07 Aug 2017, 21:37, edited 2 times in total.

User avatar
seebart
Offtopicthority Instigator

07 Aug 2017, 20:55

I'm pretty sure with something horrible like this all the Windows specific hotkeys would be useless under Linux.
Microsoft_Office_Keyboard.jpg
Microsoft_Office_Keyboard.jpg (408.61 KiB) Viewed 11295 times

DerpyDash_xAD

07 Aug 2017, 20:59

do you have any examples of linux keyboards? I've never heard of such a thing, unless you mean ones which have penguins instead of flags on mod4/super/winkey?

User avatar
seebart
Offtopicthority Instigator

07 Aug 2017, 21:02

DerpyDash_xAD wrote: do you have any examples of linux keyboards? I've never heard of such a thing, unless you mean ones which have penguins instead of flags on mod4/super/winkey?
Cherry Cymotion Master XPress Linux:
71nO+k+ZlJL._SL1500_.jpg
71nO+k+ZlJL._SL1500_.jpg (145.52 KiB) Viewed 11279 times

DerpyDash_xAD

07 Aug 2017, 21:06

Wow, that's.... Unique. I'm curious as to how the linux media keys are supposed to work. To the best of my knowledge there is no native media key support in USB HID standards?

Findecanor

07 Aug 2017, 21:07

seebart wrote: I'm pretty sure with something horrible like this all the Windows specific hotkeys would be useless under Linux.
Nah. If that is a USB keyboard, then I expect most of those to work under Linux - as long as there is application support.
Some desktop environments do have a set of configurable mappings from internal X keycodes to certain media-player controls. also, so that you would be able to remap them.

PS/2 is special in that the two Windows keys, Menu key and the three ACPI keys (power, sleep, wake) are the only ones supported by bare Windows. For other keys, there might need to be a driver at the host which sends a special code to the keyboard to make it start sending proprietary scancodes - which means that there would need to be a special driver under Linux as well. I think there might be for some, actually... but those drivers are likely to be old by now and I suspect that they would be difficult to make work with new kernels.
Last edited by Findecanor on 07 Aug 2017, 21:10, edited 3 times in total.

User avatar
seebart
Offtopicthority Instigator

07 Aug 2017, 21:08

Fine, but look at that horrible Cherry Cymotion Master XPress Linux. No better either. :|

DerpyDash_xAD

07 Aug 2017, 21:12

So it really must just be the little penguin rather than the windows flag?

Findecanor

07 Aug 2017, 21:17

DerpyDash_xAD wrote: To the best of my knowledge there is no native media key support in USB HID standards?
Yes they are in the USB HID standard, and there is support for media keys in Linux. I would expect all media keys on a PC or Mac keyboard that talks USB to work on Linux - of course, as long as there is application support.
The HID standard does specify many more types of controls than Windows supports. Microsoft has published a list of supported codes. If you build a custom keyboard, you should not really expect Linux support for any media key outside of that list.

The media controls are also in a different "usage page" than the regular keys. They are often sent in a different message from a different endpoint from regular keyboard keys and therefore they are not subjected to all the 6KRO +modifiers problems that codes in the "Keyboard" page have.
There is one weird exception though: There is Mute, Volume Up and Volume Down in the "Keyboard" usage page.... but, I think they were put there for Sun keyboards and I think it is only Sun keyboards that use them. But I have not sniffed the output from one, so I can't tell for sure.

BTW, Power, Sleep and Wake are in a third usage page, and therefore often sent in a third message from a third endpoint ...
Last edited by Findecanor on 07 Aug 2017, 21:28, edited 2 times in total.

User avatar
zslane

07 Aug 2017, 21:21

I get the impression that the HHKB is popular with Linux users. If so, why is that?

User avatar
wobbled

07 Aug 2017, 21:26

aside from the traditional unix layout on the HHKB there's nothing that makes it good for Linux users specifically.

User avatar
seebart
Offtopicthority Instigator

07 Aug 2017, 21:33

zslane wrote: I get the impression that the HHKB is popular with Linux users. If so, why is that?
The hype transcends all platforms... :maverick:

Findecanor

07 Aug 2017, 21:34

Also, there is no tradition of using the function keys that much under Unix/Linux.
Alt+F1, Alt+F2 etc. are used for swapping screen in console mode, and there are some programs that have adopted MS Windows' conventions, but I think that's it.

User avatar
zslane

07 Aug 2017, 22:02

wobbled wrote: aside from the traditional unix layout on the HHKB there's nothing that makes it good for Linux users specifically.
Okay, so Unix/Linux users like Ctrl next to "A" and Backspace above Return? Is the minimalist bottom row (of the HHKB) a crucial element of the "traditional unix layout" as well?

User avatar
depletedvespene

07 Aug 2017, 22:12

zslane wrote: Okay, so Unix/Linux users like Ctrl next to "A" and Backspace above Return? Is the minimalist bottom row (of the HHKB) a crucial element of the "traditional unix layout" as well?
The "classical" (so to speak) location of the Ctrl key is between Shift and Tab, not below Shift (think of the mantra "Shift Control Tab Esc"). The Backspace directly above an ANSI enter is an HHKB innovation (let's note that it couldn't have happened where ISO keyboards were dominant).
Last edited by depletedvespene on 07 Aug 2017, 22:12, edited 1 time in total.

User avatar
infodroid

07 Aug 2017, 22:12

Linux started life as an effort to get UNIX working on commodity PC hardware, including standard PC keyboards.

UNIX applications made use of keys that had no equivalent on IBM's keyboards. Keys like Alt Graph, Compose, and Meta (diamond) were not used by IBM's early operating systems or the later MS-DOS.

Sun's Type 3 (UNIX) keyboard is the inspiration for the HHKB. It had a very different layout than IBM's Enhanced Keyboard (which evolved to become the PC standard) and is arguably more tuned to UNIX programs.

Hence the popularity of HHKB among a segment of Linux users.

The HHKB is compact because its designer wanted a UNIX keyboard with a minimal design, not because 60 keys and a sparse bottom row is traditional or anything.
Last edited by infodroid on 07 Aug 2017, 23:02, edited 1 time in total.

User avatar
zslane

07 Aug 2017, 22:43

depletedvespene wrote:
zslane wrote: Okay, so Unix/Linux users like Ctrl next to "A" and Backspace above Return? Is the minimalist bottom row (of the HHKB) a crucial element of the "traditional unix layout" as well?
The "classical" (so to speak) location of the Ctrl key is between Shift and Tab, not below Shift (think of the mantra "Shift Control Tab Esc"). The Backspace directly above an ANSI enter is an HHKB innovation (let's note that it couldn't have happened where ISO keyboards were dominant).
The Sun 3 keyboard appears to have had a Delete key (rather than Backspace) above the Return key, so I guess the HHKB's practice of putting a Backspace there is only a partial innovation:

Image

User avatar
infodroid

07 Aug 2017, 22:49

zslane wrote: The Sun 3 keyboard appears to have had a Delete key (rather than Backspace) above the Return key, so I guess the HHKB's practice of putting a Backspace there is only a partial innovation:

Image
It is in fact Delete on the HHKB also, where you have to use Fn+Delete to actually get Backspace. Perhaps its innovation is providing dip switches to permanently change the default to Backspace.

Image

Findecanor

07 Aug 2017, 23:36

The "Delete" key above the Return key is like a "Backspace" key on PC. It refers to "Backwards Delete", not forwards delete like on a PC keyboard.

Typewriters have separate Backwards "Delete" and "Backspace" keys, with Backspace only moving the type element/carriage. The "Delete" key is often situated in the same position as on HHKB and Sun Type 3.

A Backspace key on a PC keyboard typically produces the DEL character code in Unix/Linux terminals, not the BS code. Some terminals do however use BS, but could be configured to always translate BS to DEL.
The "Delete" key in a PC keyboard's nav cluster produces instead an escape code on a terminal, not DEL.
If you output a "BS" code to a terminal, it will move the cursor one step left, like a typewriter.

On many vintage computer keyboards, the key in the top/right corner is called "Delete". Examples: Apple II, Commodore 64.
On Macintosh, the Backspace key has always and is still named "Delete".
On Sun Type 5|6|7 in "Unix layout" (That's what Sun/Oracle calls it!), the key above Return is called "Backspace", however.

User avatar
clickityClackity

08 Aug 2017, 05:29

I have one sitting at my house posted on ebay. I didn't actually tested it for some reason, I guess I hadn't thought about it until I saw this thread. I can definitely do that in a couple days and report results if anyone's interested. I just took down my old PC and only have a Windows box, but I can set up a virtual machine or dedicated Linux system to see wudup.

http://www.ebay.com/itm/253050501247

Sent from my SAMSUNG-SM-G935A using Tapatalk

User avatar
infodroid

08 Aug 2017, 10:50

Findecanor wrote: The "Delete" key above the Return key is like a "Backspace" key on PC. It refers to "Backwards Delete", not forwards delete like on a PC keyboard.
Do you mean on the HHKB or the Sun Type 3?

If the Sun Type 3's Delete "is like a Backspace key on PC" (backward delete), then why is there a separate 1U Backspace key in the top row?

It really doesn't matter how the Sun Type 3 behaves when plugged into a modern PC or Linux machine. For example, Linux performs all sorts of scancode to keycode mappings to support vintage keyboards, and they are not necessarily mapped the same way when using those keyboards with the original hardware and its operating system.

The HHKB was modelled on the Sun Type 3, and on the HHKB the Delete key is forward delete. There is even visible an alternate legend for BS. And you must use Fn+Delete to get a Backspace (backward delete). There is a dip switch to alter the behaviour.

According to a recent interview with Prof. Wada:
HHKB has no “Back Space”; Control-H will do it
On Unix terminals, Control-H generates a control character that usually interpreted like Backspace.

Findecanor

08 Aug 2017, 13:39

infodroid wrote: The HHKB was modelled on the Sun Type 3, and on the HHKB the Delete key is forward delete. There is even visible an alternate legend for BS. And you must use Fn+Delete to get a Backspace (backward delete). There is a dip switch to alter the behaviour.
I would say that the DIP switch is there to alter the behaviour from using the Delete key as a Backspace key.

"Delete" is just the classic label. Note also how the HHKB has the label "Return" as the primary label on the Return key, instead of "Enter".

Zobeid Zuma

08 Aug 2017, 16:44

In my experience, the major difference between Mac, Windows and Linux in terms of keyboards is related to their use of the bottom row modifier keys: CTRL (⌃), ALT/OPTION (⌥), COMMAND/SUPER (⌘), ALTGR, MENU. (I won't include FN because it's not read directly by the computer.)

Linux is the least demanding, since it can read and respond to all those keys, but by default most Linux desktops and virtually all apps only use CTRL and ALT for their shortcuts. This means if you have an older keyboard with no COMMAND (or MENU) keys, you'll probably never miss them. On the other hand, you, the end user, can apply COMMAND freely for creating your own shortcuts -- sort of like a FN key that works through the OS instead of through the keyboard's firmware, and you don't have to worry about it conflicting with anything else that's already in the system.

The Mac is sort of schizoid since it uses COMMAND (often with SHIFT and ALT) instead of CTRL for most shortcuts in GUI-based applications, but it still requires CTRL in the terminal. So, you need CTRL and COMMAND and ALT for your keyboard to be fully functional. However, this does mean that you can use CTRL normally in the terminal and also use the Mac standard shortcuts ⌘-V to paste, ⌘-X to cut, ⌘-C to copy, instead of having to SHIFT-CTRL those shortcuts like on Linux.

Personally, I find Mac keyboards highly convenient to use on Linux systems. I just go into the layout options and swap CTRL and COMMAND, then everything is where my fingers expect it to be. PC layout keyboards are more awkward to me, but maybe it's just because I've used a Mac for so long.

Findecanor

08 Aug 2017, 17:00

Both MS Windows and the X Windowing system were originally on top of command-line interfaces that used ASCII and ANSI codes for both input and output -- and those used the Control key. Therefore, the windowing systems used the Control key as well.
The original Macintosh keyboard did not have any Control key and originally, Macintosh did not have any command-line shell.
The first keyboard that had both Command and Control was the Apple Desktop Bus Keyboard for the Apple IIGS - which was a weird system in that it was Apple II-compatible (Apple II used Control) but also had a GUI like the Macintosh.

User avatar
TuxKey
LLAP

08 Aug 2017, 18:06

to be honest and this is my personal opinion so it's not my intention to step on any toes.
i don't like the windows sign on sum of my keyboards. i try to tell my self it has nothing to do with the brand windows.
But the fact of the matter is that it is a brand sign subconsciously or not it has in impact.
i would much rather have a symbol of sum kind there. On one of my boards FC660M there is a keyboard drawing there
i prefer that above the windows sign on my FC660C. The latest keyboard i have on order the K-type from input club also has a windows sign (as seen in pictures) i asked if they could replace that with something else like on the WhiteFox..
but they couldn't or wouldn't ??

Returning to your question what makes a Linux keyboard??? i would say OpenSource and configureable
So a input club keyboard fits the bill if you ask me.
My FC660C with Hasu controller works great on my fedora as well as on my OSX machines.
And dare i say it also on one windblows machine that i'm forced to keep on a hotswap disk...

To sum up. What's a Linux keyboard for me?
- no windows brand key but something that states the brand / identity of the keyboard that represents the supper key.
- Preferably fully OpenSource
- Fully programmable so not limited to layer programming like the good looking Poker3.

And lastly detachable cabling preferably usb-c because i have several linux and other computers at home and i like to swap my keyboard of the day when i switch machines. And a usb-c connections is the best when it comes to number of connect/disconnect.

so that's what it means to be a Linux Keyboard in my humble opinion.

Zobeid Zuma

08 Aug 2017, 20:26

TuxKey wrote: to be honest and this is my personal opinion so it's not my intention to step on any toes.
i don't like the windows sign on sum of my keyboards. i try to tell my self it has nothing to do with the brand windows.
But the fact of the matter is that it is a brand sign subconsciously or not it has in impact.
I know how you feel, it irks me too. The Mac was originally going to have an Apple logo on its command keys, but Steve Jobs felt that would be an over-use of the Apple brand, and he told his team to come up with some different symbol, so they quickly latched onto ⌘. It's not a trademark, anybody can use it. I guess ◆ is effectively the same thing. Or they could just spell out Cmd, or Meta, or Super. All the Apple keyboards I've seen for some time have both the ⌘ symbol and "command" spelled out in full. My Unicomp just has "Command" written.

Amiga was the worst, though. Not only did they use their A-for-Amiga logo on those keys, but they also made them different. One was a solid A and the other was an outlined A, which meant that, for example, left-Amiga-Q was a different shortcut than right-Amiga-Q. What a wonderful idea, haha! I can just imagine the calls to tech support. :lol:

Post Reply

Return to “Keyboards”