-
Notifications
You must be signed in to change notification settings - Fork 82
/
Copy pathjavacomplete.txt
821 lines (579 loc) · 26.9 KB
/
javacomplete.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
*javacomplete.txt* Updated version of the original javacomplete plugin
artur shaik *javacomplete*
==============================================================================
CONTENTS *javacomplete-contents*
1. Overview..........................................|javacomplete-overview|
1. Download......................................|javacomplete-download|
2. Features......................................|javacomplete-features|
3. Install........................................|javacomplete-install|
4. Requirements..............................|javacomplete-requirements|
2. Usage................................................|javacomplete-usage|
1. Class creation................................|javacomplete-classnew|
2. Commands......................................|javacomplete-commands|
3. Input contexts................................|javacomplete-contexts|
4. Kind letter.................................|javacomplete-kindletter|
5. Options.........................................|javacomplete-config|
3. FAQ....................................................|javacomplete-faq|
4. History............................................|javacomplete-history|
5. Todo..................................................|javacomplete-todo|
6. Thanks..............................................|javacomplete-thanks|
==============================================================================
OVERVIEW *javacomplete-overview*
This is javacomplete, an omni-completion script of JAVA language for vim 7 and
above. It includes javacomplete.vim, java_parser.vim, javavi library,
javaparser library and javacomplete.txt.
==============================================================================
DOWNLOAD *javacomplete-download*
You can download the lastest version from this url:
https://github.com/artur-shaik/vim-javacomplete2
==============================================================================
FEATURES *javacomplete-features*
1. List members of a class, including (static) fields, (static) methods and
ctors;
2. List classes or subpackages of a package;
3. Provide parameters information of a method, list all overload methods;
4. Complete an incomplete word;
5. Provide a complete JAVA parser written in Vim script language;
6. Use the JVM to obtain most information;
7. Use the embedded parser to obtain the class information from source
files;
8. JSP is supported, Builtin objects such as request, session can be
recognized;
9. The classes and jar files in the WEB-INF will be appended automatically
to the classpath;
10. Server side java reflection class loader and parsing library;
11. Search class files automatically;
12. Complete class name;
13. Add import statement for a given class name;
14. Complete methods declaration after '@Override';
15. Support for maven, gradle and Eclipse's '.classpath';
16. Cross-session cache;
17. Auto insert methods that need to be implemented;
18. `toString`, `equals`, `hashCode`, Accessors generation.
==============================================================================
INSTALL *javacomplete-install*
1. This assumes you are using `Vundle`.
Adapt for your plugin manager of choice. Put this into your `.vimrc`.
>
" Java completion plugin.
Plugin 'artur-shaik/vim-javacomplete2'
<
2. Set 'omnifunc' option. e.g.
>
autocmd Filetype java setlocal omnifunc=javacomplete#Complete
<
3. Map keys you prefer:
For smart (trying to guess import option) insert class import with <F4>:
>
nmap <F4> <Plug>(JavaComplete-Imports-AddSmart)
imap <F4> <Plug>(JavaComplete-Imports-AddSmart)
<
For usual (will ask for import option) insert class import with <F5>:
>
nmap <F5> <Plug>(JavaComplete-Imports-Add)
imap <F5> <Plug>(JavaComplete-Imports-Add)
<
For add all missing imports with <F6>:
>
nmap <F6> <Plug>(JavaComplete-Imports-AddMissing)
imap <F6> <Plug>(JavaComplete-Imports-AddMissing)
<
For remove all missing imports with <F7>:
>
nmap <F7> <Plug>(JavaComplete-Imports-RemoveUnused)
imap <F7> <Plug>(JavaComplete-Imports-RemoveUnused)
<
For sorting all imports with <F8>:
>
nmap <F8> <Plug>(JavaComplete-Imports-SortImports)
imap <F8> <Plug>(JavaComplete-Imports-SortImports)
<
Default mappings:
>
nmap <leader>jI <Plug>(JavaComplete-Imports-AddMissing)
nmap <leader>jR <Plug>(JavaComplete-Imports-RemoveUnused)
nmap <leader>ji <Plug>(JavaComplete-Imports-AddSmart)
nmap <leader>jii <Plug>(JavaComplete-Imports-Add)
nmap <Leader>jis <Plug>(JavaComplete-Imports-SortImports)
imap <C-j>I <Plug>(JavaComplete-Imports-AddMissing)
imap <C-j>R <Plug>(JavaComplete-Imports-RemoveUnused)
imap <C-j>i <Plug>(JavaComplete-Imports-AddSmart)
imap <C-j>ii <Plug>(JavaComplete-Imports-Add)
nmap <leader>jM <Plug>(JavaComplete-Generate-AbstractMethods)
imap <C-j>jM <Plug>(JavaComplete-Generate-AbstractMethods)
nmap <leader>jA <Plug>(JavaComplete-Generate-Accessors)
nmap <leader>js <Plug>(JavaComplete-Generate-AccessorSetter)
nmap <leader>jg <Plug>(JavaComplete-Generate-AccessorGetter)
nmap <leader>ja <Plug>(JavaComplete-Generate-AccessorSetterGetter)
nmap <leader>jts <Plug>(JavaComplete-Generate-ToString)
nmap <leader>jeq <Plug>(JavaComplete-Generate-EqualsAndHashCode)
nmap <leader>jc <Plug>(JavaComplete-Generate-Constructor)
nmap <leader>jcc <Plug>(JavaComplete-Generate-DefaultConstructor)
imap <C-j>s <Plug>(JavaComplete-Generate-AccessorSetter)
imap <C-j>g <Plug>(JavaComplete-Generate-AccessorGetter)
imap <C-j>a <Plug>(JavaComplete-Generate-AccessorSetterGetter)
vmap <leader>js <Plug>(JavaComplete-Generate-AccessorSetter)
vmap <leader>jg <Plug>(JavaComplete-Generate-AccessorGetter)
vmap <leader>ja <Plug>(JavaComplete-Generate-AccessorSetterGetter)
<
4. Javavi library will be automatcally compiled when you
use first time. If no libs/javavi/target is generated, check that you have
the write permission and jdk installed.
==============================================================================
REQUIREMENTS *javacomplete-requirements*
1. Vim version 7.4 and above with python support;
2. JDK8.
==============================================================================
USAGE *javacomplete-usage*
You can use `vim-javacomplete2` just like other omni-completion plugin. Many
samples of input context are gived in the following section.
See |javacomplete-faq| in time if some problem occurs. When meeting other
problems not described in FAQ, you can contact with the auther by the
following e-mail: ashaihullin@gmail.com
==============================================================================
CLASS CREATION *javacomplete-classnew*
Prompt scheme, for class creation:
>
template:[subdirectory]:/package.ClassName extends SuperClass implements
Interface(String str, public Integer i):contructor(*):toString(1)
<
A: (optional) template - which will be used to create class boilerplate. Some
existed templates: junit, interface, exception, servlet, etcl
B: (optional) subdirectory in which class will be put. For example: test,
androidTest;
C: class name and package. With `/` will use backsearch for parent package to
put in it. Without `/` put in relative package to current;
D: (optional) extends and implements classes will be automatically imported;
E: (optional) private str variable, and public i variable will be added to
class;
F: (optional) contructor using all fields and toString override method with
only 'str' field will be created. Also hashCode and equals can be used.
There is autocompletion in command prompt that will try to help you. Your
current opened file shouldn't have dirty changes or 'hidden' should be set.
==============================================================================
COMMANDS *javacomplete-commands*
All these commands are supported when encoding with java project.
:JCimportsAddMissing *:JCimportsAddMissing*
add all missing 'imports'
:JCimportsRemoveUnused *:JCimportsRemoveUnused*
remove all unsused 'imports'
:JCimportAdd *:JCimportAdd*
add 'import' for classname that is under cursor, or before it
:JCimportAddSmart *:JCimportAddSmart*
add 'import' for classname trying to guess variant without ask user to
choose an option (it will ask on false guessing)
:JCimportsSort *:JCimportsSort*
sort all 'imports'
:JCserverShowPort *:JCserverShowPort*
show port, through which vim plugin communicates with server;
:JCserverShowPID *:JCserverShowPID*
show server process identificator;
:JCserverStart *:JCserverStart*
start server manually;
:JCserverTerminate *:JCserverTerminate*
stop server manually;
:JCserverCompile *:JCserverCompile*
compile server manually;
:JCdebugEnableLogs *:JCdebugEnableLogs*
enable logs;
:JCdebugDisableLogs *:JCdebugDisableLogs*
disable logs;
:JCdebugGetLogContent *:JCdebugGetLogContent*
get debug logs;
:JCcacheClear *:JCcacheClear*
clear cache manually.
:JCgenerateAbstractMethods *:JCgenerateAbstractMethods*
generate methods that need to be implemented
:JCgenerateAccessors *:JCgenerateAccessors*
generate getters and setters for all fields;
:JCgenerateAccessorSetter *:JCgenerateAccessorSetter*
generate setter for field under cursor;
:JCgenerateAccessorGetter *:JCgenerateAccessorGetter*
generate getter for field under cursor;
:JCgenerateAccessorSetterGetter *:JCgenerateAccessorSetterGetter*
generate getter and setter for field under cursor;
:JCgenerateToString *:JCgenerateToString*
generate 'toString' method;
:JCgenerateEqualsAndHashCode *:JCgenerateEqualsAndHashCode*
generate 'equals' and 'hashCode' methods;
:JCgenerateConstructor *:JCgenerateConstructor*
generate constructor with chosen fields;
:JCgenerateConstructorDefault *:JCgenerateConstructorDefault*
generate default constructor;
:JCclassNew *:JCclassNew*
open prompt to enter class creation command;
:JCclassInFile *:JCclassInFile*
open prompt to choose template that will be used for creation class
boilerplate in current empty file;
==============================================================================
INPUT CONTEXTS *javacomplete-contexts*
It recognize nearly all kinds of Primary Expressions (see langspec-3.0) except
for `"Primary.new Indentifier"`. Casting conversion is also supported.
Samples of input contexts are as following: (Note that '|' indicates cursor)
(1). after '.', list members of a class or a package
>
- package.| subpackages and classes of a package
- Type.| static members of the 'Type' class and "class"
- var.| or field.| members of a variable or a field
- method().| members of result of method()
- this.| members of the current class
- ClassName.this.| members of the qualified class
- super.| members of the super class
- array.| members of an array object
- array[i].| array access, return members of the element of array
- "String".| String literal, return members of java.lang.String
- int.| or void.| primitive type or pseudo-type, return "class"
- int[].| array type, return members of a array type and "class"
- java.lang.String[].|
- new int[].| members of the new array instance
- new java.lang.String[i=1][].|
- new Type().| members of the new class instance
- Type.class.| class literal, return members of java.lang.Class
- void.class.| or int.class.|
- ((Type)var).| cast var as Type, return members of Type.
- (var.method()).| same with "var.|"
- (new Class()).| same with "new Class().|"
<
(2). after '(', list matching methods with parameters information.
>
- method(|) methods matched
- var.method(|) methods matched
- new ClassName(|) constructors matched
- this(|) constructors of current class matched
- super(|) constructors of super class matched
Any place between '(' and ')' will be supported soon.
Help information of javadoc is not supported yet.
<
(3). after an incomplete word, list all the matched beginning with it.
>
- var.ab| subset of members of var beginning with `ab`
- ab| list of all maybes
<
(4). import statement
>
- " import java.util.|"
- " import java.ut|"
- " import ja|"
- " import java.lang.Character.|" e.g. "Subset"
- " import static java.lang.Math.|" e.g. "PI, abs"
<
(5). package declaration
>
- " package com.|"
<
The above are in simple expression.
(6). after compound expression:
>
- PrimaryExpr.var.|
- PrimaryExpr.method().|
- PrimaryExpr.method(|)
- PrimaryExpr.var.ab|
e.g.
- "java.lang . System.in .|"
- "java.lang.System.getenv().|"
- "int.class.toString().|"
- "list.toArray().|"
- "new ZipFile(path).|"
- "new ZipFile(path).entries().|"
<
(7). Nested expression:
>
- "System.out.println( str.| )"
- "System.out.println(str.charAt(| )"
- "for (int i = 0; i < str.|; i++)"
- "for ( Object o : a.getCollect| )"
<
==============================================================================
KIND LETTER *javacomplete-kindletter*
A single letter indicates the kind of compeltion item. These kinds are:
>
+ ctor
v local variable or parameter
f nonstatic field
F static field
m nonstatic method
M static method
P package
C class type
I interface type
<
==============================================================================
OPTIONS *javacomplete-config*
All these options are supported when encoding with java project.
*g:JavaComplete_SourcesPath*
path of your sources. Don't try to add all sources you have, this will slow
down parsing process. Add you project sources and necessery library sources.
If you have compiled classes add them to previous config instead. By default
plugin will search `src` directory and add it automatically.
*g:JavaComplete_MavenRepositoryDisabled*
disable the maven repository.
>
let g:JavaComplete_MavenRepositoryDisabled = 1
<
by default this option is disabled (0).
*g:JavaComplete_LibsPath*
path of you jar files. This path will always appended with '~/.m2/repository'
directory. Here you can add your glassfish libs directory or your project
libs. It will be automatically appended with you jre home path
*g:JavaComplete_BaseDir*
Base cache directory of javacomplete2 (default is ~/.cache):
>
let g:JavaComplete_BaseDir = '~/.your_cache_dir'
<
*g:JavaComplete_ImportDefault*
In the import selection the default behavior is to use the first option
available:
>
let g:JavaComplete_ImportDefault = 0
<
To avoid this behavior use:
>
let g:JavaComplete_ImportDefault = -1
<
*g:JavaComplete_InsertImports*
Import selection is activated automatically when completing new class name.
This can be avoided by setting:
>
let g:JavaComplete_InsertImports = 0
<
*g:JavaComplete_GradleExecutable*
Set the path of gradle executable file. by default it is empty string.
*g:JavaComplete_ServerAutoShutdownTime*
The Java daemon should kill itself when Vim stops. Also its possible to
configure the timeout, so if there is no request during this time the daemon
will stop. To configure the timemout use the following (in seconds). By
default this option is 0.
*g:JavaComplete_ImportSortType*
Sorting can by jar archives `jarName` or by package names `packageName`. This
option is to set the imports sorting type. By default this option is
`jarName`:
>
let g:JavaComplete_ImportSortType = 'jarName'
<
*g:JavaComplete_ImportOrder*
Specifies the order of import groups, when use `packageName` sorting type, for
example:
>
let g:JavaComplete_ImportOrder = ['java.', 'javax.', 'com.', 'org.', 'net.']
<
An import group is a list of individual import statements that all start with
the same beginning of package name surrounded by blank lines above and below
the group.
*g:JavaComplete_RegularClasses*
Regular class names that will be used automatically when you insert import:
>
let g:JavaComplete_RegularClasses = ['java.lang.String', 'java.lang.Object']
<
You can populate it with your custom classes, or it will be populated
automatically when you choose any import option. List will be persisted, so it
will be used next time you run the same project.
*g:JavaComplete_AutoStartServer*
Disable automatic startup of server:
>
let g:JavaComplete_AutoStartServer = 0
<
By default this option is disabled (1).
*g:JavaComplete_UseFQN*
Use fully qualified name in description:
>
let g:JavaComplete_UseFQN = 1
<
By default this option is disabled (0).
*g:JavaComplete_EnableDefaultMappings*
Enable or disable default key mappings, by default this option is 1, and
default mappings are defined. To disable default mappings, set this option to
1.
>
let g:JavaComplete_EnableDefaultMappings = 1
<
*g:JavaComplete_PomPath*
Set pom.xml path explicitly:
>
let g:JavaComplete_PomPath = /path/to/pom.xml
<
It will be set automatically, if pom.xml is in underlying path.
*g:JavaComplete_ClosingBrace*
Close brace on method declaration completion:
>
let g:JavaComplete_ClosingBrace = 1
<
Add close brace automatically, when complete method declaration. By default
this option is enabled (1). Disable if it conflicts with another plugins.
*g:JavaComplete_JavaviLogDirectory*
Set the directory where to write server logs. By default this option is empty.
*g:JavaComplete_CustomTemplateDirectory*
Set directory that contains custom templates for class creation, for example:
>
let g:JavaComplete_CustomTemplateDirectory = '~/jc_templates'
<
By default this options is empty string.
==============================================================================
FAQ *javacomplete-faq*
4.1 Why can not complete in gradle project?
Check if 'gradle' is in your runtime path or './gradlew' (or
'.\gradlew.bat' for Windows) is in your project's directory.
4.2 I have installed gradle, but why I can not complete R.class?
In android project, many of the class contains a ton of innerclass,
javacomplete2 could works better by reflection, so you need to compile you
project, after use './gradlew build', R.java will be automatically
generated and compiled.
==============================================================================
HISTORY *javacomplete-history*
This section document the history of `vim-javacomplete2`.
v2.3.4 2015-12-14
Use maven, gradle, or Eclipse's 'classpath` file to generate classpath
Complete methods declaration on '@Override'.
v2.3.3 2015-10-08
Jsp files support, no taglibs yet.
Vimscript refactored.
Read eclipse ".classpath" file.
Option to set jvm launcher and compiler for javavi server.
Using <Plug> mappings.
Bug fixes.
v2.3.2 2015-09-18
Nested classes.
Vimscript refactored.
v2.3.1 2015-09-07
Better experience with imports.
Commands added.
v2.3 2015-07-29
Annotations completion support.
Option to swtich use of FQN in completion suggestions.
Check python support before start.
v2.2 2015-07-08
Lambda expressions parsing.
v2.1 2015-06-12
Generics completion. Bug fixes.
Added g:JavaComplete_MavenRepositoryDisable option.
v2.0 2015-05-26
Writed new library for reflection and parsing. Parsing make by
third party library. Library run in server like way.
Added class name completion and insertion of class import.
Added auto classpath searcher.
v0.77.1.2 2011-01-30
Fixed to adapt globpath() (vim < 7.2). Patched by Sam Lidder.
v0.77.1.1 2010-11-12
Fixed to ignore the 'suffixes' and 'wildignore' options which
make Reflection.class can not be found.
v0.77.1 2007-09-19
Supported showing method parameters information in any place
between parenthesises.
v0.77 2007-09-19
bug fix
Added GetCurrentFileKey() avoid empty key of s:files for current buffer.
Use a new strategy for searching inherited members.
Supported new contexts "jav|", "var|", just after an incomplete word.
Supported new context "abs(|)", a imported static method.
Improved FoundClassDeclaration()
Fixed bug calling cursor(0, 0)
Rewrote DoGetClassInfo(), GetFQN() and IsFQN()
Fixed a bug when merging superclass's members
Improved s:MergeLines() and s:ExtractCleanExpr().
Rewrote CompleteAfterDot(). Added ParseExpr(). Removed
s:GetNextSubexprType()
Supported accessible static imported members.
Supported accessible inherited members.
Used b:changedtick and getftime() to check buffer (or other file) for
changing.
Supported not-file-name toplevel or static member class in source files.
v0.76.8 2007-08-30
Created the s:TreeVisitor to search type or symbol names.
Supported local and anonymous class.
Supported appending automatically classpath under WEB-INF for jsp files.
v0.76.7 2007-08-28
Fixed case of "new java.util.zip.ZipFile().|"
Improved process of type arguments and method parameters. JAVA5+
Reorganize codes in javacomplete#Complete()
Added CONTEXT_NEED_TYPE, removed CONTEXT_INCOMPLETE_WORD
Add Context types for type declaration: CONTEXT_NEED_TYPE
v0.76.6 2007-08-23
Improved GetStatement() and related. Bug fixed.
v0.76.5 2007-08-21
Fixed bug: "foo().|", "getFoo().foo().|",
"for (Enumeration entries = ; entries.|; )".
Supported input contexts: "((Object)o).|", "((Object)o).getClass().|",
"new ZipFile(path).|", "(new String().)|".
v0.76.4 2007-08-17
Improved input contexts: "int.class.toString().|", "list.toArray().|".
Fixed recognizing "this(|)", "method1(|)"
Added the 'kind' letter to distinguish between classes and packages.
Support accessible nested classes.
Support import static members and import accessible nested classes.
Fixed a bug when Reflection.java is in the path which contains space.
Improved process of this and super in JSP.
Fixed an severe bug parsing current jsp file.
v0.76.3 2007-08-10
Add an option 'searchdecl' set by javacomplete#SetSearchdeclMethod().
Make an improvement for jsp file.
Clear cache when set options affecting classpath.
Improved DoGetPackageList() and s:GenerateImports().
Replace codes searching list of string with index().
v0.76.2 2007-08-08
Fix failing to list members of nested class.
Combine members of local packages and loadable packages.
Add quick recognition of package or import.
Add inherited fields and methods to local class.
v0.76.1 2007-08-04
Fix using a: in javacomplete#SetClassPath()
Fix a bug in javacomplete#GetClassPath()
v0.76 2007-08-04
2007-08-04
Fix a infinite loop bug in s:GetMatchedIndexEx()
Fix that array type not recognised in compound expression.
Add a option for JDK1.1. See FAQ 3.
2007-08-03
Improve for 'this' or 'super'.
Support searching toplevel class in sourcepath.
Clean
2007-08-02
Improve the process of checking a class in one of packages.
2007-08-01
Add Searchdecl() using java_parser.vim to provide quick information.
Supports input context: "StringLiteral".|, "int.|", "void.|"
2007-07-28
Automatcally compile Reflection.java and place it to $HOME.
Add option 'javacompiler', default 'javac'
Add option 'java', default 'java'
v0.75 2007-02-13
Add java_parser.vim.
Add b:sourcepath option.
Improve recognition of classes defined in current buffer or in source path.
Support generating class information from tags instead of returning list
directly.
v0.74 2007-02-03
Support jre1.2 (and above).
Support input context like "boolean.class.|"
Handle java primitive types like 'int'.
v0.73 2007-02-01
Fix bug that CLASSPATH not used when b:classpath or g:java_classpath not
set.
Fix bug that call filter() without making a copy for incomplete.
Improve recognition of declaration of this class
v0.72 2007-01-31
Handle nested expression.
v0.71 2007-01-28
Add Basic support for class in current folder.
v0.70 2007-01-27
Complete the reflection part.
v0.60 2007-01-25
Design TClassInfo, etc.
v0.50 2007-01-21
Use java and Reflection.class directly.
==============================================================================
TODO *javacomplete-todo*
Add javadoc
Cross session cache;
Most used (classes, methods, vars) at first place (smart suggestions);
FXML support;
JSP check support;
Refactoring support?;
Class creation helpers;
etc...
==============================================================================
THANKS *javacomplete-thanks*
* Cheng Fang author of original javacomplete plugin;
* Zhang Li author of vim-javacompleteex plugin;
* http://github.com/javaparser/javaparser library.
FeedBack: Any problem, bug or suggest are welcome to send to
ashaihullin@gmail.com
vim:tw=78:ts=8:ft=help:norl: