I'm switching from MacOs to Linux and exploring several popular Desktop Environments like KDE Plasma, Gnome & Pantheon, etc.
I find that the MacOS convention of using the meta key (aka command key, aka super key, aka windows key) as the "most common" keyboard shortcut modifier key for UI commands (like "Copy", "Paste", "New Window", etc) is far superior to the Linux/Windows convention of using ctrl instead.
Why?
The
metakey is physically placed in a much easier-to-reach place on the vast majority of keyboards thanctrl, so that performing keyboard shortcuts (aka "chording") is far more ergonomically sound withmetathan withctrl. Repetitive Stress Injury from typing is a real problem, and difficult "chording" is one of the main culprits. Usingmetaas the common modifier improves this.There are several very common traditional terminal/shell keyboard shortcuts that already use the
ctrlkey likectrl-cwhich naturally conflict with the Linux DE convention of usingctrl-cfor a globally-recognized UI "Copy" shortcut. This is aggravating. I gather most Linux terminal emulators offer "special" alternative keyboard shortcuts to perform normal things like "Copy" such asshift-ctrl-c. No bueno. This is annoying and breaks muscle memory.
So I am looking for general strategies (or even specific tactics) of configuring a popular Linux Desktop Environment with the ctrl and meta modifier keys as somehow globally swapped for UI keyboard shortcuts.
As on MacOS, I want typical UI shortcuts (like "Copy", "Paste", "New Window", etc) to use the meta modifier while the traditional shell shortcuts (like ctrl-c, ctrl-d, etc) should remain using the ctrl modifier.
The only option I've tried so far is to use a physical "programmable keyboard" which allows you to reprogram individual keys. This is a poor solution. It kinda-sorta solves problem number 1 above, but does not solve problem number 2.
Any general or specific advice on how to tackle this? I'm willing to try a completely new Linux Desktop Environment if it offers more flexibility in this regard. Tips on which DE might be best for this sort of thing, or tips on how to achieve this in any particular DE are also welcome.
I'm interested in any advice: from high-level (a settings GUI where this can be configured) to low-level (recompiling an entire DE with configuration or code changes). Tips for globally changing this sort of thing are preferred to tips on how to change individual shortcuts for individual commands. Thx!
[link] [comments]