ViEmu Blog

A blog about all things ViEmu
the one true editor
since 2005!

Archive for the ‘misc’ Category

ViEmu/VS2010 2.5.9 with VS-selection, great performance and other stuff

Saturday, October 16th, 2010

So, we had to address a few remaining issues to call this a “high-quality” ViEmu/VS2010. We’ve been doing just that, and the release is ready.

[Update – if you want the latest, please see 2.5.10:]

The main missing thing, and most requested one, was making ViEmu use VS’s selection to handle visual mode. This option was present in ViEmu/VS “Classic”, but the previous ViEmu/VS2010 still didn’t offer it. This option allows ViEmu to interoperate much better with other VS add-ins or even internal VS functionality, as these expect text to be selected using VS-Selection. Of course, this feature also allows to use ViEmu to delete a range selected by other means: just select a region with, say, the mouse, and press ‘d’. The improved interoperability comes at the expense of more faithful vim visual range emulation: VS’s selection just doesn’t allow some of the exotic things that vim’s visual range does (cursor in the middle, etc..). For many people, this is a great trade-off.

And the second most-requested feature was improving the perfomance, and oh boy have we improved in that regard! Isaac, the lead dev of ViEmu/VS2010, has used the new edit-batching APIs inVS2010, and now many operations are blazingly fast. In some (if not all) cases, ViEmu/VS2010 is faster than ViEmu/VS “Classic”.

We’ve also fixed some bugs, improved compatibility with other 3rd party tools, etc… so here is the detailed change log:

  • Implemented remaining ViEmu settings, including ‘Use VS Selection for visual mode’, implemented.
  • Performance improvements, specially for cut/paste and search&replace operations.
  • ViEmu enters visual mode automatically when an external VS selection is made.
  • ViEmu provides a MEF service that exposes the same functions that the ViEmu “Classic” did.
  • ViEmu caret shows now correct size and position when Windows DPI settings are changed.
  • ViEmu caret should not appear anymore when opening a file while ViEmu is disabled.
  • ViEmu caret blinking time is now read from the system’s settings.
  • Fixed a bug that prevented some Visual Studio commands from being executed through the :vsc ex command.
  • Fixed a bug that caused Visual Studio package projects to not be created correctly through the VS New Project Wizard.
  • Fixed an incompatibility bug with Visual Assist that caused the insertion of }])'” in normal/visual mode when the Visual Assist option ‘Insert () and closing })]'”‘ was checked.
  • Added the ‘Use adornments for hlsearch and visual range’ setting: Text adorments have been used until now for visual range and highlight search markers. These adornments render behind the text and preserve syntax highlight of the text marked, and thus don’t allow for text foreground color modification. If this setting is unchecked, the text itself of the hlsearch or visual range will be modified, and the foreground color selected in ‘Fonts and Colors’ will affect the foreground text color.

You need valid support as of October 12, 2010 for this to work fine. If you bought ViEmu/VS before October 12, 2009, head over to to renew your support for one year for a hopefully-very-reasonable $29.

And here is the link to download it:

And be sure to let us know how it works for you!

ViEmu/VS2010 2.5.7 with Visual Assist and Resharper support

Monday, August 16th, 2010

We have prepared and uploaded a new version of ViEmu/VS2010, addressing the important issue of third-party add-in compatibility. Our effort has gone to make ViEmu behave as best as possible with the two most popular third-party add-ins: Whole Tomato’s Visual Assist, and JetBrains’ Resharper. It’s still not perfect, but it should provide a much better experience. Here’s the list of things (there are also a couple of bugfixes thrown in for good):

  • vaxesc option support (to make Esc both close down the Visual Assist drop down and exit insert mode)
  • Visual Assist suggestions disabled in normal mode (this was a tough nut to crack)
  • Resharper’s Rename command is detected and ViEmu auto-enters insert mode
  • ViEmu’s ‘.’ command now works correctly even if Visual Assist is configured to convert it to ‘->’ in some cases
  • ViEmu’s “Default to Windows clipboard” option should now work just fine
  • License detection code now works with temporary licenses (we sometimes send them out manually, to extend trials, etc…)

Here is a link to download it:

You will need your support up to date as of August 9. As always, renew it if necessary at the customer area:

Let us know how it works!

ViEmu/VS2010 Release Candidate 2

Monday, July 19th, 2010

We decided it was necessary, and we have addressed the performance issues with hlsearch before the official release. This new version, RC2, works fast for scrolling even in my lowly but lovely Asus EEE PC 1005. It should fly on anything else. Search/replace may still be slow, we’ll address that in a future version.

Download here:

If nothing acts up, this will become the official ViEmu 2.5 for VS2010 in a couple of days. All feedback is welcome.

ViEmu/VS2010 Release Candidate 1

Friday, July 16th, 2010

You can download the ViEmu/VS2010 Release Candidate 1 here:

We are trying to get this out of the door and start the upgrade process for everyone, even if there are a few things that we will address in version 2.6 (this one will be numbered 2.5.5).

Things addressed in this release:

  • Ctrl-Backspace/Ctrl-Delete delete whole words in insert mode
  • Block visual mode works fine with $
  • Better support for more types of files (html, aspx)
  • Fixed a bug that caused the ViEmu caret to appear in random places
  • Fixed crash when setting keybindings in non-US, localized VS versions
  • License key processing more reliable, button to remove license from settings window
  • Several other minor bugfixes

Apart from these there are a few things which we know are not fully ok, but we have left them for 2.6, due out in the next few weeks. The current version is more than usable for many customers. Here are the limitations in this release:

  • Compatibility with other 3rd party add-ons is not fully supported. If you are using Visual Assist, Resharper,  PowerGUI or others, you may experience usability issues.
  • Performance is sometimes poor, especially with hlsearch and search/replace
  • Some settings like “‘Use VS selection for visual mode” or “Ignore Caps Lock state in normal mode” are still non-functional

We plan to address these issues in the next few weeks.

Meanwhile, if you find some problem that would make this RC1 a bad “first official non-beta” release for a standard installation of Visual Studio, let us know, so that we can address it for the final version or in an RC2.

If everything goes well, we’ll release this officially next week and start to allow upgrading existing licenses via the customer area.

ViEmu/VS2010 Beta 8

Friday, July 9th, 2010

This is the latest beta, which will work for everyone until next week (when we’ll hopefully have a Release Candidate rather than a beta!):

Main changes in this release:

  • Settings dialog
  • Documentation
  • Timeout support for ambiguous multiple-key mappings
  • gj/gk now supported
  • Fixed: dd on the last line would delete two lines
  • Several other bugfixes

Pending things for RC are: bug-fixes and better recognizing of license key even if it has been garbled over email. Performance and compatibility with other 3rd party add-ins will be addressed after the official release.

By the way, I checked it and realized the settings dialog is really ugly on Windows XP with classic look.  Oh my, WPF. We’ll try to do something about it.

ViEmu/VS2010 Beta 7

Wednesday, June 30th, 2010

So, we had to hurry this a bit since the beta 6 period will expire tomorrow:

We left out the settings window (which is half-done now but not included in this release) and the new documentation. Hopefully by next wee. Anyway, here is the list of thing we improved (quite a few):

  • Fixed: When the cursor is on a collapsed section, Shift-Y hangs the IDE.
  • Fixed bugs related to selections and collapsed regions.
  • Fixed: With the cursor on the same line as a collapsed section, ‘o’ doesn’t insert a line below the expanded section, but instead above it, without the cursor moving down a line, effectively staying on the same line as the collapsed section.
  • zR now does ‘ToggleAllOutlining’.
  • Fixed: sometimes VS caret regained visibility in views.
  • Fixed bug&exception when doing v$x (did nothing or throwed an exception). It also happened with any other command after v$.
  • Fixed an exception in Output/Find Result/… windows related to refering to different snapshots when doing hlsearch.
  • Added viemu undo markers to ‘create/destroy fold’ actions.
  • Extended trial period to 9/7/2010

Again, all feedback is welcome. We expect a Beta8 by next week which should already feel like an RC. We’ll leave the performance issues for a revision shortly after the RC.

ViEmu/VS2010 Beta 6

Thursday, June 24th, 2010

Beta 6 is now ready. This will work even after the “expiry” of the built-in trial period for some more time, as the beta proceeds:

This is closer to the Release Candidate, hopefully ready in a few days. Here are the main changes:

  • Folding/outlines/wordwrap support (pending gj/gk)
  • Added commands for all key combinations. Now you can map Ctrl-Shift-Alt-Underscore, etc… you also need to go to Tools|Options|Environment|Keyboard and assign the keypress to ViEmu.KeypressCtrlShiftAltUnderscore for VS to route it.
  • End-of-trial-period and license-related messages hopefully fixed

Now we’re off to doing the settings window, the docs, and finishing the remaining little glitches, to try and get to RC1 quickly. After that, the first official release. And after that, we’ll concentrate on all issues when interacting with other popular third-party add-ons, for a new release afterwards.

Please keep the feedback coming.

ViEmu/VS2010 Beta 5

Wednesday, June 9th, 2010

This version addresses the main issues in Beta 4, mainly the “massive-undo” bug that could cause ‘u’ to undo a long chain of edits. It should be much closer to release quality (pending docs, settings dialog and a few more features):

Change log:

  • Undo/Redo grouping fixed. ViEmu would undo a lot actions some times, now it won’t.
  • Ctrl-] (Go To Definition) working.
  • Ctrl+Left/Right now work as expected in insert mode.
  • Shift+CursorKey now works as expected, moving cursor and extending VS selection. Pending to make it work in command mode (ViEmu-VS selection integration).
  • Fixed caret shape not reflecting ViEmu mode when switching views.
  • ‘Ctrl-R + char’ now works in input mode (paste from clipboards).
  • Fixed the exception thrown when trying to copy text from VS2008 to VS2010 through viemu y/p commands. Text can now be copied normally.
  • HLSearch now updates correctly when scrolling or changing views.
  • Added ‘Enter License Key’ to ViEmu menu.

We want to get out of beta and release properly as soon as possible, hopefully in very few weeks. “Official release” means not having serious bugs, but we might delay some still-important features to a later release, such as better keyinding management or even folding/regions support. Work on these will start without delay right after the release, but it’s important for us to get to “official” release and finalize all important pieces.

All feedback is welcome.

PS: In case you’re curious, the “massive-undo” is caused by the internal ViEmu undo-grouping mechanism failing to close in some cases, and thus becoming inactive and grouping too many actions together. We now close the undo group on the editor’s lose/gain focus, as we did in ViEmu “Classic”, and this fixes the problem.

ViEmu/VS2010 Beta 4

Wednesday, June 2nd, 2010

Here is Beta 4:


  • Fixes accumulative slowdown  in insert mode
  • Fixes operation of undo/redo in some cases (not sure it’s all of them though)
  • Initial rough version of hlsearch support

This version is a bit rough, especially hlsearch, but I wanted to release a version without the slowdown, and see if our different handling of undo/redo would fix the difficult-to-reproduce undo problem. So it wouldn’t be worse than Beta3 in any case.
Thanks for your feedback!

ViEmu for VS2010 Beta 3 and other ViEmus 2.5.4

Tuesday, May 25th, 2010

The new ViEmu 2.5 has been available for a while, but I still haven’t emailed all existing customers about it. I wanted to make sure the new customer area was properly tested, that there was usable ViEmu/VS2010 beta, and that the license-key system transition would be as smooth as possible.

Fixing one last minor-but-annoying problem, I have uploaded the new 2.5.4 version of all the ViEmus to the main site. The main fix is that it didn’t properly recognize licenses that had had extra spaces tacked on to the end some or all lines. This seems to happen often with some email clients and gateways out there, so the issue was coming up repeatedly. The new release fixes this minor niggle. So, apart from this, this version is functionally equivalent to the previous one, no real need to reinstall if you have 2.5.3 working fine. There is also a Codekana 1.5.4 release with the same change.

We have also prepared ViEmu/VS2010 Beta 3, with this last fix in license-key recognition, and also adding the functionality to recognize Ctrl-[ as Escape, which several users have requested. Given the new input processing mechanism in ViEmu/VS2010, we had to reimplement this. Here is the link to install the new beta:

Once you install it (no need to uninstall previous betas first), you may have to use the “ViEmu->Set Keybindings” to assign the correct command to the Ctrl-[ keybinding. If you want to do it manually to avoid other keybinding changes, you can go to Tools|Options|ViEmu and assign the command “ViEmu.ViEmuCtrl[” to keypress Ctrl-[. Let us know how it works for you.

Finally, I have also added a links to the customer area to the navigation bar at the top, and an article explaining the new licensing system and the reanoning behind it:

If all goes well, I will email every customer tomorrow with an announcement of the new available releases, and hopefully it won’t be a support nightmare!


ViEmu: vi/vim emulation for Visual Studio, Word, Outlook and SQL Server:
See where ViEmu customers are around the world:
Map of ViEmu customers around the world
Hear what others are saying about ViEmu:
ViEmu testimonials
Learn vi/vim easily with this cheat-sheet and tutorial:
Vi/vim Cheat Sheet and Tutorial
Read why vi/vim editing is the killerest:
Why vi/vim editing?
Discover ViEmu's sister product, Codekana:
Codekana outliner and syntax highlighter