Changes
Summary of major feature additions
2.0.x: :cd, :pwd for :!cmd and :e ~/d/f. :e %:h:h/fname. All filename-modifiers.
:cd and :e have Ctrl-D for path completion popup. :messages.
:e* Ctrl-D for closed files, repeat Ctrl-D for different sorting.
2 clipboards. clipboard option: unnamed,unnamedplus. viminfo options.
1.6.x: Ctrl-R on command line. Visual mode and multiple views of a file.
:tab* commands; magic option and \v,\m... for searching
:history clickable output, 'history', history up/down arrows and matching
1.5.x: fold commands & fdo option, smarter scrolling, visual bell option
1.4.x: split, resize and move window commands, e.g. Ctrl-W_s, Ctrl-W_=, Ctrl-W_L
multi-char {lhs} mappings, including insert mode, w/timeout options
Lucky 13, jVi-2.0.13, NetBeans-13.
Use jVi-2.0.13 with NetBeans-13 and later.
Traditionally each jVi release runs on a range of NetBeans versions;
jVi being compiled against the latest version of
NetBeans.
For example jVi-1.5.4, compiled with NetBeans-8.2, ran on
NetBans 7.2 through 8.2. The release adjusted itself to take
advantage of available NetBeans features.
But jVi compiled on NetBeans-16 doesn't run on NetBeans-15.
So there would have to be a different jVi release
for each supported NetBeans version.
Conceivably the NetBeans plugin portal could help,
since it has versioning; but it
has been in a coma for over a year.
This won't be an issue until there is some newer NetBeans feature
that jVi would have to directly access.
Techniques, akin to multi-release jar, are under consideration, but not soon.
jVi-2.0 Release, NB-13/JDK-11 and later
:cd, :pwd, :e, with commandline completion, as good an excuse as any to bump major.
Visit NB-11 JDK-8 and later
for older releases.
Version 2.0.13 - 2022/11/08
Built with NetBeans-13; use with NetBeans-13 and later.
There's hidden big changes. Standalone jVi, which is used in nbvi, is now built with gradle and
frgaal.
The compiler args include
-target 11 and -source 19;
java 19 language features are slowly working their way into the jVi source
while still being able to run on jdk-11. The source for standalone jVi
now builds out of the box, thanks to now publishing maven artifacts
from jVi related projects;
similarly with nbvi.
- Bug fixes
-
-
Fix: when a file is opened place the caret at the spot from where
it was closed.
Some last minute fixes for windows in v2.0.11 broke this new feature.
Version 2.0.11 - 2022/09/14
Windows fixes: clipboard, :e*, :cd path handling
Version 2.0.10 - 2022/09/12
Fix an exception on windows when closing a file.
All Systems: make sure lastFPOS uses corect buffer.
Version 2.0.9 - 2022/09/03
Since I was running on windows I didn't realize the clipboard handling was
not right on unix.
jVi now matches vim, handling both
"* and "+;
and the 'clipboard' options,
unnamed, unnamedplus
in all combinations.
It is incompatible with how jVi used to be; I find the change OK to use.
It seems more like a bug fix, but
an Option could be added if this change is too much of a problem.
- jVi Core
-
-
Support both clipboard +
and selection *
when the platform supports both.
-
Handle clipboard=unnamed,unnamedplus.
See
clipboard documentation.
-
When a closed file is opened, set the caret position to
the location when it was closed. The previous location is
saved as a buffer mark;
see Viminfo's
max buf-marks
which controls how many are saved.
-
Appending to a yank register,
upper case name, now handles all register modes:
character, line, or block.
-
Visual blockmode copy/paste between jVi and Vim.
-
Add Select Initial Command line
or 'sicl' option. This specifies
the initial contents of the colon command line window when
it comes up: empty,
command, or selected.
-
CommandLine Ctrl-R additionally handles
#,
Ctrl-W,
Ctrl-A,
and Ctrl-L.
-
The Map Commands option input
accepts both # and
" for comments. A small
nod to vim9script.
-
Stretch command line to width of it's editor;
but always at least 80 characters.
-
Add Viminfo
category tab in option dialog.
Add options max reg-lines,
max size; they control the
register persistence. Add options
max Search Patterns and
max CommandLine; they may
override 'history'
for persistence. Add save Filemarks
option.
- jVi NetBeans KeyBindings
-
-
Add NetBeans activation events to debug activation (NbFactory).
- Bug fixes
-
-
[#199] Error when closing editor window
Windows only. Fixed in nbvi-2.0.10.
-
Sometimes the current directory was output as "?".
-
:number, used to goto line,
might throw an out of bounds exception. (ancient bug)
-
Fix buffer mark persistence to correctly use
max buf-marks.
-
Fix an obscure problem where persisted marks
might not be restored.
-
Clean up bad marks found in Preferences data base.
-
Fix an option dialog display problem. A bad value in setting an
option in the dialog could cause an exception and the displayed value
is not properly restored to the value before the exception.
-
Workaround NetBeans bug where undo/redo would not work in some
situations when there was a detached window.
Editor with Keyboard focus is not active TopComponent
(undo/redo don't work while editing).
Version 2.0.6 - 2022/06/14
- jVi Core
-
-
~ can be used when specifying a path. For
example: :e ~/homefile
or :cd ~/.config.
-
Added all
filename-modifiers,
except for :8, :s,
and :S.
They can be use with the
the :cd, :e,
:!,
and echo commands, and more.
For example: :e #5:h/xxx.java opens
the file xxx.java in the same directory as #5
in the :ls list.
Another way is
- :cd #5:h
- :!ls -C x*
- :e xxx.java
using file name completion as needed.
-
:messages.
-
When displaying a filename use a path; could be
~, or /,
or current directory relative.
Follow vim's rules.
-
The :ls command now prints a single column
since the filename could be much longer. Use
:ls2 to get both the
MRU and activation
lists side by side with file's short name.
- Remove the deprecated (and difficult to maintain)
'Use combo box command Line' option.
Instead, use the up/down arrow keys along with the
:history command.
- jVi NetBeans KeyBindings
-
-
Save a list of closed files. Use :e*
to access that list with code completion. When completion
is displayed, use
Ctrl-D or Ctrl-Space
to change the sort between MRU, alphabetically, and pathname. Add
general option 'closedfiles' for size of list.
- Bug fixes
-
-
Fixed race condition in :!
command when used with a range, for example
:.!date, and the executing command did not need
any input. True filter commands using both stdin and stdout, like
'<,'>!sort, should not have been
affected by the problem.
-
Fix a long standing obscure/rare bug where a
mark or filemark
gets mysteriously set to first line of its file.
When NetBeans sends de-activation event for a TopComponent, an
associated editor's document is considered invalid; accesses to
it usally produce correct results and no errors are indicated.
-
Fix unexpected scroll in other window of same file as editing.
While editing a file in one window, and then manually scrolling
the other window of the same file without selecting that other
window (using the scroll wheel), the scrolled window could
jump back to its original position.
-
Using a filemark (upper case mark)
didn't leave the cursor placed correctly when switching windows.
-
After reload due to external file change, marks and filemarks could be
set to offset 0.
Version 2.0.2 - 2022/05/02
- Bug fixes
-
-
NPE installing caret into debugger's expression evaluator editor.
Havoc ensues. Problem introduced going back to using NetBeans'
BaseCaret in jVi-2.0.
Version 2.0 - 2022/05/02
- jVi Core
-
-
Add :cd
and :pwd commands.
They are used for :! and
:e fname command execution.
- jVi NetBeans KeyBindings
-
-
:cd
and :e support command line completion
for traversing directory hierarchy.
- Bug fixes
-
jVi-1.6 Release, NB11.0 and later
Version 1.6.5 - 2020/12/22
There've been long standing issues with VisualMode highlighting
around multiple views of the same file. Including behavior when switching
from one window to another with the same buffer.
This release corrects those issues; it behaves like vim.
- jVi Core
-
- jVi NetBeans KeyBindings
-
-
When the NetBeans editor draws a caret over a TAB character there
are visual glitches. There's a pending fix to NB which jVi uses.
-
Fix. If jVi disabled and CursorInView option enabled there were
problems when using cursor to scroll.
CursorInView introduced in nbvi-1.6.1.
Version 1.6.4 - 2020/09/11
Search and VisualMode highlighting are now only calculated for the
text areas displayed on the screen and the results are cached.
You shouldn't normally notice, except perhaps on large files.
- jVi Core
-
-
Fix minor modelines issue.
If modeline was last line of tiny file
it would be missed.
- jVi NetBeans KeyBindings
-
-
The set ts=<number> command
now visually takes effect immediately.
-
In unusual instances, like Customize Code
in the forms editor, jVi wouldn't allow some editing.
-
Improve Search and VisualMode highlighting performance.
Version 1.6.3 - 2020/06/12
This release is primarily to correct a nasty flaw
in 1.6.2 distribution packaging.
There's also a little feature useful with maven.
- jVi NetBeans KeyBindings
-
- For :e# completion
after filename, sometimes show
project as [proj].
Handy when editing several poms for example.
Version 1.6.2 - 2020/06/06
Quickly superceded by 1.6.3. One of the modules in the packaging
for this release is the wrong version
- jVi Core
-
- Add g_ normal mode command.
-
Use a text field for the command line
instead of a combo box. The up/down arrows
and search work as before and like vim.
The clickable :history command output
is the alternative.
The combo box is deprecated;
the code is overly complicated and difficult to maintain.
For now there is an option to enable the combo box.
Feedback welcome.
- jVi NetBeans KeyBindings
-
- Add a touch of color to startup message
and a few other places, particularly for errors.
- Bug fixes
-
-
After ^W_c
or ^W_o jVi stopped doing anything;
had to restart.
-
Fix problem where persisted file marks occasionally loose
line/col position.
-
Fix class cast exception after clicking popup
for folded code.
Version 1.6.1 - 2020/03/22
- jVi Core
-
-
Feature/Fix: compatibility with dark LookAndFeel/PlatformColors.
When the jVi option colors, for highlight search
and visual mode,
are set to null the colors are inherited from the platform.
In NetBeans, they specifically come from
Menu>Tools>Options>Fonts&Colors>Highlighting
.
In that dialog you can set different colors for each
Profile:. jVi maps
Highlight Search to jVi's highlight search
and Incremental Search to jVi's visual mode.
-
Feature/Fix: with 'hlsearch'
and 'incsearch'
show all matches as you type.
-
Restore/use previous search pattern for highlight after escape/quit
search.
-
Change the wrongly named 'notsol'
option to 'sol' matching vim.
The user preference is maintained.
-
When using the scrollbar or the scroll wheel,
move the cursor so it stays in the view; this matches vim behavior.
New option
'cursorinview'/'civ'.
Set to false to maintain cursor position,
even if cursor goes out of view;
this is the old (non-vim) behavior.
- jVi NetBeans
-
-
Improve interoperability with per project properties
found in NetBeans'
Project > Properties >
Formatting > Use project specific options.
There is a jVi
option
support "Project specific options".
When both of the jVi and
NetBeans options are enabled,
'shiftwidth',
'tabstop',
and 'expandtab'
are taken from NetBeans' per project settings.
- Bug fixes
-
-
Fix ^W window resize problems.
Yet another bug relating to earlier change in NetBeans editor
hierarchy.
-
Fix intermittent incremental search problem introduced
with command line rework for history commands in 1.6.0.
-
Fix some minor issues introduced by the fix for jVi options
not going into effect until
after the Apply/OK buttons. Only Color and EnumSet options
were affected.
Version 1.6.0 - 2020/01/13
- jVi Core
-
-
Bring command line up/down arrows and command/search handling
in line with vim. In the command line, the UP arrow goes towards
previous commands or search patterns.
Add 'history' option for size of history
and :history command with full vim syntax.
For example :history / -5,
shows the last five search patterns.
See cmdline.txt
command-line editing
-
Search 'magic' option,
either
vm,
m,
nm, and
vnm
(for very magic, magic, no magic, very no magic)
rather than boolean.
Embedding
\v,
\m,
\M,
\V in a pattern
to inline switch magic is supported.
See pattern.txt
/magic
-
Add several tab commands, including
:tabmove, :tabclose
and :tabonly;
handle modern capabilities
and syntax for tab commands which was first introduced in vim8.
See tabpage.txt
tab-page-commands
-
For command line entry window, allow two modality options introduced
in java 1.6. Continue to allow glass pane. Note this is only provided
for cases where default OS handling of dialogs causes problems
- Bug Fixes
-
-
Options don't go into affect until after Apply/OK.
-
Fix situation where jVi stopped getting character input;
the chars would go strait into the file even in normal/command
mode. User fix was to disable then re-enable jVi. An NB bug was
involved...
-
Fix NPE when closing tab/editor that has not been fully opened.
For example, with the :only command.
-
In :substitute,
avoid NPE when impossible backref or no match backref.
-
In Ctrl-W navigation avoid NPE when no splitter
or single TC in splitter.
-
Rework font check handling. Avoid message about special chars
when option "no check special chars".
-
Fix command line completion handling
when dynamically alternating between a :command
name and :e#.
-
Ctrl-W navigation commands can mess up.
Change introduced in NB 8.2
and mostly accommodated; but this one slipped by.
-
[#107 feature] join apache netbeans
A jVi update center is available on both the netbeans portal and
and the apache portal.
jVi-1.5 Release, NB7.2 and later
Version 1.5.4 - 2016/09/19
- jVi Core
-
-
[#190] Several features don't work with Netbeans 8.2 RC
Avoid NPE due to change in editor hierarchy.
Thanks to William Headrick for the fix.
-
[#95] :reg[ister]
Add :register command.
-
Mapping Shift-Space
Allow mapping of Shift-Space and Ctrl-Space.
In addition, have normal mode commands for those keystrokes
do forward word (when not mapped of course).
- Improve '' (goto previous mark) when magicMark option.
This handles some change in some "recent" NB releases.
- Bug fixes
-
- The =% and Q% normal mode commands
for indent and format incorrectly scrolled the window
when the caret was on the closing brace.
Version 1.5.3 - 2014/09/06
- Bug fixes
-
Version 1.5.2 - 2014/05/23
- Bug fixes
-
Version 1.5.1 - 2013/11/26
- jVi Core
-
-
[#89] turn off beep (visual bell)
Implement options,
visualbell,
visualbelltime
and visualbellcolor.
Much like vim. If vb true and vbt == 0 then no bell and no flash.
The additional option
'vbc'.
controls the color of the flash; set it to null
to invert the background.
- Fix scrolling when target is nearby.
If target is within half a screen, then scroll to the line
otherwise center it. This applies to search, goto mark and all
other motions. Previously, there were several situations
where the jVi scrolling was overriden by platform.
- jVi NetBeans KeyBindings
-
- add options to :toggle command.
:toggle [ l[eft] r[ight] t[op] b[ottom] ]
restore or minimize to the specified side, according to where
things are assigned. Default is bottom.
-
Handle scrolling after % (brace matching)
command under NetBeans. Repeated % commands
are more likely to show the entire block, or at least larger
areas of it, on screen.
- Bug fixes
-
- Fix NB-7.4 issue where the cursor moves after closing a fold.
Also wait a bit after expanding folds to get cursor in view,
all NB versions.
- Fix text object issue with sentences.
Beginning of sentence,
before the cursor, was not getting selected.
Version 1.5.0 - 2013/11/01
The 1.5 release reworks the fold commands. As much as possible, they now
behave like the vim commands, including handling visual mode and a [count]
where applicable. The available commands are:
zc,
zC,
zo,
zO,
za,
zA and
zv.
The 'foldopen'/'fdo' option is implemented. It's in the
General tab under jVi options and its persistent and run time value
can be modified there; the run time value can be changed with
the set command.
See documentation for details on the commands and 'fdo' option.
- jVi Core
-
- Bug fixes
-
jVi-1.4 Release, NB7.x only
Version 1.4.8 - 2013/03/03
Version 1.4.7 - 2012/10/22
Version 1.4.6 - 2012/10/02
Version 1.4.5 - 2011/12/12
NetBeans 7.1
Bug 205835 can lose edits; a variety of jVi commands run into this.
jVi-1.4.5 disables itself if it detects module versions with the bug, AFAICT.
The bug is scheduled to be fixed in NB-7.1.1; sometime around January/February.
jVi-1.4.5 works as expected on NB-7.0
Version 1.4.3 - 2011/09/19
- jVi Core
-
-
:set command supports almost all options.
Use :set all to see options;
command output is now multi column.
- Different cursor used in readonly and/or not focused windows.
- Draw caret as empty rectangle when editor not focused.
- Draw caret as emphasized empty rectangle when
focused editor is read only. For example the left side of diff
- Add platform option, rocursorcolor/rocc, for color of
cursor in read only editor; works with :set.
- jVi NetBeans KeyBindings
-
- Entering key mappings in Options dialog uses jVi editor bindings.
- Give warning if fonts are not all the same size.
- Bug fixes
-
-
[#149] Search Wrap Message never goes away
Be more vim-like and always display search pattern; fixes issue.
- Fix various issues around wrap and folding for
cursor positioning and view related
navigation commands:
H,
M,
L,
zt,
zz
and zb.
- Fix some issues with non-modal command line entry.
Version 1.4.2 - 2011/06/22
Window split, resize and move are the big features.
This is an accurate implementation with lots of the commands and options.
The
:split and
:vsplit commands can do
file name completion for a
#digit argument.
- jVi Core
-
- Implement input mode Ctrl-G u
break undo sequence, start a new change
- Handle optional count on
gt and gT commands.
-
[#81] smartcase option support
- With :g command,
handle vi/vim undocumented pattern selection feature.
:g\/ and
:g\?
use the last search pattern and
:g\& uses the last substitute pattern.
- jVi NetBeans KeyBindings
-
-
Implement window resizing commands along with the
'equalalways',
'splitbelow'
and 'splitright' options.
Ctrl-W =,
Ctrl-W -,
Ctrl-W _,
Ctrl-W Ctrl-_,
Ctrl-W <,
Ctrl-W >
and Ctrl-W |.
-
:split and
:vsplit implemented.
Note
that they take an optional
#number
and works with
Ctrl-space/Ctrl-D
file name completion.
-
Window split commands fixed from 1.4.1 to really do a split
The split commands, such as
Ctrl-W s
and Ctrl-W v,
split the current editor;
The command accepts a count to specify the size of the new editor.
To put a copy of an editor in a neighboring area
(similar to 1.4.1 behavior), create a clone and move it.
For example, to make a clone/copy of an editor in an existing
area to the left, do something like
Ctrl-W Ctrl-T Ctrl-W H.
I map Ctrl-W <Left>
to that sequence.
-
window move commands changed from 1.4.1 if not
a target area in the direction
When there is not a target in the direction,
the move commands, such as
Ctrl-W H,
create a new area.
Version 1.4.1 - 2011/05/18
- jVi Core
-
-
Map commands additional features
- Multiple character {lhs} mappings
- insert mode mappings
- 'timeout'
and 'timeoutlen'
- no ambiguous mappings
- Update Ctrl-W [hjkl] type
of commands to more recent vim behavior "Uses the cursor
position to select between alternatives".
- jVi NetBeans KeyBindings
-
-
Ctrl-W S,
Ctrl-W s,
Ctrl-W Ctrl-S,
Ctrl-W v,
Ctrl-W Ctrl-V,
The feel is like vim's split a window. Currently there must
be a neighboring target for the newly created editor.
In the future a target will be created when needed (needs NB support).
-
Ctrl-W H,
Ctrl-W J,
Ctrl-W K,
Ctrl-W L
move the current editor in the direction.
Note: there must be somewhere for the editor to go.
- Ctrl-W T and :clon[e]
like NB's Clone Document
- :tog[gle] working again.
- :organizeimports and
:fixiorganizeimports
that work with the Organize Imports plugin. The
:fixio form first does fix imports.
- Bug fixes
-
Version 1.4 - 2011/04/11
This is the final 1.3.1 release renamed; first release since 1.2.
Lots of new features; major source code refactoring to simplify embedding jVi.
- jVi Core
-
-
handle line wrap; also handle long lines better
- :set options:
wrap and linebreak
- Various commands for a line wrap environment,
including gj, gk, g$,
g0, g^, gm
- horizontal scroll commands:
zl,
z<Right>,
zL,
zh,
z<Left>,
zH,
zs
and ze
- :set list
-
[#37] map commands; User define key binding in Normal mode
[nvop]map, [nvop]noremap, [nvop]unmap
"Options>Map Commands" for persited mappings.
Also work as colon commands.
Current mappings are displayed
with :[nvop]map and :[nvop]map {lhs}.
See jVi help files, map.txt.
Note: "p" mode mappings are jVi only.
The :pmap, :pnoremap
and :punmap commands are normal mode
mappings which are active in PLATFORM-SELECTION state. Selecting
text with the mouse produces a platform selection.
-
[#44] Multiple-editor pane support (Ctrl-w)
A more accurate implementation
of Ctrl-W window traversal commands, e.g. left/right/up/down.
Almost all of the several traversal commands are implemented.
See
jVi help files, windows.txt.
All jVi editors, such as visual diff and expression evaluator,
are included.
-
[#67] yank/put/delete Actions on the closed fold at the cursor
Most actions on folds work, for example >>.
Actions on visual mode selections involving folds
also implemented.
- Persist history for search and command entry,
along with values for marks, filemarks and registers.
They persist when the program exits normally.
-
[#3001654] Ability to use line breaks with substitute command
Implementation allows '\r' in the replacement text.
'\n' is also allowed and maps to newline (not NULL char into doc).
- Added gJ and g~ commands
- Add :vglobal and :global! commands.
-
set command
- Implement :set operations:
+=, -= and ^=. (useful with 'isk')
- Implement set {option}& to set option to default value
- :set only display settable options that differ from their
default. Use :set all to see all settable options
-
[#69] iskeyword or skip to underscore?
add option: 'iskeyword' 'isk'
This is a per buffer option.
It works with :set iskeyword=xyzzy and modeline
- add option: blinkrate
- :set scroll=0 accepted to reset to half window height
-
[#62] :set wrapscan command
- In jVi options dialog, each option displays default value
-
[#66] Make :u Perform Undo Operation
Add both :undo and :redo
- Ctrl-G in visual line mode does full line java text selections.
Note that this changes the jVi start-end of the current visual bounds.
- jVi NetBeans KeyBindings
-
- Colon Command Name Completion
During ":" command line entry Ctrl-Space or Ctrl-D bring up a
completion list.
- use the NetBeans REUSE flag for tag stack operations,
for example Ctrl-] and Ctrl-T. This means that
several operations in a row will share the same editor window.
Use the :pin command to prevent a file from being replaced.
- :pin to clear editor REUSE flag. The red push pin,
"Editor Pin", on toolbar is active when the currently selected
editor is REUSEable.
- Bug fixes
-
- Navigation in long lines and around line wrapping.
Don't keep messing up horizontal scroll position.
-
[#3280820] exit ": mode" on BS on empty line
-
[#129] jvi Icon doesn't update
-
[#130] undo bug with @ (execute register contents)
-
[#136] exit ": mode" on BS on empty line
-
[#125] clipboard option doesn't work
-
[#117] Ranges don't work with ":global"
Also fixed the ":global" command so that if matching lines
are deleted, there is no attempt to operate on them.
In particular, something like :g/pattern/d 5
does the right thing.
- Fix [/ and [* when "/*" starts in column 0
-
[#121] Cursor Position off by one when jVi turned off
- Handle insert mode Ctrl-W and Ctrl-U properly
for '.' redo command.
-
[#124] ggVG= throws exception
- fixes for commands for line wrap like up,down,^D,^U,^F,^B,H,M,L
-
[#121] cursor backspaces when jVi turned off
-
[#118] Wrong cursor after search
-
[#116] IllegalStateException when executing ":e!"
-
[#109] Nullpointer exception
jVi-1.3 development
This is renamed and summarized as jVi-1.4.
jVi-1.2 released
NB6.9 only, Version 1.3.0.x1 - 2010/02/01
NB6.8 only, Version 1.2.7 - 2010/02/01
- jVi Core
-
-
[#163] Xml/Html Tag text-object
-
[#29] [ ] Brace/paren/other navigation.
Implemented:
[m, ]m, [M, ]M,
[{, [(, ]}, ]),
[/, [*, ]/, ]*,
[#, ]#,
[[, [], ]], ][
-
[#53] Save macros.
Persist named yank/put registers/buffers, e.g. "a, between sessions. (only if size under 1K)
- Implement filemarks, aka upper case marks,
like mA and 'A;
also :marks and :delm[arks] commands.
Support ^ mark.
Persist filemarks and per buffer marks between sessions.
General option to control max number of persisted buffer-marks.
-
[#2929586] :[range]< command missing
Implement shift [range] lines one 'shiftwidth' left. Repeat '<' for shifting multiple 'shiftwidth's.
- platform option so initial verion output does not bring up output window
- jVi NetBeans KeyBindings
-
-
[#84] code formatting in visual mode in NB 6.8
Hook 'Q' and 'gq' commands to NetBeans' reformat action.
- In input mode put TAB character directly into file (assuming
'noet' and other options call for it),
unles 'usePlatformTab' option is set
- Bug fixes
-
NB6.5/NB6.7/NB6.8 only, Version 1.2.6 - 2009/7/19
- jVi Core
-
- In visual mode, Ctrl-G converts visual bounds to java text selection.
Allows IDE/platform commands to operate on it.
<ESC> clears a java text selection.
-
[#48] Please implement softtabstop option.
A per buffer option, works with modeline. This change also
implements most (all?) of the vim logic related to expandtabs rather than
passing it off to the platform. When 'et' is false and 'sts'
true, neighboring spaces are coelesced into tabs;
when 'et' true and 'sts' true, a backspace may
remove multiple spaces. See vim's doc.
-
[#45] i_ctrl-a (insert mode command) Also implement i_ctrl-@.
-
[#22] i_CTRL_R to paste buffer content including the i_Ctrl-R sub-commands.
- jVi NetBeans KeyBindings
-
-
[#44] Multiple-editor pane support (Ctrl-w)
Only a partial fix.
Ctrl-W_Ctrl-W An imperfect implementation: cycles in arbitrary,
but fixed, order.
There are no commands that create windows; that
requires some NetBeans API work, at a minimum see
add attachTopComponentToSide method to WindowManager.
NOTE: Users may want to reprogram NetBeans' "Close
Window" shortcuts from Ctrl-W and Ctrl-F4
to Ctrl-W_c and Ctrl-W_Ctrl-C for consistency and to
avoid accidental window closing.
- :only, Ctrl-W_Ctrl-O
- Ctrl-W_Ctrl-E and Ctrl-W_e {not in vim} These commands are similar to
Ctrl-W_Ctrl-W, except that
they cycle through visible editors that do not have an associated file.
In a debug situation, with the expression evaluator visible, this
command typically changes focus to the expression evaluator window.
- Hook jVi into Tools>Options Export and Import dialog
- Bug fixes
-
NB6.5/NB6.7 only, Version 1.2.5 - 2009/6/12
- jVi Core
-
- ^V in input mode (values limitted to 16 bits so ^VU not supported)
- Improve performance, generally 2x, of some visual block operations:
I, A, x, D, r
-
[#43] ge and gE don't work Also implemented g* and g#.
- jVi NetBeans KeyBindings
-
- Make jVi options a top level option (no longer in AdvacedOptions)
- Bug fixes
-
NB6.5/NB6.7 only, Version 1.2.4 - 2009/2/28
- jVi Core
-
- Bug fixes
-
NB6.5 only, Version 1.2.2 - 2009/2/22
- jVi Core
-
- Bug fixes
-
jVi-1.1 released
NB6 only, Version 1.1.6 2008/5/31
- Bug fixes
-
NB6 only, Version 1.1.5 2008/4/20
- Bug fixes
-
NB6 only, Version 1.1.4 2008/4/6
- Bug fixes
-
NB6 only, Version 1.1.3.beta3 2008/2/14
- jVi Core
-
- Code Folding compatible.
- [#1829293] \c,\C in search for case sensitive
- jVi NetBeans KeyBindings
-
- Add option to keep initialization options/configuration
in userdir (using NbPreferences), rather than shared for all
installations of NB.
- In insert mode bind Ctrl-N, Ctrl-P to NB's
wordMatchNext/Previous.
- Bug fixes
-
- 1.1.2.x8 avoid substitute confirm hang ide (reflection hack)
- When parsing modeline, don't raise output window if no error.
- Add search strings from '*' and '#' to search history
- Extra <RET> not needed on ":e#" file name completion, bug
introduced by fix for command completion on MAC.
- fix the way visual mode highlights are updated so '%' changes
visible visual mode selection.
- fix assert when ":q"
NB6 only, Version 1.1.1.beta1 2007/10/26
- jVi Core
-
- Command/Search entry window is now modal dialog
by default. Better for MDI mode.
New option use
modal frame, if disabled uses old technique of a glass pane.
Note that glass pane doesn't work well with file name completion
popup for NetBeans.
- Ctrl-C exits input mode
-
- Add zt and zb. Thanks to Marian P.
- Add gt, gT,
:tabn[ext] :tabp[revious], :tabN[ext].
Traverse editor tabs.
They hook into platform actions as available.
- jVi NetBeans KeyBindings
-
- :mak[e] [b[uild] | c[lean] | r[ebuild] | d[oc] | de[bug] | ru[n]]
[ m[ain] | p[roject] | % ]
Default is "make build main"
- NB6 beta1 only (or post 07/07/22 build).
:e# supports file name completion popup of open files.
New option: ":e#" Auto Popup to enable/disable.
-
Add some refactoring commands. :rfr[ename] plus many more.
See Netbeans specific doc.
- Stop tracking wrapscan/ignorecase. Just ignore the NB settings.
- :tog[gle] [<view-pane>]
<view-pane> ::= bo[ttom] | ou[tput] | de[bug]
Toggle visibility (show/hide) of some windows
- Bug fixes
-
- [#1787950] jVi Output pane constantly pops up
- now typeahead after ":" replaces previous command
- properly set '[ and '] after delete lines
and avoid a stack dump.
- listen to jVi option changes from displayed property sheets.
- Fix when moving position offscreen. If target within half
a screen then target at top/bottom of view; like a scroll to target,
rather than target at center of view.
Version 1.0.3 2007/07/23
- Bug fixes
-
- Remove bogus assert that might trigger when editing
same file in two windows
Version 1.0.2 2007/07/10
- jVi Core
-
- [#1749954] Fix jVi's defaultKeyType handling of Alt/Meta modifiers
so {}[] can be entered on Mac's Norwegian and French keyboards
- jVi NetBeans KeyBindings
-
Version 1.0.1 2007/07/04
- jVi Core
-
- Visual Block Mode with most commands, including yank/put,
I (input), A (append), c (change),
r (replace), x, d (delete).
- The bang commands: such as !{motion}{filter},
:{range}![!]{filter} [!][arg]
and of course :!{cmd}. vim options shell,
shellcmdflag and shellxquote.
%, current file, for "!" commands, with file-modifiers
:p, :e, :r, :t, :h.
- = operator with equalprg option. When
equalprg empty, hook into platform reindent.
- gq operator using formatprg option. Q
is an alias for the operator. Add text width option for use with
"gq"/"Q" commands.
- highlight search,
:set [no]hlsearch, :noh[lsearch]
- modeline processing; modeline and modelines
options.
- For '.' redo handling, during input mode track changes made external
to jVi, typically by IDE for code-completion.
Use option "." magic redo tracking to disable this feature.
- More insert mode operations: cursor motion with
whichwrap options [],
[#1723582] DEL as in vim,
[#1723996] Ctrl-Y, Ctrl-E to copy
character from previous, next line.
- Added gp and gP commands.
start/end of previous operation.
- [#1733806] c[onfirm] option for substitute
- `` magic pcmark tracking. Cursor movements, usually the
result of IDE actions invoked exteral to jVi, are noted so that
`` return to where you were.
Use option "``" magic pcmark tracking to disable this feature.
Thanks Jose.
- The auto indent is removed on a line where
no text is entered.
- implement '[ and '] marks
- jVi NetBeans KeyBindings
-
- = does reformat action on specified range
- jVi ToolsMenu enable now persists across NB restarts.
- helpset for visual block mode
- :gr[ep] peforms the "Find Usages" action on the identifier
under the cursor
- Bug fixes
-
- [#1723554] TAB accepted in entry widget,
so search expression can now include tab character.
- [#1703407] Exceptions when used in CVS Diff views
- The RE pattern /^ now only matches the beginning of line.
- Position caret correctly after undo/redo to keep it off the newline.
- beep when undow/redo does nothing
- '.' redo works for input mode Ctrl-T, Ctrl-D,
Ctrl-<, Ctrl->
- C on empy line no longer deletes line
- [#1724053] Missing EOL in visual mode yank
- PCMark, "''", after incremental search not correct
- Add "Backward range given, ok to swap" dialog for : ranges
- Fix p command to work when visual selection.
Thanks Roy.
- Fix marks, they should have had a fixed column position; instead
column adjusted as chars inserted/deleted. Been that way forever,
only noticed with the gv command.
- For :f and Ctrl-G indicate modified as
appropriate
Version 0.9.0/0.9.1 04/17/07
This release has the single most requested feature and
biggest jVi core development effort since jVi was introduced
over 5 years ago; thanks to Roy van der Kuil Visual Mode
is now available. Tag stack also available.
- jVi Core
-
- [#1678712] Visual mode: v V '< '> `< `>
thanks to Roy van der Kuil. (not visual block yet, but on the way)
- [#424678 ] sentence and paragraph motions: { } ( )
thanks to Jose Alburquerque.
- [#1679153] Tag stack:
Ctrl-] [count]Ctrl-T :[count]ta[g] :tags :ts[elect]
:tag and :tselect with no arguments
- [#1688909] Regular, Shift and Control for Enter, Escape,
BackSpace and Tab can be enabled for jVi handling through options.
- zz cursor to cente of screen command
- when search or command entry widget comes up, the previous entry is
displayed in combo box; it is highlighted so any input will erase it.
- Bug fixes
-
- [#1703078] [JVI 0.9.0] NullPointerException
- :set [no]ic NPE (bitten by a last minute change)
- z<ENTER> did nothing except beep.
- [#1695646] shift-O on first line of file is broken
- Status display fix: don't loose "red" in messages.
- Avoid doing bogus searches associated with incremtental search.
- Fix some NB6 issues
Version 0.8.3 03/07/07
These are the changes since the snapshot release 0.8.0 which was
made available mid February.
Incremental search and :set are
my favorites.
- jVi NetBeans KeyBindings
-
- jVi keybindings attach to any file type.
- Use Tools > jVi menu checkbox to enable/disable jVi.
- Can bind jVi-enable toggle to a shortcut.
In Tools > Options > keymap, open the Tools folder, bind jVi.
- jVi install does not require NB restart.
- :n, :N, :prev traverses the MRU list,
use :ls to see list.
- Advanced Options modifications to jVi KeyBindings effective immeadiately.
No restart required.
- Simplify StatusBar interface/ui.
- showcmd and showmode are now options.
- jVi Core
-
- Incremental search. Not particularly efficient,
quite the opposite.
- A few :set commands: ignorecase,
incsearch, number, tabstop,
shiftwidth and expandtabs See
Colon Commands and
NetBeans
options information.
- Added gg normal command.
- m< and m> mark the current line before
jumping so the '' returns. (Like doing m').
- Ctrl-< and Ctrl-> will catch first
non blank in a line.
- In [count]<op>{motion}, when {motion} was
a search like /foo, the <op> was ignored. So now
stuff like y/foo and 3d/one work.
- Bugs fixed
-
- [#1665143] With JDK1.5, search not possible in netbeans JVI editor
- [#780967] Ctrl-E and Ctrl-Y
- Searching and Options work with JDK1.5.
- keypad keys and other non-characters no longer go into the file,
they kick you out of input mode.
- An assert would fire if options brought up before init'd.
- '.' with input mode dump'd stacktrace (not an exception)
- Various other exceptions
Version 0.7.1 08/24/02
- Bugs fixed
-
- [#597899] :make and :build broken in JB7
- [#598501] % brace matching broken in JBuilder 7
Version 0.7.0 08/07/02
- New features
-
- Works with JBuidler 7 only. Use 0.6.6 for earlier versions.
- Bugs fixed
-
- [#564025] Will not load in JBuilder 7
Version 0.6.6 04/07/02
- New features
-
- undo/redo handling now matches vim; the action always
causes a change, never just cursor movement.
The JBuilder/swing behavior is available as an option.
- :s command with no args repeats last substitute command.
- Bugs fixed
-
- [#520480] more Read-only problems. Handling switch
between writable/read-only.
- [#520481] Can't "put" at the end of a file.
- Show '?' in search command entry for backwards search.
Version 0.6.5 02/17/02
- Bugs fixed
-
-
[#212530] Some commands fail on read-only files
jVi, when running under JBuilder, now has an option to work
around this jdk1.3 issue. The problem is that if
JEditorPane.isEditable() is false, then KEY_TYPED events are not
delivered to the application. Stuff like '^D' still gets through,
but normal asci does not.
The fix involves changing 'isEditable()' while the window is the
currently active editor. This behavior, which defaults on, can be
turned off with the 'hack read-only' option in the 'Editor' tab of
the 'EditorOptions' dialog.
Version 0.6.4 02/02/02
- Bugs fixed
-
-
[ #456635 ] Indent ending curly brace with JBuilder5, JBuilder6
-
[ #494586 ] Keystrokes not processed in JBuilder 6, Code Insight
-
[ #484417 ] Installation
(read only files still not handled completely)
Version 0.6.3.6 02/18/01
- Bugs fixed
-
- 132312: "*" search command can freeze editor
This was introduced
in the last release. Failed only under certain conditions.
Some commands, as well as searching, may be affected.
Version 0.6.3.5 01/30/01
- Bugs fixed
-
- 107566: "/" or ":" dialog doesn't get focus
With some combinations of jdk/window-managers,
on some unix systems, including linix, the dialogs used
for entering ":" commands and search patterns would not get
the focus when they poped up. This workaround puts the input
field on the glass pane rather than using a seperate frame.
Thanks to Keith Gaddis for this fix.
Under JBuilder4 the old behavior, modal frame, can be
selected. It is a misc boolean option. After making the selection
JBuilder must be restarted for the change to take effect.
Version 0.6.3.3 10/29/00
- New features
-
- JBuilder: ":e" commands, e.g. ":e#" or ":e -3",
now works with .class files
- Bugs fixed
-
- 117287: Does jVi support special, e.g. french, characters?
In insert mode control characters and others are no
longer filtered out.
Any and all unicode characters that are received
are inserted into the file (except zero).
- 116560: JBuilder: Renaming open file renders editor useless
Version 0.6.3.2 9/20/00
- New features
-
- JBuilder4 supported
- JBuilder4 only: if
Cosmetics open tool is loaded, then there is
a command ":tog[gle] tab[s]".
- Bugs fixed
-
- 113802: ":0" command should go to first line
- 114281: JBuilder: in insert mode if the user enters a tab
character the UseTabs Option should be followed. See
Bug Report for details.
Version 0.6.3 8/01/00
- New features
-
- :delete command
- :global command
:global/pattern/command
only commands substitute, print and delete one line are supported.
- print flag supported by substitute command
- In insert mode, Ctrl-',' and Ctrl-'.' (think of them as
Ctrl-'<' and Ctrl-'>') indent line left/right
so first character of line is after '(' in previous line.
Useful for aligning arguments of function call.
-
- Bugs fixed
-
- 108836: With gnu.regex the end of line anchor, "$", doesn't work.
- 109242: up/down arrow sometimes goes to wrong column position.
- JBuilder: tab in insert mode now inserts a tab
character (not shiftwidth) unless smart tab option is set
- JBuidler: "o" command would sometimes (after replace mode)
forget to insert a new line
-
- Notes
-
- In JBuilder the results of "print" from
:s///p
and :g//p
,
go to the search tab.
Version 0.6.2 7/01/00
- Thanks to Jeff Kreska for all the bug reports!
- New features
-
- substitute command
:[<addr>[,<addr>]]s[ubstitute]/pattern/replacement/[g]
- JBuilder: Keep focus in source editor after ":q" or ":close"
- 107684: status/error messages cleared after a scroll
- Scrolloff configuration variable is implemented
- GNU regexp package support
- Bugs fixed
-
- 107919: Bind 'CTRL-[' to escape
- no more micro-scrolling
- 108062: Pressing CTRL-F or <pgdown> when
close to EOF causes redraw problems
- 106829: JBuilder: searching broken if no third
party regular expression package in application's classpath
- 106947: window redraw is screwed up if last line deleted
- Differences and notes
-
- JBuilder: when CodeInsight is dismissed with the escape key and jVi is
in input mode, jVi goes into command mode.
- JBuidler: If the browser window is sized so that the toolbar wraps onto
multiple lines then messages will usually be lost.
- If gnu.regexp is used, the pattern assertions '\b' and '\B' are not
supported, note that these are used to implement '\<' and '\>'.
Version 0.6.1 5/28/00
- Corresponds to first (premature?) source release.
- Bug fixes:
-
- fix: tabs for left/right shift, '<' and '>', fixed.
In JB controlled with "useTabCharacter".
- JB fix: ":q" in split window only closes current window, not node/tab.
- fix: C-End, C-Home, C-Left, C-Right
- All problems reported at
jVi Bug Tracking closed.
- Alpha/preview feature:
- ":[<addr>[,<addr>]]s[ubstitute]/pattern/replacement/[g]"
Version 0.6 4/01/00
- Additional Normal Mode Commands:
- '*' and '#'
- Perl5 Regular Expressions:
- User must put either
OROMatcher
or
com.stevesoft.pat (version 1.4) in path.
Options available on what needs to be escaped.
- ':' Commands:
- w[rite] [*], wa[ll], q[uit], f[ile], clo[se],
on[ly], e[dit] #[number].
- Window Commands:
- split: Ctrl-W Ctrl-S, Ctrl-W S, Ctrl-W s
- close current: Ctrl-W Ctrl-C, Ctrl-W c,
:close
- close all but current: Ctrl-W O, Ctrl-W o,
:only
- next window: Ctrl-W Ctrl-W, Ctrl-W w
- JB ':' Commands:
- mak[e] [%],
bui[ld] [%],
run,
deb[ug],
tog[gle] <view-pane>
- Macros Usablity Fixes
- now 'q' command macros
can search, do input mode, escape, return, ...
Version 0.5 2/15/00, First Release
- marks, named buffers, '*' for clipboard
- yank, put handle both line and character mode.
- Macros using 'q' command.
- Over 100 normal mode commands
Copyright © 2022 Ernie Rael
Contact jVi support