Table of Contents

OSX layer

Table of ContentsClose


1 Description

Spacemacs is not just emacs+vim. It can have OSX keybindings too! This layer globally defines common OSX keybindings. is set to super and is set to meta. Aside from that, there's nothing much, really.

While in dired this layer will try to use gls instead of ls.

2 Philosophy

While this layer enables common OSX bindings, it does not implement OSX navigation keybindings. Spacemacs is meant to be used with evil, and we encourage you to do so :)

3 Install

3.1 Layer

To use this configuration layer, add it to your ~/.spacemacs. You will need to add osx to the existing dotspacemacs-configuration-layers list in this file.

3.1.1 Use with non-US keyboard layouts

If you need the key to type common characters such as {[]}~ which is usual for e.g. Finnish and Swedish keyboard layouts, you'll probably want to leave the key unchanged by setting the osx-use-option-as-meta variable to nil:

(setq-default dotspacemacs-configuration-layers '(
   (osx :variables osx-use-option-as-meta nil)))

If you have problem entering symbols that are behind the key you may want to added this to the user-init in the .spacemacs-File. This will allow you to use the right key to write symbols. The left key can be used as the Meta key.

(setq-default mac-right-option-modifier nil)

3.1.2 Define words using OS X Dictionary

This layer by default enables defining words under point SPC x w d using OS X Dictionary. In some cases you might want to manually setup dictionary to use. For example,

(setq-default dotspacemacs-configuration-layers '(
   (osx :variables osx-dictionary-dictionary-choice "English")))

To get the list of available dictionaries call osx/list-available-dictionaries function.

You can disable it by setting osx-use-dictionary-app variable to nil:

(setq-default dotspacemacs-configuration-layers '(
   (osx :variables osx-use-dictionary-app nil)))

3.2 Coreutils

To get gls install coreutils homebrew:

brew install coreutils

4 Key Bindings

Key Binding Description
⌘ = Scale up text
⌘ - Scale down text
⌘ q Quit
⌘ v Paste
⌘ c Copy
⌘ x Cut
⌘ a Select all
⌘ w Close window
⌘ W Close frame
⌘ n New frame
⌘ z Undo
⌘ Z Redo
⌃ ⌘ f Toggle fullscreen
SPC x w d Define word under the point

5 Future Work

  • Allow user to choose from either hyper or super as . This is an option that is supported cross-platform.
  • Configurable option to keep the OSX and spacemacs clipboards separate

Author: Sylvain Benner

Created: 2016-10-03 Mon 00:55