Go to file
2016-10-29 17:57:58 +02:00
components Fix clear message 2016-10-22 10:51:21 +02:00
config Make keys mappable 2016-10-29 17:57:58 +02:00
context Make keys mappable 2016-10-29 17:57:58 +02:00
handlers Make keys mappable 2016-10-29 17:57:58 +02:00
service Move authTest before creation of RTM 2016-10-21 14:05:36 +02:00
vendor Update project structure 2016-10-19 09:11:35 +02:00
views Update project structure 2016-10-19 09:11:35 +02:00
.gitignore Update project structure 2016-10-19 09:11:35 +02:00
LICENSE Make project public 2016-10-02 16:08:59 +02:00
main.go Make keys mappable 2016-10-29 17:57:58 +02:00
Makefile Move authTest before creation of RTM 2016-10-21 14:05:36 +02:00
README.md Make keys mappable 2016-10-29 17:57:58 +02:00
screenshot.png Make ready for beta release 2016-10-16 13:32:05 +02:00

Slack-Term

A Slack client for your terminal.

Screenshot

Getting started

  1. Download a compatible version for your system, and place where you can access it from the command line like, ~/bin, /usr/local/bin, or /usr/local/sbin. Or get it via Go:

    $ go get github.com/erroneousboat/slack-term
    
  2. Get a slack token, click here

  3. Create a slack-term.json file, place it in your home directory. The file should resemble the following structure:

    {
        "slack_token": "yourslacktokenhere",
    
        // optional: add the following to use light theme, default is dark
        "theme": "light",
    
        // optional: set the width of the sidebar (between 1 and 11), default is 1
        "sidebar_width": 3,
    
        // optional: define custom key mappings
        // (shown are the default key mappings)
        "key-map": {
            "command": {
                "i":          "mode-insert",
                "k":          "channel-up",
                "j":          "channel-down",
                "g":          "channel-top",
                "G":          "channel-bottom",
                "<previous>": "chat-up",
                "C-b":        "chat-up",
                "C-u":        "chat-up",
                "<next>":     "chat-down",
                "C-f":        "chat-down",
                "C-d":        "chat-down",
                "q":          "quit",
            },
            "insert": {
                "<left>":      "cursor-left",
                "<right>":     "cursor-right",
                "<enter>":     "send",
                "<escape>":    "mode-command",
                "<backspace>": "backspace",
                "<delete>":    "delete",
                "<space>":     "space",
            }
        }
    }
    
  4. Run slack-term:

    $ slack-term
    
    // or specify the location of the config file
    $ slack-term -config [path-to-config-file]
    

Default Key Mapping

mode key action
normal i insert mode
normal k move channel cursor up
normal j move channel cursor down
normal g move channel cursor top
normal G move channel cursor bottom
normal pg-up scroll chat pane up
normal ctrl-b scroll chat pane up
normal ctrl-u scroll chat pane up
normal pg-down scroll chat pane down
normal ctrl-f scroll chat pane down
normal ctrl-d scroll chat pane down
normal q quit
insert left move input cursor left
insert right move input cursor right
insert enter send message
insert esc normal mode