jpbruinsslot/slack-term

Merge default and user keybindings

andys8 opened this issue · 1 comments

Is it possible to merge the user keybindings with the default keybindings?

In my case I wanted to have a slight change:

  "key_map": {
    "command": {
      "K": "chat-up",
      "J": "chat-down",
      "H": "thread-up",
      "L": "thread-down"
    }
  }

But all default keybindings for normal mode are dropped.
It's necessary to copy paste them, and keep them in sync with future changes/releases (e.g. new features).

  "key_map": {
    "command": {
      "K": "chat-up",
      "J": "chat-down",
      "H": "thread-up",
      "L": "thread-down",
      "i": "mode-insert",
      "/": "mode-search",
      "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",
      "n": "channel-search-next",
      "N": "channel-search-previous",
      "'": "channel-jump",
      "q": "quit",
      "<f1>": "help"
    }
  }

I would prefer if those would be merged with the default keybindings. To explicitly remove a keybinding (also this is probably not often the case) one could set and overwrite the binding with null.

Thanks for slack-term. Look pretty neat :)


Version: 0.5.0
Installation method: Nix (https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/networking/instant-messengers/slack-term/default.nix)

Yeah, sound like a good idea. I'll have a look at it