Vrapper / News: Recent posts

0.72.0 Released

This project has been quiet for a while. We only have 2 main developers and neither of us use Eclipse in our daily job anymore. But, people are still submitting Pull Requests so I'll keep merging them in and doing releases as long as people are still interested.

Changes since 0.70.0 are:

  • Added a port of justinmk's Sneak plugin
  • Added ability to set custom .vrapperrc location with vrapper.vrapperrc system property
  • Added ability to map eclipse motions with <Plug>()
  • Added support for :delmarks command
  • Added :se shortcut for :set command
Posted by Kevin 2017-03-11

0.70.0 Released

This is a very small release and I probably could've just waited longer until there were more changes worth releasing, but I think it's good to have a reliable release cycle and we've been doing two-month releases for awhile now. Of course I rushed out 0.68.1 a little more than a month ago and we've only had two changes since then. So I do 0.xx.0 releases every two months and 0.xx.1 releases when needed. It makes sense to me at least. Anyway, these are the only changes between 0.68.1 and 0.70.0:... read more

Posted by Kevin 2016-08-07

0.68.1 Released

We had a regression in the 0.68.0 release and I debated whether it was critical enough to release a 0.68.1 to fix it. The defect isn't major but it's in a common enough feature ('*' and '#') that a lot of people have noticed it. Given that Eclipse Neon was just released, I'm guessing a lot of people will be re-installing the current stable build of Vrapper with it. I figured it's best to have a solid release for those people. So here's a quick release with a couple issues we've fixed in the last month. They are:... read more

Posted by Kevin 2016-06-24

0.68.0 released

I was able to find some time this month to work on new Vrapper features, including some plugin requests that have been sitting around for a while. Of course, this project is so mature now that we're looking at the more obscure features in Vim but all of these were requested by users filing Issues on our GitHub page. We hope you continue to enjoy Vrapper!

  • Fixed issue where recording a macro would overwrite the unnamed register
  • Fixed issue executing a macro with a count
  • Fixed issue where * search wasn't using iskeyword value to determine word boundaries
  • Fixed sentence motions ( ) and text object s when sentence ends on a newline
  • Added support for Mac command key mappings <D-
  • Added support for % to jump between block comment /* */ tokens
  • Added support for \%V in command-line substitutions and search for limiting to visually selected area
    • useful when selection isn't line-based
  • Added support for \k regex class for iskeyword value
  • Added support for searching from command-line (ex) mode :/ and :?
  • Added support for <Leader> and :let mapleader=
  • Added support for comment text objects ic/ac and iC/aC
    • supports single line comments //, #, --
    • supports block comments /* */, <!-- -->
    • See this comment for more details
  • Created a new optional plugin for sub-word motions
    • Moves over words within snake_case and camelCase names
    • Based loosely on https://github.com/bkad/CamelCaseMotion
    • Details here: Sub-Word Plugin
    • Convenience command :subwordmappings will setup default mappings:
      map \b <Plug>(subword-back)
      map \e <Plug>(subword-end)
      map \w <Plug>(subword-word)
      map i\ <Plug>(subword-inner)
      map a\ <Plug>(subword-outer)
  • Created a new optional plugin to "cycle" through word replacements
    • Based on https://github.com/zef/vim-cycle
    • Details here: Cycle Plugin
    • <C-a>/<C-x> will replace word under cursor with next item in cycle
    • :AddCycleGroup foo bar baz = foo->bar->baz->foo->...
    • Default cycle true->false will toggle "true" to "false" with a single keystroke
Posted by Kevin 2016-06-04

0.66.0 Released

This new release of Vrapper is pretty sizable. We received some great help in the form of Pull Requests. Thank you to all our users and contributors keeping this project going!

  • Added support for Doxygen (//!) and C# (///) comments in gq command
  • Added support for 'is'/'as' sentence text object
  • Added support for <C-n> and <C-p> in Line Completion mode
  • Added '%' expansion to filename when using ':!' shell command
  • Add mapping for <C-w>_q to close current tab
  • Fixed g_<C-g> to match Vim output (rather than Vrapper debug info)
  • Fixed intermittent issue causing NullPointerExceptions when switching tabs
  • Fixed issue where a macro didn't have a single atomic undo
  • Fixed issue where :normal command didn't have a single atomic undo
  • Changed behavior to prevent recursive macros from executing
  • Fixed issue where deleting after yanking text to a register would clobber the register
  • Fixed issue with Position Categories which could render editor unusable
  • Fixed issue where setting 'let @x=""' in .vrapperrc would clobber that register every time a new file was opened
  • Fixed inconsistencies in Line Completion mode (<C-x><C-l>)
  • Fixed issue using a visual selection with the Surround plugin
  • Fixed issue with Vrapper interacting with JasperSoft Studio
  • Shift-Arrow keys now enter Visual mode
  • Disable Eclipse's Overwrite mode if the user hits the 'Insert' key
Posted by Kevin 2016-04-03

0.64.0 Released

This new release of Vrapper only has a couple defect fixes but they're important fixes. One defect could create an infinite re-paint loop (crashing Eclipse) and another broke Vrapper in older (< 3.7) versions of Eclipse. Both of those defects are fixed!

  • Fixed issue causing an infinite loop when performing an Eclipse refactor
  • Fixed issue preventing Vrapper from working in older versions of Eclipse (< 3.7)
  • Fixed issue where confirm substitution wouldn't open folds
  • Fixed issue where setting register contents with 'let @' wouldn't allow '=' character
  • Fixed issue with entering search mode on the last line of a file when that line is empty
Posted by Kevin 2016-02-01

0.62.0 Released

Time for another Vrapper release. Some great progress was made in the last two months fixing older defects that have been around for a while. There was also a lot of general refactoring to cleanup the code and fix certain little annoyances. Hope everyone enjoys this new release!

  • Added support for 'o' and 'O' in visual block mode
  • Added support for g_CTRL-G to display cursor position info
  • Fixed issue where a bad regex pattern could crash a Vrapper instance
  • Fixed issue where pressing DELETE in visual mode wouldn't delete
  • Fixed issue when multiple possible mappings are pending
  • Fixed issue with multi-page editors in ABAP Development Tools
  • Fixed error when using Vrapper with Eclipse Overview plugin
  • Fixed corner case where 'gv' wasn't restoring the correct selection
  • Fixed corner case related to executing a mapping after Eclipse auto-completed a set of parentheses
  • Refactored some code to remove hacks for drawing the cursor
  • Refactored code around visual block mode
  • Refactored command-line parsing so multiple spaces can appear between certain commands and their arguments
Posted by Kevin 2015-12-06

0.60.0 Released

It's been another two months so I'm releasing our current changes. Development is still moving slowly, but it's moving forward. Albertdev did a bunch of refactoring to clean up some code under the hood. The work wasn't related to any specific defect but a lot of the commands should be more stable. Here are the changes I can describe:

  • Added support for 'wrapscan' setting
  • We now determine certain default values based on Eclipse settings
    • tabstop, expandtab, newline type, etc.
  • Fixed intermittent display issue with dark themes
  • Fixed issue with 'gq' counting a tab character as one column
  • Massive refactoring of many line-based and :ex commands
Posted by Kevin 2015-10-04

0.56.0 Released

It's been a bit of a slow month for us. There weren't many changes but it's been two months so I might as well do another release. Here are the changes since my last update

  • Fixed issue where some jumps weren't added to Eclipse history and <C-O>/<C-I>
  • Fixed issue where setting a string option to "" wouldn't clear the value
  • Fixed issue where :s// wouldn't clear previous search
Posted by Kevin 2015-06-07

Updates to unstable update site

Here's your monthly status update on recent changes to Vrapper's unstable update site:

  • Added support for fold commands (za, zo, zc, zR, zM) in optional PyDev plugin
  • Fixed issue so ex commands will reuse last search if no pattern is provided
  • Fixed issue with Ctrl- keys when replaying a macro
  • Fixed issue where switching visual modes reset selection
  • Fixed issue with switching to search mode from a visual mode
  • Fixed issue which required whitespace when defining a :move range
  • Fixed issue with :d, :y, and :retab requiring line ranges
  • Fixed issue with Ctrl-A incrementing numbers larger than 32-bits
  • Other various refactoring (not tied to any specific defect)
Posted by Kevin 2015-05-10

0.54.0 Released

Another two months, another Vrapper release. We've now received over 50,000 installs via the Eclipse Marketplace, which puts us at number 42 out of all 1,800+ plugins available in the Marketplace. Thank you everyone who continues to use and support Vrapper!

We now have over 60 issues on our GitHub repository but I noticed something recently: there are only 11 defects. Of course, since I'm the one who labels these items there are another 10 "annoyances", which are items that don't really prevent you from doing anything but would be nice to have. The reason I bring this up is because we have 35 feature requests. Once again, it seems like Vrapper is at the point where we can meet the majority of user's use cases and we're down to the really obscure and difficult features that only power users even know exist. Also, I don't think we have any feature requests which have a "me too!" comment in them; I think all of our feature requests each have one person waiting on them. I may be a little biased, but I think Vrapper is one of the best Vim emulation plugins for any text editor. I'm not aware of any other Vim emulator that has support for additional (ported) vimscript plugins. I think we're doing pretty good!... read more

Posted by Kevin 2015-04-05

Updates to unstable update site

I'm still sticking with our monthly status updates. Here are the changes which are currently on our unstable update site:

  • Added new optional plugin for indent text object
  • Added support for ':let @/ = ""' to clear search highlight
  • Introduced config property 'hlscope' to determine search highlight scope
    • Only valid when ':set hlsearch' is active
    • 'window' - highlight the same keyword in all editors
    • 'clear' - only one editor will have a highlight at a time
    • 'local' - each editor has its own search highlight
    • Default is 'clear'
  • Fixed issue with 'c' and 's' in visual-block mode
  • Fixed issue with XML editor provided by ADT
  • Fixed issue with unintentionally recursive mappings
  • Fixed issue with drawing command-line when no scrollbars present in certain editors
Posted by Kevin 2015-03-10

0.52.1 Released

I just released 0.52.0 a couple days ago but a number of people quickly hit the same problem. Certain command-line commands (such as :w and any mappings to an :eclipseaction) caused the editor to lose focus. This meant you had to click your mouse within the editor to regain focus. As Vim users, we all know how frustrating it is when your hands have to leave the keyboard to use the mouse. So we fixed this issue and released 0.52.1 as quickly as we could. We apologize for any inconvenience.... read more

Posted by Kevin 2015-02-12

0.52.0 Released

While December was extremely slow for us, we did have some code changes in January so I'm sticking with our two-month release cycle and releasing 0.52.0 today. The following changes are in 0.52.0:

  • Added support for 'gn' and 'gN'
  • Added support for ':buffer#' command and Ctrl-^
  • Added support for 'C' in visual mode (alias for 'c' or 's')
  • Changed ':ls' command to be ':files'
  • Fixed issue where '/e' in search didn't work with regex
  • Fixed issue where '<c-=>' couldn't be used in a mapping
  • Fixed issue where canceling a search would also clear the visual selection
Posted by Kevin 2015-02-08

(Lack of) Status Update

It's been a month since 0.50.0 was released so I figured I should stick with my monthly status updates and tell you about the recent changes. However, there is nothing to report. Since 0.50.0 was released there hasn't been a single line of code changed and there hasn't been a single defect filed. December is usually a slow month for us anyway, but I'm surprised we haven't had any defects filed either. I guess 0.50.0 must be a rock-solid release (or you guys must all be busy during December too).... read more

Posted by Kevin 2015-01-04

0.50.0 Released

0.50.0 has been released, continuing with our two-month release cycle. At this point, I think I've been fully relegated to Project Manager status as albertdev has stepped up and handled basically all development in this release. He's much better at this than I am and Vrapper is stronger for it. I'll take credit for resurrecting this project when the original authors abandoned it, but albertdev is the one who is able to fix the really difficult defects and introduce tough new features. Thank you albertdev for your amazing work!... read more

Posted by Kevin 2014-12-08

Updates to unstable update site

It's been another month, time for your monthly status update with Vrapper. We've made the following changes on the unstable update site:

  • Added new "line" text object plugin
  • Added support for 'gI' (insert at column 0)
  • Added support for ':cmap'
  • Fixed issue where word text objects would stop at unicode characters
  • Fixed issue with 'O' on the line below a closed fold
  • Fixed issue where 'q' (record macro) couldn't be re-mapped
  • Fixed issue with 'A' in visual-block mode
  • Fixed issue with '>' indent command with counts in visual mode
  • Fixed issue which prevented a custom ':command' from using ':normal'
  • Fixed issue where '\t' in substituion text couldn't be escaped
  • Fixed styling issues in status bar
  • Fixed behavior when toggling between visual mode and visual-line mode
  • Changed 'ge', 'gE', and 'w' to be more vim-compliant in visual mode
  • Various refactoring of old defect fixes
Posted by Kevin 2014-11-06

0.48.0 Released

Vrapper version 0.48.0 has been released, back on schedule with our two-month release cycle. The only changes since the last news post were more esoteric bug fixes. The following fixes are included in 0.48.0:

  • Fixed issue with cursor placement after multi-line 'gp'
  • Fixed issue using counts with 'o' command
  • Fixed behavior for 2di' and 2yi' around whitespace
  • Fixed issue with '*' and '#' when 'smartcase' is enabled
  • Fixed issue where red error text wouldn't disappear from status bar
  • Fixed issue with hitting backspace as soon as you enter insert mode then hitting '.' to repeat insertion
  • Fixed issue with performing multiple searches while in visual mode
  • Fixed issues with `[ and `] not updating after a delete or after 'p'
Posted by Kevin 2014-10-05

Updates to unstable update site (plus a minor rant)

Time for another monthly status update on Vrapper. For the last couple years, our GitHub Issues page has hovered around 30 open defects/feature requests. Defects have been filed and fixed and we always seemed to have about 30 open at any given time. This last month brought with it what I'm going to call some "overzealous" new users. We jumped from having ~30 defects to having over 50 in one month. 13 of those issues were filed by a single person. Now, I don't take this as a sign that Vrapper is unstable. I may be overly optimistic here, but I think it's actually because Vrapper has reached a point where we meet about 95% of most users' use cases. We're down to the esoteric features and nit-picking defects; which is to say, the really hard stuff. Just take a look at the current changes on our unstable update site:... read more

Posted by Kevin 2014-09-07


If I was sticking closely to my two-month release cycle I would've released last week. However, there weren't too many changes in this release. I also had just fixed a defect and I wanted to make sure my fix solved the problem. Now, a week later, I'm releasing 0.46.0. Here are the changes since the last news post (included in 0.46.0):

  • Changed 'syncmodifiable' to ignore Eclipse's readonly flag by default. This should help some Perforce users.
  • Fixed issue where selecting from the end of the line backwards would skip the last character
  • Fixed issue where Vrapper would stay in VisualMode after Eclipse cleared the selection
  • Fixed issue where a visual selection could jump to the beginning of the next line
  • Fixed issue where Mac command key was ignored. It is now treated as Ctrl.
  • Fixed issue with 'i_Ctrl-Y' after 'A'.
Posted by Kevin 2014-08-09

Updates to unstable update site

Another month, another status update for Vrapper. In the past month, we've made the following changes to the unstable update site:

  • Added support for ':command' to define custom user commands
  • Fixed issue where 'softtabstop' broke multi-character mappings (like 'imap jj <esc>')
  • Fixed issue where you couldn't use unicode characters in .vrapperrc
  • Fixed issue with mapping '0' to something then using counts for a command
  • Fixed issue with 'R' replace mode at the end of a file
  • Fixed issue with using <TAB> in a macro
  • Fixed issue where you couldn't use a space in the right-hand side of a mapping
  • Fixed issue preventing you from mapping '<c-/>' to anything... read more
Posted by Kevin 2014-07-05

0.44.0 Released

It seems we're still sticking with this 2-month release cycle. 0.44.0 has been released and is primarily a bug-fix release with a ton of defects fixed. In addition to last month's list of fixes, 0.44.0 includes the following changes:

  • Fixed XML tag 't' text object to ignore JSP tags
  • Fixed issue where accidentally using XML tag 't' text object in a non-XML file would cause StackOverflowError
  • Fixed issue with multi-character mappings affecting regular commands
  • Fixed issue to keep cursor visible when swapping visual selection sides
  • Fixed issue where named register was sometimes still active after an operation
  • Modified behavior of new "syncmodifiable" property
    • Now a string rather than a boolean, valid values are 'matchreadonly' and 'nosync'
    • 'matchreadonly' will set Vrapper's read-only flag to the state of Eclipse's read-only flag (this is the default)
  • Other miscellaneous improvements of fixes made last month... read more
Posted by Kevin 2014-06-01

Updates to unstable update site

Time for your monthly status update on Vrapper. We've got another long list of changes in the last month since 0.42.0 was released.

First of all, there was a defect in 0.42.0 where the '?' command (reverse search) simply didn't work. I was tempted to release a 0.42.1 with this defect fixed since it seems like such a fundamental feature. However, it actually took a couple weeks for anyone to find it. This tells me that the '?' feature isn't actually used that often. So we've fixed this defect on the unstable update site but I think it can probably wait for 0.44.0 to be in a stable release. If you actually use the '?' feature a lot and noticed it was broken, you'll have to update to the latest unstable build or wait another month to receive the fix. Sorry for breaking such a basic feature.... read more

Posted by Kevin 2014-05-04

0.42.0 Released

It seems springtime brought some new life for Vrapper development after such a slow winter. 0.42.0 has been released and just look at the list of changes made in the last month (included in 0.42.0):

  • Added new plugin for exchange.vim port
  • Added support for 'gvimargs' property
    • Defines args sent to 'gvimpath' for use by :vim command
    • Uses placeholder strings {line}, {col}, and {file}
    • Defaults to: +{line} -c normal zv{col}| -c set nobackup -f -n {file}
  • Added support for 'ad hoc delimiter' m<char>>
    • Based on a Vim patch which has not yet been merged into Vim
    • https://groups.google.com/forum/#!searchin/vim_dev/im$20am/vim_dev/pZxLAAXxk0M/wdOgpOQ05Z8J
    • Use m<char> with i/a to match strings delimited by any arbitrary <char>
    • For example, 'vim*' will select (in VisualMode) the text between two '*' characters
    • Modified methodtextobj.vim plugin to use 'f' rather than 'm' to avoid this collision
  • Added support for '(insert) VISUAL' mode
    • Highlighting text while in InsertMode moves into '(insert) VISUAL' mode for a single visual operation, then returns to InsertMode
  • Added support for ':let @<char>=' to set register contents via command-line
    • Using ':let' ONLY supports setting registers right now
  • Added ability to map '|' character using '<BAR>'
  • Fixed issue with Vrapper not re-initializing when Eclipse re-uses editors
    • For the "Close editors automatically" feature in Eclipse
  • Fixed issue with :eclipseaction from command-line of an editor
  • Fixed issue with :eclipseaction being defined statically for all editors
  • Fixed issue with :surround command in Surround.vim plugin
  • Fixed issue with mappings which use '<' or '>' character
  • Fixed issue with search strings that end in a backslash
  • Fixed issue where :t/:move/:copy were requiring a space after the command (which Vim doesn't require)
  • Fixed issue with map and noremap not including omap
  • Fixed issue with cursor position when exiting visual line mode
  • Fixed issue swapping between beginning and end of a visual selection when Windows line-endings are present
  • Fixed issue where having a visual selection, moving into command-line mode, then hitting <ESC> didn't clear the selection
  • Fixed issue where executing a macro wasn't a single undo-able operation
  • Fixed issue with visually selecting the last character in a file
  • Fixed display issue when restoring a reversed selection
  • Refactored how text objects are defined to better support plugins... read more
Posted by Kevin 2014-04-06

Updates to unstable update site

It's been another slow month but I might as well give an update with the changes to the unstable update site since 0.40.0 released:

  • Added support for '@:' to repeat last command-line command
  • Added support for ':marks' command
  • Added support for ':reg[isters]' command
  • Fixed issue with 'gv' after modifying lines
  • Fixed issue with visual mode editing at the end of a file
Posted by Kevin 2014-03-02