discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Keyboard mapping of Option and Command


From: Jamie Ramone
Subject: Re: Keyboard mapping of Option and Command
Date: Thu, 6 Jun 2024 17:27:02 -0300

I ALWAYS change the default to Alt = ALTernate (<-- hello?), Ctrl = Control, and Windows key(s) = Command. I just find the Win keys in PC keyboards to be a natural replacement for NeXT keyboard's Command key. Leave control as control, leave alt as alt. This weird control or alt as Command always felt awkward to me, especially now that keyboards have special GUI specific keys such as the Win key which is otherwise a hood ornament on systems GNUstep runs on other than Windows, such as Linux.
   Also, when the Win key is unavailable (e.g. Ubuntu hardcoding it to desktop functionality), I use the Menu key.
Here's the contents of my NSGlobalDomain.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>GSCommandKeyString</key>
    <string></string>
    <key>GSFileBrowserHideDotFiles</key>
    <integer>0</integer>
    <key>GSFirstAlternateKey</key>
    <string>Alt_L</string>
    <key>GSFirstCommandKey</key>
    <string>NoSymbol</string>
    <key>GSFirstControlKey</key>
    <string>Control_L</string>
    <key>GSFontAntiAlias</key>
    <string>NO</string>
    <key>GSModifiersAreKeys</key>
    <integer>0</integer>
    <key>GSSecondAlternateKey</key>
    <string>Alt_R</string>
    <key>GSSecondCommandKey</key>
    <string>Menu</string>
    <key>GSSecondControlKey</key>
    <string>Control_R</string>
    <key>GSTheme</key>
    <string>NeXT.theme</string>
    <key>GSWorkspaceApplication</key>
    <string>WM</string>
    <key>GSX11HandlesWindowDecorations</key>
    <false/>
    <key>NSBoldFont</key>
    <string>Helvetica-Bold</string>
    <key>NSFont</key>
    <string>Helvetica</string>
    <key>SystemBeep</key>
    <string>/MondoLibrary/Sounds/Frog.wav</string>
</dict>
</plist>

As for UI settings I made a little preferences app, much more NeXT-like and inspired by Sergii Stoian's one for NeXTspace:
Screenshot from 2024-06-06 17-07-21.png
Here, you can see how I have only one Command key and it's set to the Menu key.
You can check it out if you want for any code examples on how to implement something like that as well at https://github.com/JamieRamone/MondoPreferences.

One thing I'd suggest we do is purge things like Meta and Super from our vocabulary. SUN is dead, and has been for decades. Fancy-shmancy terminals are a relic of a bygone era. Just about everyone has either a PC or a Mac. There are Win, Ctrl, and Alt for PC, and Option, Control and Command for Macs. Also Option = Alt and Ctrl = Control, so the only real "extra" or "new(-ish)" keys are the Win and sometimes present menu keys.That's what the everyday Joe Blow will call them, we should as well. It's just one of the many, many little things that hamper wide(r)-spread adoption.

On Thu, Jun 6, 2024 at 6:24 AM Riccardo Mottola <riccardo.mottola@libero.it> wrote:
Hi,

Richard Frith-Macdonald wrote:
> Yes, I'm sure SystemPreferences.app has a panel for mapping modifier keys.
> I have a vague memory that there's documentation on how to do it with the defaults system too.

Exactly, SystemPreferences is just a graphical front-end for those defaults.

An "ugly" detail is that in case you set them to "none", so you don't
see the standard defaults. While logic from a systempreference to be
able to "unset" the defaults is sound (an for power users), it is user
confusong for a non-tech person.

> But I guess the point is to try to improve the baseline mapping 'out of the box' (I'm just not sure it's worth the effort of writing code to try to figure out the capabilities of the hardware you happen to be running on though).

I am not suggesting to write code to figure out if there is an extra key
or not. I don't even think this is feasible beyond testing (attach a new
keyboard to a Mac and it will ask you to press certain keys to see if
they exist...).
More some smart defaults... e.g. different priority in key and mouse
modifiers... or someething. I argue the current is not optimal.

Riccardo


reply via email to

[Prev in Thread] Current Thread [Next in Thread]