11

I'm using a Macintosh-style keyboard with Loki and would like my modifier keys to work as they do in OS X. That is, I would like:

  • to copy, paste, new window with Super (Cmd) by default and not Ctrl
  • option/alt and the arrow keys to jump whole words
  • essentially the shortcuts as the OS X column says here

I thought that by choosing the "English (Macintosh)" keyboard layout that this would happen automatically—would that be a bug or a feature request? Is there any elementary OS-internal way to activate this? If not, what is the easiest external tool that already has a profile/config set up for this use case?

6

So I futzed around with this for a day (gsettings, built-in shortcuts, xkb, xmodmap) and no turnkey solution is forthcoming, though I filed a feature request that might lead somewhere.

In the meantime and short of rewriting the actual system shortcuts (which is the longterm solution), I'll try to list what I felt was the best way to approximate the OS X experience in elementary OS. Remember the idea is not to simply make the Super/Command key a clone of the Control key (the Control key has its own specific uses in Terminal and elsewhere).

Repurpose existing shortcuts

When a shortcut already is in use but just needs to be mapped to the familiar shortcut, AutoKey is the fastest solution for now. I suggest the following remaps (install directions follow the list):

<ctrl>+C 🠆 ⌘+C     copy
<ctrl>+V 🠆 ⌘+V     paste
<ctrl>+N 🠆 ⌘+N     new window
<ctrl>+T 🠆 ⌘+T     new tab
<ctrl>+W 🠆 ⌘+W     close window

<ctrl>+Z 🠆 ⌘+Z     undo
<ctrl>+F 🠆 ⌘+F     find
<ctrl>+A 🠆 ⌘+A     select all text

skip between... (for each, remember to add both left/right up/down pairs and to add highlight versions by adding <shift> as a separate entry)

<ctrl>+<left> 🠆 <alt>+<left>   words
<ctrl>+<up> 🠆 <alt>+<up>       paragraphs
<home> 🠆 <super>+<left>        go to beginning of line
<end> 🠆 <super>+<right>        go to end of line
<ctrl>+<home> 🠆 <super>+<up>   go to top of text
<ctrl>+<end> 🠆 <super>+<down>  go to bottom of text

To install:

  1. sudo apt-get install autokey-gtk
  2. Open AutoKey from the Applications drawer
  3. Add "New" item and put the existing shortcut in the text field (e.g., <ctrl>+T)
  4. Set the hotkey (e.g., press Cmd+T, which will show as <super>+T)
  5. Keep the rest of the defaults and repeat

You'll need to deactivate the shortcut conflicts with the Keyboard preference pane, or use these:

gsettings set org.pantheon.desktop.gala.keybindings expose-windows "['<Super><Alt>w']"
gsettings set org.pantheon.desktop.gala.keybindings expose-all-windows "['<Super><Alt>A']"
gsettings set org.gnome.settings-daemon.plugins.media-keys screensaver ''
gsettings set org.gnome.settings-daemon.plugins.media-keys terminal "['<Alt><Super>t']"
gsettings set org.gnome.desktop.wm.keybindings show-desktop "['<Alt><Super>Down']"

This solution might not behave as expected in all applications, but this is only jury-rigged until someone fills the feature request on Launchpad.

  • I understand that it is impossible to assign Cmd+Space to switching layouts. – png2378 Sep 25 '16 at 19:41
  • @MaximTaranov, do you mean switching keyboard layouts? Or turning all of the above settings on/off? You can unmap Cmd+Space with Keyboard > Applications > Applications Launcher and reassign it as you please – wolf Sep 25 '16 at 19:55
  • 1
    @MaximTaranov, medium.com/@andv/… – wolf Sep 28 '16 at 3:17
  • 1
    @ElleryFamilia yep! "new phrase" is for simple text insertion, and "new script" is for when you want to trigger code – wolf Jun 13 '17 at 23:38
  • 1
    @ElleryFamilia Please see my blog post for a complete set of Autokey hotkeys: yimd.net/in-the-quest-of-finding-an-open-macos – danyim Sep 26 '17 at 8:46
3

I wanted to switch the Left Alt and Left Ctrl locations. I was able to accomplish this by installing the Gnome Tweak tool and adjust it under the typing settings. I think so longs as your not adjusting anything else in the gnome tweak tool you should be fine.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.