spacemacs/layers/+chat/slack
syl20bnr fb27ede558 Bump year in copyright headers
Happy New Year 2017!
2017-01-05 23:08:17 -05:00
..
img Move slack layer to +chat directory 2016-06-04 00:20:36 -04:00
packages.el Bump year in copyright headers 2017-01-05 23:08:17 -05:00
README.org Fix minor typo 2016-11-14 14:40:53 +02:00

Slack layer

/TakeV/spacemacs/media/commit/23ea8871076ce42dc588f09ba69fc4d4c85d3c48/layers/+chat/slack/img/slack.png

Description

This layer provides an interface to the Slack chat service via the emacs-slack package. Where possible, this layer aims to reuse keybindings from the IRC packages in Spacemacs.

Install

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

Configuration

Follow the instructions in the emacs-slack package for obtaining your client ID, client secret, and token.

To test that everything is alright put the following snippet in your dotspacemacs/user-config() replacing client-id, client-secret and token with your info.

Important Do not keep private data in your dotfile. You can put your private stuff elsewhere (like Dropbox for instance) and load the file in your dotfile.

(slack-register-team
  :name "emacs-slack"
  :default t
  :client-id "my@email.address"
  :client-secret "mypassword"
  :token "token"
  :subscribed-channels '(general slackbot))

Key bindings

Key Binding Description
SPC a C s (Re)connects to Slack
SPC a C j Join a channel
SPC a C d Direct message someone
SPC a C q Close connection
SPC m j Join a channel
SPC m d Direct message someone
SPC m p Load previous messages
SPC m e Edit message at point
SPC m q Quit Slack
SPC m m Embed mention of user
SPC m c Embed mention of channel

The following bindings are provided to mimic bindings in the official Slack client.

Key Binding Description
<SPC> m k Join a channel
<SPC> m @ Embed mention of user
<SPC> m # Embed mention of channel

In insert state, one can also use @ and # directly without the leader key prefix.