# Vim: enable sending multiple keystrokes from custom keybinding \(\#7965\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/8a73bc4c7dc8753e47b0e7f6f22c50dfa6937031)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: 8a73bc4c7dc8753e47b0e7f6f22c50dfa6937031

Requested commit: 8a73bc4c7dc8753e47b0e7f6f22c50dfa6937031

Commit: 8a73bc4c7dc8753e47b0e7f6f22c50dfa6937031

Tree: da9c4c4e1dd89e9b4df17fcc3f228887f97c3888

Author: N

Committer: GitHub

## Message

````
Vim: enable sending multiple keystrokes from custom keybinding (#7965)

Release Notes:

- Added `workspace::SendKeystrokes` to enable mapping from one key to a
sequence of others
([#7033](https://github.com/zed-industries/zed/issues/7033)).

Improves #7033. Big thank you to @ConradIrwin who did most of the heavy
lifting on this one.

This PR allows the user to send multiple keystrokes via custom
keybinding. For example, the following keybinding would go down four
lines and then right four characters.

```json
[
  {
    "context": "Editor && VimControl && !VimWaiting && !menu",
    "bindings": {
      "g z": [
        "workspace::SendKeystrokes",
        "j j j j l l l l"
      ],
    }
  }
]
```

---------

Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
````

## Parents

- [8f5d7db8751f64e96aef917a4ac9cc536a72549a](https://git.cafe/gitcafe/zed/commit/8f5d7db8751f64e96aef917a4ac9cc536a72549a?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/8a73bc4c7dc8753e47b0e7f6f22c50dfa6937031?format=markdown)
