Integration with Visual Studio

ViEmu integrates seamlessly with the Visual Studio development
environment. When you open a source code or text file, ViEmu steps in and
provides vi/vim emulation within the newly opened text editing window. The
status bar also shows the current ViEmu mode ("normal", "input", etc...), as
well as the partial command input until now.

Intellisense works within ViEmu editing windows in the same way as with
the regular Visual Studio code editor, so you actually get the best of both
worlds.

Visual Studio key mappings are available even in ViEmu editing
windows, so you can use its commands to move around. If a ViEmu key and a
Visual Studio keybinding clash, Visual Studio has precedence. So, if you want
to use, for example, C-D in order to scroll down, you need to unassign it from
any Visual Studio command.

ViEmu supports both the vi/vim input model (mostly all NORMAL mode commands,
as well as vim's exclusive and very useful VISUAL mode), and the ex command line.

ViEmu works with any type of Visual Studio recognized language, with all the
IntelliSense and autocompletion features. It has been tested with C++, C#
and Visual Basic code.

Apart from that, ViEmu tries to address the most common input inconvenience of
vi/vim. In vi/vim, if you accidentally hit the Caps Lock key, and then start
keying in commands, things behave in a weird way. For example, you may press
'i' believing that you will be entering text at the current position, only to
find that the cursor moves over to the first non-blank character in the line.
In order to prevent this, and given that using Caps Lock with commmand input
seems of little use, there is an option to ignore the state of Caps Lock for
commands. When the option is activated, ViEmu looks at whether the
Shift key is pressed instead of paying attention to the caps lock key, and does
the right thing. If you accidentally activate caps lock, you will harmlessly
notice it only when you start entering text, which is a very minor nuisance.