sponsor Vim development Vim logo Vim Book Ad

Vim JDE : Vim - Just a Development Envirement (Java/C++)

 script karma  Rating 975/317, Downloaded by 45316  Comments, bugs, improvements  Vim wiki

created by
JiuTian Zhang
script type
Just  a  Development Environment  for VIM . (VJDE)
And now , It's support C++/C by ctags
(VIM>=700  , +ruby future is on , JDK 1.5 support , JDK1.4 (maybe, not tested))

It's Had  been tested on Leopard 10.5.1 .

use <c-space> as the Code completion key!
change it by
:let g:vjde_completion_key='<c-space>'

doc http://www.hiibox.com/vjde-tut/index.htm .
A quick refrence create by Andrea Spadaccini http://media.cqic.com.cn/vjde-tut/vJDE_qr.pdf

English Version will coming soon.
Just work for :
       Project manager (load/store  your VJDE settings)
       Code completion ( working for java and jsp,taglib,html,xml,xsl,xsd) (VIM 7.0 required)
       Source tools( variable extract local, member,argument,  extract number or String to constance , fix build
                             unreported exception error ( depends on getqflist() )
        Source tools ( Override methods, implements interface,extract import, sort import)
       Create javadoc (depends on jcommentor.vim)
       Create getter/setter stub.
       Generate constructor of class which has all member;
      Support for annotation completion.
       Use readtags for tags parse.
       Bug fix.
       Code completion for more language available .(require ctags)
       let g:vjde_ctags_exts='vim;rb'
       Code template more powerfull!
      Put your own definition file , such as c.iab,vim.iab,cpp.iab ruby.iab to ~/.vim/vjde/
       let g:vjde_iab_exts='c;vim;cpp;rb'
      in you c/c++/vim/ruby file, you can use <c-j>
       More beautiful document viewer. ^_^
       C++/C Code completion support for both GUI and Console
       C++/C parameter information support for both GUI and Console
       ctags --c++-kinds=+px -R .
       For search speed , Befor your use Code completion,
       :call VjdeCppGenerateIdx()
      to generate a index file for your every tag file.
      see vcde.txt for detail
New (2005-08-27)
       Add JAVA document preview in GUI mode
       Add code template like (for block...) in console mode.
       Improved Preview window.
New (2005-09-01)
        More beautiful document window.^_^
        C++/C preview support
       C++/C parameter information support.

New (2005-08-22)
         Add import statement for classes .
         Add code template like (for block, while block...)
         Create javadoc (depends on jcommentor.vim)
         Create getter/setter stub.
         Generate constructor of class which has all member;
         Allow    write your own template file in: ~/vim/.vjde/iab.vjde
                                see vimfile/plugin/vjde/tlds/iab.vjde for detail.
         Bugfix for vim install on a folder like : c:\program files\vim..
         Add menu shortcut.
New (2005-04-30) Add sensitive java code support for dot '.' , '@',
       Add sensitive Jsp code support for '<' ':' and space.
New . Code completion support for packages.
         import java.net.<CTR>-x<CTR>-u

         or in coding:

        Code completion      
This future is depends on JDK, the java reflect API.
               available for
               a[+-*/%&|^=] str.<CTR>-x<CTR>-u
               return str.<CTR>-x<CTR>-u
                new Something(str.<CTR>-x<CTR>-u
         Use it , enjoy it.
         Completion for jsp
                <jsp:include <CTR>-x<CTR>-u
                <jsp:include flush="<CTR>-x<CTR>-u
         Completion for taglib (ie. STL)
           <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core";%>;
             :XMLns stl_c c
             <c:out <CTR>-x<CTR>-u

         Completion for xml ....(See doc for detail...)

        Definition search ( User Command    :Vjdei)
                you can list a class or a field or a method detail
                For example:
                Place cursor on the class System, the detail of System  would be shown , Constructor, fields
,methods, inner class ...

TODO list :

Tanks for every one who's name is occurred in my source code. ^_^

install details
unzip this file
         tar -xzf vjde.tgz  /usr/share/vim/vimfiles
         chmod +x /usr/share/vim/vimfiles/plugin/vjde/readtags

start vim
          :helptags /usr/share/vim/vimfiles/doc
          :h vjde

To use VJDE GUI preview , add the preview.dll of old version for the latest version.

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
vjde.tgz 2.7.0 2016-08-04 7.0 JiuTian Zhang new version.bug fix. add <c-x><c-o> after HashMap<String,String> abc =new <c-x><c-o> .
vjde.tgz 2.6.18 2011-12-05 7.0 JiuTian Zhang change the encoding of somefiles
vjde.tgz 2.6.17 2011-08-13 7.0 JiuTian Zhang Bug fix for smartcase or caseignore option.
Fixed by Silver Gibiansky.
vjde.tgz 2.6.16 2011-06-28 7.0 JiuTian Zhang add
let g:vjde_tab_cfu=1
in your _vimrc,
then you can use <tab> to finish the completion.
will show the same result.
vjde.tgz 2.16.5 2011-06-28 7.0 JiuTian Zhang add completion for constructor:
ArrayList<String> abc = new <c-x><c-u>
will completion
ArrayList<String> abc = new ArrayList<String>(
vjde.tgz 2.16.4 2010-11-14 7.0 JiuTian Zhang 1. improved for completion :
new java.<c-x><c-u>
2. add <leader>ii to implements a interface with an anonymous class.
new Thread(new Runnable() {   <--here ,<leader>ii

would add the function of Runnable.
vjde.tgz 2.16.2 2009-07-11 7.0 JiuTian Zhang bug fix for LINUX and MAC OS .
vjde.tgz 2.16.1 2009-06-25 7.0 JiuTian Zhang completion bug fix for something like javax.naming.*
vjde.tgz 2.16.0 2009-03-04 7.0 JiuTian Zhang Support for annotation completion.
Line completion support :
I just support for one line
@Actions ( { @Action ( results={@Result
vjde.tgz 2.15.2 2009-02-23 7.0 JiuTian Zhang bug fix for java code completion in jsp.
vjde.tgz 2.15.1 2009-02-23 7.0 JiuTian Zhang improve for taglib completion in jsp file.
vjde.tgz 2.15.0 2009-02-21 7.0 JiuTian Zhang add completion support for taglib, It's automaticaly enabled for JSTL,JSF.
once your input <%@ taglib prefix="<c-x><c-u> , you can select your taglib
:h g:vjde_taglib_uri
vjde.tgz 2.14.6 2009-01-13 7.0 JiuTian Zhang bug fix for package completion. tested on jdk.1.6.0_01,
compiled with ant , options target="1.4" source="1.4"
vjde.tgz 2.14.4 2008-03-13 6.0 JiuTian Zhang compile with JDK1.5
vjde.tgz 2.14.2 2007-12-15 7.0 JiuTian Zhang Fix completion for this.<c-x><c-u>
Fix for VjdeDtd2Data
vjde.tgz 2.14.1 2007-08-10 7.0 JiuTian Zhang bug fix for linux system.
vjde.tgz 2.14 2007-07-25 7.0 JiuTian Zhang completion for parameters of a constructor
completion for name of the package which is come from JDK.
vjde.tgz 2.13.3 2006-12-18 7.0 JiuTian Zhang Buf fix for parameter preview.
After a "(", use <c-x><c-u> would show the parameter info of this function.
vjde.tgz 2.13.2 2006-09-18 7.0 JiuTian Zhang Fix a bug of document viewer : Once  vim lost the focus, the document viewer can't be found , can't be closed .^_^
vjde.tgz 2.13.1 2006-09-13 7.0 JiuTian Zhang Bug fix for cast statement.
Add JavaDoc viewer. During your completion, use the <f1> to call the JavaDoc Viewer. Setup your JavaDoc Path in vimrc:
let g:vjde_javadoc_path='e:/downloads/java/docs/api'

Add Function to remove all import statement which is not used.
Use the command <leader>ri . Remove Import.

A clear version.
vjde.tgz 2.12.5 2006-08-21 7.0 JiuTian Zhang Bug fix for code template.
Take affect on code template completion . For example  i<alt-.>
to generate if () {
vjde.tgz 2.12.4 2006-08-20 7.0 JiuTian Zhang 修改了 代码模板 提 示的 bug.
用于 if<alt-.> 这样的提示.
vjde.tgz 2.12.3 2006-07-17 7.0 JiuTian Zhang Bug fix for java package completion. Thanks for Attila Piros. ^_^
vjde.tgz 2.12.2 2006-06-28 7.0 JiuTian Zhang remove stl_fn.vim from autoload/xml.

you can remove this file by yourself.
vjde.tgz 2.12.1 2006-06-26 7.0 JiuTian Zhang Use the xml completion for java taglib completion.
Some Bug fix
vjde.tgz 2.12.0 2006-05-15 7.0 JiuTian Zhang Bug fix for vim7.0
Use popup menu to select code template.
If your want to use the old version,
add following in your .vimrc
vjde.tgz 2.11.4 2006-04-10 7.0 JiuTian Zhang Fix a minor bug.
Add a simple auto completion for ruby.
:h vjde-ruby
for detail.
vjde.tgz 2.11.3 2006-04-04 7.0 JiuTian Zhang bug fix for Project menu.
remove ruby require for taglib completion.
vjde.tgz 2.11.2 2006-04-03 7.0 JiuTian Zhang Add a dtd to xmldata ruby script.
Add a taglib define (TLD) to xmldata ruby script.
:h vjde-xmldata

Move html , taglib completion to htmlcomplete#CompleteTags
Add command

:h vjde-taglib
:h vjde-xml
vjde.tgz 2.11.1 2006-03-29 7.0 JiuTian Zhang Java completion improved.
Using JDK 1.4 compiled.
Use <c-x><c-u> to start completion in popupmenu.
A simple c# support added.

Remove My own Preview GUI support!!!
vjde.tgz 2.11.0 2006-03-20 6.0 JiuTian Zhang Support the latest Vim .
Remove html suport , Should use omni xhtml to instead .
vjde.tgz 2.10.01 2006-01-16 6.0 JiuTian Zhang Add fix tools for other language.
Bug fix for c++ reference .
vjde.tgz 2.10.00 2006-01-05 6.0 JiuTian Zhang Add <c-l> for console completion key in insert mode.(c++/c/java users,)
Fix a minor bug for corperation of taglist plugin.
Add auto_ptr<T t> code completion support.
While use following coding:
auto_ptr<MyClass> MyClassPtr;
        MyClassPtr ptr1 = new ...;
VJDE will completion for MyClass , not for auto_ptr.
For use this new function , your had to add a file:

This file contains all of your used something like auto_ptr
My own file looks like:
vjde.tgz 2.02.09 2005-10-07 6.0 JiuTian Zhang Since the VIM autoload the script from the sub-directory , So, the loading order
must be correctly.
Fix it for VIM70aa-154
vjde.tgz 2.02.08 2005-09-18 6.0 JiuTian Zhang Change the API structure to fit the latest VIM.
change VjdeCompletionFun(line,base,col,findstart)
to VjdeCompletionFun0(findstart,base)

vjde.tgz 2.02.07 2005-09-11 6.0 JiuTian Zhang Add gtk tags for window version.
Add more power full struct support which ctags not supported!
   typedef struct {
        int a;
        int b;
   } SA;
   SA sa;
vjde.tgz 2.02.07 2005-09-08 6.0 JiuTian Zhang I forget to remove the ruby require for cpp completion.^_^
You can remove  it by your self .
plugin/vjde/vjde_cpp_completion.vim  line 3 and line 4
vjde.tgz 2.02.06 2005-09-08 6.0 JiuTian Zhang Add pure vim ctags support ( use vim +readtags) .
It's slowly than ruby+readtags
To  use this feature , for your vimrc , add this line
vjde.tgz 2.02.05 2005-09-08 6.0 JiuTian Zhang Use readtags instead of ruby parser for tags parsing.(more quickly)
Linux GUI version bug fixed.
see vcde.txt for detail.
use : gcc -static -o plugin/vjde/readtags src/readtags.c -DREADTAGS_MAIN
compile readtags on win32 and mandrake
vjde.tgz 2.02.04 2005-09-06 6.0 JiuTian Zhang Improve the seach speed for a member of a function.
Improve for the complex defination of c++ variable, like:
   boost::multi_index<string,char>::index idx;

vjde.tgz 2.02.03 2005-09-05 6.0 JiuTian Zhang Bug fix . ^_^
vjde.tgz 2.02.02 2005-09-03 6.0 JiuTian Zhang Some bugfix for linux user.
I found that sometimes I will crash your GVIM under linux.
So, It's recommened use preview in console mode is usefull for LINUX user.
vjde.tgz 2.02.01 2005-09-01 6.0 JiuTian Zhang All of ctags supported language is supported for code completion .
setup variable:  
can be used for VJDE self. Then , I can use <c-space> in vim and
ruby file to popup a completion preview window or in console.

Iabbr support Every language with filetype can be detected by VIM
put something like ruby.iab and vim.iab to ~/.vim/vjde/ , then , setup:
Then, I can use <c-j> in ruby or vim file to select code template .

And , add ruby.vjde to ~/.vim/vjde/, the menu Vim JDE->Wizard->ruby
World be append, and , in a ruby file, select a template ....
vjde.tgz 2.02.00 2005-09-01 6.0 JiuTian Zhang More beautifull docment window for Java . ^_^
c++ preview supported !
c++ parameter info preview supported .
see http://www.publicinfo.com.cn/wfc/index.html for snapshot

vjde.tgz 2.01.00 2005-08-27 6.0 JiuTian Zhang Add a document preview window for Java code .
Add code block template (iab) for console user.
vjde.tgz 2.00.13 2005-08-22 6.0 JiuTian Zhang minor changed
vjde.tgz 2.00.12 2005-08-18 6.0 JiuTian Zhang mirror bugfix for 2.00.12.
vjde.tgz 2.00.11 2005-08-17 6.0 JiuTian Zhang fix for bugs . when the vim home is contains a space , VJDE is not avaliable.
Add menu shortcut for menu.

Thanks for any advice.
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.
Vim at Github