jVi - vi editor clone

Welcome to the jVi home page. Currently these pages have some random thoughts/comments, serve as the user documentation and get you to jVi for NetBeans download and other jVi download info. There is news and information about the different applications in which jVi is integrated.

Note that jVi is a port of a major chunk of vim. It is not like many IDE keybindings where, for example, I often hear stuff like "its similar to emacs but not the same". jVi is the same, try :.,$s/([^ ]*) (.*$)/\2 \1/ (you can set options so you don't need to escape '(' and other metacharacters in regular expressions) or "*2d3w which deletes 6 words stashing them in the system clipboard or y% or ... And, yes, "." works. There is stuff missing, but if what's there doesn't work like vi/vim then its a bug (or a feature).

And jVi has features not found in vim.

After a 5 year hiatus from Java, there's some personal projects I want to Built for NetBeans work on, 3D visualization of Sacred Geometry is one of them and there may be some RCP. I wanted to use an open source IDE, not JBuilder, and that means another port of jVi. I looked at Eclipse, but the burden of SWT was more than I would bear. Looking through some NetBeans mail archives I was led to some work that Rich Unger did a few years ago to integrate jVi into NetBeans; many thanks Rich. He said he put it together in an evening; it was a good proof of concept, there was vi behavior in the editor, but it was unusable for work. But that starting point saved me countless hours. And now, with an editor I want to use, I can start learning about NetBeans and get my personal projects going.

Check out jVi in NetBeans and status, issues and bugs. Share your opinions and comments at the jVi Open Discussion Forum; if you use jVi, consider monitoring this Forum.

jVi is available for recent JBuilder releases, that to the efforts of scribe777. There's jVi in JBuilder documentation, including known defects.

There's jVi javadoc.

SourceForge Logo jVi is hosted on on SourceForge and makes use of only some of the facilities. This includes hosting this web site, the CVS source repository, bug tracking and mailing lists.

Why jVi?

jVi is motivated by my frustration with the editors provided by desktop apps, from mail readers to IDE's.  The advent of java based desktop apps, and the ability to extend them, makes it possible to put together a vi which easily integrates into multiple disparate apps. A goal, over time, is to make jVi fully functional with good performance. However i believe there will always be performance limitations with jVi and expect to continue using "native" editors for heavy duty tasks.

jVi is patterned after vim. Vim Logo Vim is freely available charityware and running on a large number of platforms, including for instance amiga and mac. Check out the site for general vi pointers and documentation. jVi is a small subset of vim. Some source code in jVi is taken from vim and modified to work in the java environment. The user documentation is almost exclusively from vim, only modified to remove things that are not applicable.

Quick Start

There is a list of all normal mode commands supported by vim. In this list, the over 100 commands supported by jVi are marked. The ' and " for marks and named buffers work as expected; a * is a named buffer for the clipboard. There are a few colon commands available, try :g/foo/s/bar/baz/gp, and also see the platform specific documentation for additional colon commands. In insert mode, only the simple Ctrl-D and Ctrl-T are supported. Though jVi sports a Ctrl-< and Ctrl-> in insert mode to align with '('s on the previous line.

If you are a vi or vim user you can just start using jVi and be comfortable. You may occasionally see a "not implemented" message. There are a variety of options available. Check the Reference Doc for more information. There are also some jVi only features.

Text search commands, for example "/" and "?", use the vim regular expression syntax, see Searching and Patterns. If you don't like escaping characters like "(" and "|" in patterns there are options to change that. The java.util.regex package is used and javadocs describe the pattern syntax.

jVi is embedded; where applicable, the standard commands, for example ":w", are directed to the application for execution. There may be capabilities available while editing that are provided by the primary application. For example, when jVi is used within JBuilder, or NetBeans, code insight works while editing. The platform specific documentation about jVi should be consulted.

Almost all of the reference documentation is derived from the vim help files. A subset of the vim help files are included. They are modified to remove things that are not applicable. This is detailed information on the commands and operation.

Support

Feedback is particularly wanted about

License Information

The source code for jVi is licensed under the MOZILLA PUBLIC LICENSE.

See The Open Source Page and Open Source Page's Approved Licenses for more information on Open Source licensing.

jVi Download

NetBeans

jVi for NetBeans is available at sourceforge's jVi download page.

The jVi NBMs are signed. Here it is in human-readable format.

keytool -printcert -file jvi.cert
Owner: OU=jVi, O=Raelity Engineering, L=Campbell, ST=California, C=US
Issuer: OU=jVi, O=Raelity Engineering, L=Campbell, ST=California, C=US
Serial number: 45d098d3
Valid from: Mon Feb 12 08:41:55 PST 2007 until: Thu Aug 16 09:41:55 PDT 2012
Certificate fingerprints:
         MD5:  6B:A3:8E:AB:9A:FF:93:9A:33:88:E6:E3:50:37:53:3B
         SHA1: F1:AE:A1:0F:06:58:C5:A1:73:13:26:F8:1B:D4:49:98:14:A1:37:3C
         Signature algorithm name: SHA1withDSA
         Version: 3

JBuilder

jbvi-0.7.1.jar only works with JBuilder7, use jbvi-0.6.6.jar for earlier versions of JBuilder. For Jbuilder 3.5 use jbvi-0.6.3.6. Download the file and extract the jar file into JB's lib/ext directory; for some JB releases you must manually add it to JB's classpath. The jar file can be extracted from the zip file using the jar commaned, for example jar -xf jbvi-0.7.1.zip jbvi-0.7.1.jar. You may want to SHIFT-CLICK to download one of the following links. See downloaded docs for information on enabling full regular expression support if there seem to be issues.

Enable Vi in JBuilder.
After installing the jar into JB's lib/ext directory, restart JBuilder. On JBuilder's menu line, select "Tools|IDE Options". Select the "Browser" tab. The "Keymap:" combo box should allow you to select "VI". Also there is a "VI..." tab for some options and there are also some vi options in the "Editor" tab.

jVi versions for JBuilder 2005, 2006 from a jVi user (Thanks to scribe777)

Version 0.7.1


Copyright © 1998-2000,2007 Raelity Engineering
Contact Raelity Engineering