Option/Command/Alt Confusion

I still don’t see what’s the problem with letting the user tell you which one of those to use.

At least that way, you can blame the user if/when they get that wrong :stuck_out_tongue:

(back to my cave, for real this time!)

What about the fact (if I remember correctly) that the Haiku/BeOS keymap considers the Right Alt for Option and the Right Win for Command, but the Left Alt for Command and the Left Win for Option. Who thinks this kind of confusion is a good solution?

Every Haiku developer seems to be fine with it because no one has shown that they understand the mess. It’s the blind leading the blind.

There is nothing stopping this from being corrected, except knowledge and will from the developers. It will not break any binary compatibility with BeOS.

Actually it will.

The extra AltGr key may require changes to the keymap, which is exposed to applications using the get_key_map function. So it would break any apps using that, if not done carefully.

But that is not the only problem.

The issues have been discussed to gr at length here, but, as a summury, here is the impossible list of requirements:

  • have AltGr and “windows” be handled as two different key roles (easy except BeOS compatibility problems)
  • have the labels in keymap preferences, documentation, menu shortcuts and on the keyboard all match each other (impossible, but we can have some of them match together, we have to decide which ones)
  • autodetect the keyboard type to decide if it has an AltGr key or not (probably impossible) and if it has control/win/alt or control/command/option keys (relatively easy for USB keyboards)
  • allow users to customize their keymap (for example use capslock as a control key, or swap the command and control keys to emulate a mac-style layout on a pc keyboard) (already working, but it sets additional constraints on requirement no 2)
  • make the whole thing understandable easily both for users and for developers (if the only place we mention a “command” key is in C++ API and everywhere else it is labelled “alt”, and if the C++ API has a “control” key constant that in fact sometimes refers to the “alt” key on the keyboard, that’s not easy for the developers) (possible to fix, requires good documentation about what we do, for both users and developers, and renaming of key roles to avoid confusion)

I don’t think I have seen a proposal that takes into accounts all these things (I think it is not possible) or explicitly mentions which ones it chose to ignore (so that other people can complain that ignoring those is crazy and will make the system unusable).

So, it’s not that the developers don’t understand the problem or don’t want to fix it. We have a set of conflicting requirements, and the “solution” is deciding which of the requirements we must give up so we can solve the other ones. And when that’s the only solution, any change will be strongly rejected by a part of the community. As a result, the easiest (but not the best) course is to not change anything

2 Likes

This is the only thing I am requesting to be fixed, because it is the source of the confusion. Note that I have never argued to match it to what is displayed on the keyboards, because that is impossible. I have only requested that the confusing logical names, the ones used in the documentation etc, to be renamed to something that is not confusing.

NO KEYBOARD IN HISTORY HAS AN ALT KEY PLUS AN OPTION KEY. HOW DIFFICULT IS THAT TO UNDERSTAND? The users do not understand it, for obvious (unless you are a Haiku developer) reasons. As I said, the blind leading the blind.

That is also true for stopping development of Haiku. That is very easy.

Can actual users of the system please state what exactly is the issue.
Is it that you see “Copy ALT+C” in the edit menu and can’t figure out the keys to press? Is it the Tracker add-on shortcuts, e.g. OPT+ALT+T to summon a Terminal that you cannot figure out? Or you read the user guide and see “Hold down OPT while dragging a window by its tab” and you were never able to figure out what could be the OPT key. Assuming you did find the ALT and CTRL keys, how many other keys are candidates?
Or were you taken aback for a second, like with many things you experience when trying a new OS the first time, but figured it out evetually and then managed to remember, “Ah they call the Windows key OPT here. Oh well, I guess the other way around would be weirder, having Microsoft call their key “Haiku”. Life goes on…”?

3 Likes

You can answer the question yourself by posting a photo of a keyboard that has a CTRL, ALT and an OPT key.

Good luck.

Perhaps this should be looked at from a different perspective, if you want new users, most will be PC users, which keyboard are they used to, the standard PC keyboard of course, so it makes sense that that be the one to use. Compared to how many PC (Windows/Linux/BSD) users there are, how many people who use MAC or BeOS are likely to become new Haiku users?

1 Like

The problem with that is there is no name for the “win”-key that is commonly known, except for “win”. SUP (for Super) is the accepted name among the keyboard community, but outside of that limited community it is largely unknown. I suspect that Haiku do not want to use “win” as the name.

This whole “confusion” is a complete non-issue in my view. If you’re using different operating systems and/or different keyboards you have to adapt. Something we humans are supposedly good at. Keeps our brains fit and prevents us from becoming unflexible.
Same thing when you are driving different cars frequently.

2 Likes

So all the confusion is just that it is not clear which key on the keyboard is the key called “opt” by Haiku? And the alternatives are “super” and “win”, both with their own issues?

Actually when I first used Haiku I also didn’t know which key was meant. “Super” I would have understood because I knew it from Linux. But others might not.

If there is no satisfying name everyone will understand I’d say it is ok to use the BeOS / Haiku name “opt”, but check whether the documentation can be made more clear. It should explicitly explain which key is meant. If necessary on multiple places where “opt” is referred to.

1 Like

It’s worse than that. There is a key on Apple keyboards that is called OPT, which is the same key as ALT.


Pretend you have an Apple keyboard and you need to press the following key combination: OPTp. Here Haiku wants you to press COMMANDp.

If you have ever used an Apple keyboard you will correctly associate OPT with ALT, not with COMMAND, WIN or SUPER.

It can’t and never will be clear, no matter how much you explain the situation. Just rename the keys to something that makes sense. The more I think about it, the more I am in favor of using the Apple naming scheme CTRLOPTCOMMAND. On PC keyboard that would be CTRLCOMMANDOPT. The documentation only have to mention that COMMAND is the WIN key and OPT the ALT key.

One thing that is actually inconsistent and should be rectified in one way or another is that in the keymap preferences (in standard configuration) the ALT key is labeled “Command” but in all application menus the key combinations are labeled as “Alt”. I don’t care which one we settle for, but this should be consistent.

Command is the role, Alt is the key. Opt as a name makes sense when you realize that the Option key on a Mac keyboard is in the same position and function as the Windows key on a Windows keyboard. It gets confusing on a Mac keyboard because the modifier keys are switched, but that’s because we assume a PC keyboard and that same confusion exists on every other operating system too (except macOS assumes Mac keyboard, but when you plug a PC keyboard you have to swap the modifiers for it, so yes, Mac too).

Calling my shitty car a supercar makes sense when you realize that my car shares the same parking spot as a Lamborghini.

https://www.haiku-os.org/legacy-docs/benewsletter/Issue4-38.html

“The key I refer to as the Option Key, is only labeled ‘Option’ on Mac-style keyboards. On 104-key keyboards, it often sports the logo of an alternate operating system (e.g., a ‘Window’). It’s in the same location on all keyboards, between the Alt/Command key and the Control key. I refer to it as the Option key, because in BeOS its identifier is named B_OPTION_KEY.”

I’m trying to explain why things are the way they are, I didn’t name the key option, it was named that in BeOS at least as far back as 1999. But because you made such a big fuss about it we will continue to call the key Option for the next 20 years and act dumb when anybody brings up that there is no key called Option on their keyboard. :wink:

This is plain wrong. The Apple OPT key is NOT the WIN key on PC keyboards. The Apple OPT key is the ALT key on PC keyboards.

If the the Apple OPT key was the WIN key on PC keyboards, then the keys would NOT be swapped position wize.

Apple: CTRL OPT COMMAND
PC: CTRL WIN ALT

The PC WIN and ALT keys are swapped compared to Apple’s OPT and COMMAND. That makes OPT on an Apple keyboard ALT on a PC keyboard.

And it has been complained about ever since because the users (and the developers) are confused. A simple renaming is all it takes to fix the confusion.

You also need to explain to Haiku’s users that if they have a key called Option, it is not OPT, but ALT and their COMMAND is OPT. And then you can try to explain to them that it is not illogcal because “Opt as a name makes sense when you realize that the Option key on a Mac keyboard is in the same position and function as the Windows key on a Windows keyboard”.

Or just fix the naming so it is no longer confusing.

Not everyone is an Apple lover or has experience with Apple naming or old BeOS interpretations. What’s wrong with trying to correct mistakes from the past (either in software, or docs, or both)?

Making a joke of it by saying it won’t be fixed in the next 20 years doesn’t come across as very polite or constructive imo.

Note that EVERY source I’ve read on the internet agrees that this is correct. The only source that DO NOT is BeOS and therefor Haiku and its developers.

Example:

The Alt or Alternate key is a modifier key found on many platform’s keyboards. On Macintosh, the same key is called “Option”.

https://deskthority.net/wiki/Alt_key

The option key (abbreviated opt) is a modifier key on Macintosh keyboards used for modifying commands and actions, for caret navigation, and for providing extended character entry. The option key has for years included the word “alt” on the keycap, and this is how the key is bound when connected to a PC, and vice versa.

https://deskthority.net/wiki/Option_key

You know that I know that the Option key is the Alt key on a Mac keyboard and that the Option key is not the Windows key on a PC keyboard and I know that you know that too.

They decided to name the key after the role at Be instead of what was printed on the actual key so that they wouldn’t have to refer to the illegal monopoly that crushed Be by pressuring PC OEMs not to offer BeOS on their computers. We’re still holding onto that grudge I guess, but yeah we should probably rename the key to Win instead of Opt in the menu.