Synergy Key Mapping

For what it's worth, I finally took the time to figure out my Synergy mapping setup.

Linux server (desktop), OS X client (macbook). I wanted the following:

  • Ctrl on desktop -> Ctrl on macbook
  • WinKey on desktop -> Command/⌘ on macbook
  • Alt on desktop -> Alt/Option on macbook

This allows for the same keyboard mappings that my Hackintosh desktop keyboard uses, so keyboard shortcuts like copy/paste are still different between Linux and OS X, but I'm okay with that.

I used the following config:

section: screens
    desktop:
          # Linux server, no mapping
    batbook:
        # OS X client
        ctrl = ctrl
        alt = meta
        super = alt
        # meta = ??  # no idea where this shows up on the client end
end

I was in a similar situation at one point, and I found a somewhat 'unique' way around it. Plug the keyboard directly into your Mac, and edit the keyboard preferences directly. After that, any non-Apple keyboard you attach will use those mappings.

  1. Plug in they keyboard.
  2. Open System Preferences (Apple Menu -> System Preferences).
  3. Enter "Keyboard" preferences (under Hardware).
  4. From the "Keyboard Mapping" (or similarly named) tab, change the key mapping as you see fit.

Synergy+ will use these key mappings, since it identifies as a virtual keyboard.

EDIT: Equivalent mappings, based on function:

Linux   │ Mac
────────┼─────────
Control │ Command
Alt     │ Control
Meta    │ Alt
Shift   │ Shift
Super   │ Super

Mac has the extra modifier key (kind of like the old EMACS-style keyboards, which had up to 5 modifier keys). Super is generally deprecated, so you shouldn't have to worry about remapping it.


I have a mac full size keyboard plugged into my PC which is synergy server.

When connected to mac client (osX mountain lion), I've switched ctrl and commmand keys so that ctrl-c copies regardless of machine.

This is done in the synergy gui by double clicking the client and setting:

ctrl: Meta meta: ctrl

I hope this helps!