2016-03-24 10:28:55 +03:00
[![Build Status ](https://travis-ci.org/VSCodeVim/Vim.svg?branch=master )](https://travis-ci.org/VSCodeVim/Vim) [![Slack Status ](https://vscodevim-slackin.azurewebsites.net/badge.svg )](https://vscodevim-slackin.azurewebsites.net)
2015-12-02 12:56:34 +03:00
2016-01-07 02:59:32 +03:00
# Vim
2016-07-04 11:48:04 +03:00
VSCodeVim is a [Visual Studio Code ](https://code.visualstudio.com/ ) extension that provides Vim keybindings within Visual Studio Code.
2016-06-23 11:53:28 +03:00
2016-07-04 11:48:04 +03:00
Please do ** [report your issues on GitHub ](https://github.com/VSCodeVim/Vim/issues )**. We've added a lot of functionality, but everyone uses Vim in their own special way, so let us know if we're missing your favorite obscure command. :wink:
2016-06-23 11:53:28 +03:00
2016-07-04 11:48:04 +03:00
We're also super friendly people if you want to drop by and talk to us on our [Slack channel ](https://vscodevim-slackin.azurewebsites.net )!
2015-11-18 23:00:58 +03:00
2015-11-29 13:37:35 +03:00
![Screenshot ](images/screen.png )
2015-11-18 23:00:58 +03:00
2016-07-07 09:59:05 +03:00
## Features We Support
* All basic modes
* Most typical commands, including command combinations like `c3w` , `daw` , `2dd` , etc. (Check the [roadmap ](ROADMAP ) for details.)
* Repeating actions with `.`
* Incremental search with `/` that works like Vim (doesn't just open the search box!)
* Correct undo/redo state
* Marks
* Command remapping
2015-12-02 12:56:34 +03:00
## Install
2015-11-26 13:40:42 +03:00
2015-12-02 12:56:34 +03:00
1. Within Visual Studio Code, open the command palette (`Ctrl-Shift-P` / `Cmd-Shift-P` )
2. Select `Install Extension` and search for 'vim' *or* run `ext install vim`
2015-11-26 13:40:42 +03:00
2016-01-02 13:28:58 +03:00
## Configure
Adjust configurations through user settings (File -> Preferences -> User Settings).
* vim.keyboardLayout:
2016-01-06 15:05:41 +03:00
* Supported Values: `en-US (QWERTY)` (default), `es-ES (QWERTY)` , `de-DE (QWERTZ)` , `da-DK (QWERTY)`
2016-01-07 02:54:18 +03:00
2016-07-04 20:05:53 +03:00
## F.A.Q.
* How can I bind `jj` to `<esc>` ?
1. Open the Command palette (cmd-p on OSX, probably ctrl-shift-p on Windows), and add the following:
2016-07-04 20:06:25 +03:00
```
"vim.insertModeKeyBindings": [
{
"before": ["j", "j"],
"after": ["< esc > "]
}
]
```
2016-07-04 20:05:53 +03:00
2. If you want to press `jj` in modes which are not Insert Mode and still have it trigger `<esc>` , do the following as well:
2016-07-04 20:06:25 +03:00
```
"vim.otherModesKeyBindings": [
{
"before": ["j", "j"],
"after": ["< esc > "]
}
]
2016-07-04 20:05:53 +03:00
```
3. Restart VSCode!
2016-01-03 11:31:33 +03:00
## Contributing
2016-07-04 11:48:04 +03:00
This project is maintained by a group of awesome [contributors ](https://github.com/VSCodeVim/Vim/graphs/contributors ) and contributions are extremely welcome :heart:. If you are having trouble thinking of how you can help, check out our [roadmap ](ROADMAP ).
2016-06-23 12:21:54 +03:00
2016-07-04 11:48:04 +03:00
For a quick tutorial on how to get started, see our [contributing guide ](/.github/CONTRIBUTING.md ).
2015-11-26 13:40:42 +03:00
2015-11-18 23:00:58 +03:00
## License
2015-11-19 21:22:17 +03:00
2016-07-04 11:48:04 +03:00
MIT, please see [License ](LICENSE ) for more information.