Does anyone have a HOWTO on creating efficient keybindings and invocation of Emacs for the iMac Bluetooth keyboard pictured here?

Specifically one or more of the following use cases:

  • Invocation of Emacs in ssh terminal session to VM with VT100 emulation within Terminal.app.
  • Invocation of Emacs with X-mode in terminal session to VM within Terminal.app.
  • Invocation of Emacs in Mac OS within Terminal.app
  • Invocation of XEmacs in Mac OS

As you can see from above, I'm trying to invoke Emacs from within a VM for security reasons.

I'm seeking similar meta and control keybindings as the LMI or Knight keyboard pictured and a way to switch back and forth without impact OSX keybindings. For instance Meta should be Fn, Control or Option on the iMac Bluetooth keyboard. Command should be Control on the iMac Bluetooth keyboard.

I'm hoping some hard core Emacs LISP / Scheme users have such keybindings.

Thank you

iMac Keyboard

LMI Keyboard

Knight Keyboard


Have you tried using customize-group ns to interactively modify the keys to be as you want them? It's not possible change the role of FN in application settings, but Command and Control can be switched. Typically, one would set Ns Command Modifier to Meta, but to accomplish what you want, you could set it to Control and then set Ns Control Modifier to Meta.

The ns group corresponds to GNUstep/macOS specific features, so it's available in Emacs versions such as Emacs for OS X.

Another tricky element is that terminal emulators have their own shortcuts using modifier keys. You may need to use a more customizable terminal emulator like iTerm to set the modifier key behavior to be agreeable with Emacs. When I open Emacs in the terminal, Cmd doesn't work as Meta anymore, and instead I have to use Alt. So I've customized iTerm with a few custom Cmd+Key shortcuts to send Meta+Key (^[ + key)

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.