-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathNEWS
1385 lines (1088 loc) · 48.3 KB
/
NEWS
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
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
___________________________________
| | | | | _ | | |
| |___| | | | | _| | | | GNU GLOBAL source code tag system
| | | | | | | | | |
| ~~ | ~~| | ~ | | | ~~| for all hackers.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Copyright (c) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2010
Tama Communications Corporation
This file is free software; as a special exception the author gives
unlimited permission to copy and/or distribute it, with or without
modifications, as long as this notice is preserved.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
----------------------------------
GNU GLOBAL NEWS - User visible changes.
At least, you had better search '[INCOMPATIBLE CHANGES]' for each version.
Version 5.9.3 - December 6 2010
[CHANGES]
New facilities:
o global: New optional files arguments for the -g command.
o global: New -V(--invert-match) option for the -g command.
o global: New --print0 option.
o global: New --file-list=file option.
o htags: New --html-header option.
o gtags.vim: Activate input completion also on the prompt 'Gtags for pattern:'.
[FIXED BUGS]
o global: --from-here option didn't locate definitions in the GTAGSLIBPATH.
o global: Under Cygwin environment, global blocks for a few seconds if there is no GTAGS.
o htags: Htags with the -g and -d option didn't work correctly.
[INCOMPATIBLE CHANGES]
o GLOBAL's commands locates gtags.conf also in the sysconfdir.
You can see the path using the following command line:
$ gtags --config=sysconfdir
Suggested by Jean-Marc Bourguet.
Version 5.9.2 - August 30 2010
[CHANGES]
New facilities:
o gtags.vim: Added -m(--vim) option to the show command.
Added new use command.
[INCOMPATIBLE CHANGES]
o Renamed the -S(--secure-cgi) option to --system-cgi. This is because
the parameter of the --secure-cgi was changed in GLOBAL-5.9.1.
o The site key directory for the --system-cgi option was moved from
datadir(/usr/local/share) to localstatedir(/usr/local/var) because
datadir should be used for read-only data.
By default, you must execute "cd HTML; sh bless.sh" as a root user,
since the site key directory can not be written except for root user.
Version 5.9.1 - July 19 2010
[CHANGES]
New facilities:
o gtags: New gtags.files file.
If a file called 'gtags.files' exists in the current directory,
gtags(1) treats it as a list of files which are candidates of the target.
The following two brings a same result.
$ gtags -f files
$ gtags -i -f files
$ cp files gtags.files
$ gtags
$ gtags -i
The latter has an advantage that 'global -u' can use the mechanism too.
o htags: New --auto-completion option.
Enables completion input method for the search form (requires http server).
o htags: New --tree-view option.
Use tree view for the file index.
o htags: New --suggest2 option
--suggest - use popular options without frame, CGI and javascript.
--suggest2 - use frame, CGI and javascript in addition to the --suggest.
The --auto-completion and --tree-view option requires javascript language
in your browser. If your browser is one of the followings, it will work.
* GNOME web browser
* firefox
* chrome
o global: Allows -I option for the -c command.
[FIXED BUGS]
o gtags.el: The following commands fail with a message 'Beginning of buffer'
when the cursor is at the head of the buffer.
gtags-find-tag, gtags-find-rtag, gtags-find-symbol,
gtags-find-tag-from-here, gtags-find-with-idutils, gtags-find-with-grep
[INCOMPATIBLE CHANGES]
o Safe-CGI mechanism was modified.
The parameter of the -S option was changed.
Version 5.9 - June 8 2010
*** Caution ***
This version of GLOBAL doesn't support tag files of the former version.
If you install this version, you should remake all tag files again using
gtags(1) in this package. Though new gtags's speed has improved very much,
you need not hurry up to upgrade it if you have a lot of tag files of
former version. Thank you for your cooperation.
[CHANGES]
New facilities:
o global: New --encode-path option.
This option is to support path names which includes blanks.
o globash: New command.
o global: Accept the -r and -s option at the same time.
o gtags, global, htags: Allows path name which includes blanks.
This is experimental operation. You can use this function by setting
environment variable 'GTAGSALLOWBLANK'. Please try and send us bug reports.
o gtags: Speed-up using 'sorted writing'.
It uses external POSIX sort program (/usr/bin/sort). If your system's path
is different from /usr/bin/sort, you will see the following message:
Warning: POSIX sort program not found. If available, the program will be speed up.
In that case, please rebuild GLOBAL with the --with-posix-sort option.
$ ./configure --with-posix-sort=<path of POXIS sort program in your system>
[FIXED BUGS]
o gtags-cscope: When using gtags-cscope with the -C argument to ignore case,
it passes malformed arguments to global which prevents it from looking
up the definition points of the requested identifier.
o global: The -I command with the --result option fails.
[INCOMPATIBLE CHANGES]
o GLOBAL shifted to new architecture and new tag files. GLOBAL doesn't use
GSYMS tag file any longer. New GLOBAL doesn't support older tag files.
When you use older tag files, you will see the following message:
global: /*/GTAGS seems older format. Please remake tag files.
o Removed undermentioned config variables:
Removed config variable replacement
-------------------------------------------------------------------------
definition_header(position) -h, --func-header[=position]
disable_grep --disable-grep
dynamic -D, --dynamic
full_path --full-path
no_map_file --no-map-file
other_files -o, --other
show_position --show-position
table_flist -T, --table-flist[=rows]
flist_fields(number) -T, --table-flist[=rows]
enable_idutils --disable-idutils (*1)
table_list --table-list
suffixes langmap
-------------------------------------------------------------------------
*1 Please note that '--disable-idutils' is opposite to 'enable_idutils'.
If you use above removed variables in your configuration file, please
use config variable 'htags_options' instead.
For example:
:definition_header=before:full_path:other_files:table_flist:flist_fields#3:disable_grep:\
|
v
:htags_options=--func-header=before --full-path --other --table-flist=3 --disable-grep:\
Version 5.8.2 - April 1 2010
[CHANGES]
o gtags, htags: Changed the algorithm for detecting binary file.
If the first 512 bytes contain any character of 0-7, 14-26,28-31,
the file is basically considered to be a binary. New method can correctly
treat multi-byte text file too. This is suggested by Erik Jonsson.
o global: Changed the -i option to be effective with the -c command.
[INCOMPATIBLE CHANGES]
o gtags: the built-in parser in function layer has become the default.
Config parameter 'use_builtin_parser' is not used any longer.
o htags: Changed the default output from HTML to XHTML.
In older htags,
no option: HTML
--xhtml: XHTML
In new htags,
no option: XHTML
--xhtml: XHTML
--html(new option): HTML
Version 5.8.1 - March 6 2010
[CHANGES]
New facilities:
o gtags: Added support of function layer plug-in parser by Hideki IWAMOTO.
This includes exuberant-ctags shared library, an example of plug-in
parser using Exuberant ctags. To use this, please try the following:
(It assumed that Exuberant ctags exists in "/usr/local/bin".)
$ ./configure --with-exuberant-ctags=/usr/local/bin/ctags
$ make
$ sudo make install
$ gtags --gtagsconf=/usr/local/share/gtags/gtags.conf --gtagslabel=plugin-example
Please see plugin-example/README for the detail.
o htags: Added call-tree facility using cflow(1).
Please try this:
$ gtags
$ cflow --tree --format=posix `global -P` >cflow.out
$ htags --cflow=cflow.out
Input file must be POSIX format(use the --format=posix).
GNU cflow is available at: http://www.gnu.org/software/cflow/
[FIXED BUGS]
gtags-parser: Input of long token(>= 512bytes) brings buffer overflow.
[INCOMPATIBLE CHANGES]
gtags: Gtags using function layer plug-in parser always makes all tag files
even if some of them are empty. Old style command layer plug-in parser makes
only specified tag files. The new specification is better than old one for the
reason that tag files of different parsers don't mix.
If you want to know whether a tag file is empty or not, please use the following
commands:
$ global '.*' -r # GRTAGS is empty?
$ global '.*' -s # GSYMS is empty?
Version 5.8 - February 5 2010
[CHANGES]
New facilities:
o gtags: Built-in parser by Hideki IWAMOTO.
This improvement has shortened the processing time to about 1/3.
Built-in parser is not effective by default in this version.
To use built-in parser, please define 'use_builtin_parser' in your
configuration file like follows:
$ cp /usr/local/share/gtags/gtags.conf $HOME/.globalrc
$ vi $HOME/.globalrc
+------------------------------------
|...
|default:\
| :tc=gtags:tc=htags:use_builtin_parser: <= ADD THIS
In the near future, built-in parser will become effective by default.
o gtags.el: Single 'GTAGS SELECT MODE' buffer of gtags.el by Yushi Oka.
If "gtags-select-buffer-single" is non-nil, then 'GTAGS SELECT MODE'
buffer is kept single.
o gtags-cscope.vim: Plug-in script which integrates GLOBAL and vim editor
using cscope interface. Since this script makes vim think GLOBAL is cscope,
you can use the tag stack facility of vim like cscope. Gtags-cscope can
coexist with gtags.vim.
[FIXED BUGS]
o gtags.el: the completion read in the gtags-find-file fails into endless
loop when the input string is NULL.
[INCOMPATIBLE CHANGES]
o gtags(built-in parser): In the existing parser (gtags-parser), some symbols
were stored in both GRTAGS and GSYMS. In the built-in parser, all the symbols
defined in GTAGS have been moved from GSYMS to GRTAGS. New specification
is more consistent, and useful for efficiency improvement. If you feel this
a problem, please inform bug mailing list of your insistence.
Version 5.7.7 - December 19 2009
[CHANGES]
o htags: More accurate statistics mechanism using gettimeofday(2) and getrusage(2).
o gtags: New --statistics option.
o gtags.el: Added completion support for the 'gtags-find-file'.
o global: Allows tag files in the system's root directory.
This does not recommend tag files to be put on the system's root directory.
In some systems except UNIX, putting tag files there might be suitable.
[FIXED BUGS]
o The --from-here option didn't work with compact format GTAGS (gtags -c).
Version 5.7.6 - October 6 2009
[CHANGES]
New options:
o gtags: --single-update=file
Update tag files for single file. It is considered that the file was updated,
and other files were not updated. This option implies the -i option.
If the file is new then --single-update is ignored, and the processing is
automatically switched to the normal incremental updating.
o gtags: --dump=tag-files
Dump a tag file. Output format is 'key<tab>data'.
Version 5.7.5 - March 14 2009
[CHANGES]
Change of gtags:
o Revived the -c option.
If this option is specified, gtags uses compact format for GTAGS.
This option does not influence GRTAGS and GSYMS, because they are always
made using compact format.
If you think that GTAGS is too big, please use this option.
o Removed the limitation of the depth of the directory hierarchy.
o Changed not to do useless inspection for the files in the directories
which are listed in the skip list.
Version 5.7.4 - January 5 2009
[CHANGES]
o global: In compact format, operation to non-existent lines was changed
to avoid needless abnormal termination.
-- Delete lines 20-last from the test.c.
$ global -xr func
(OLD)
func 10 test.c func(a);
global: unexpected end of file. './test.c: 19/20'
$ echo $?
1 <- abnormal termination
(NEW)
func 10 test.c func(a);
func 20 test.c <- plain space means non-existence
$ echo $?
0 <- normal termination
[FIXED BUGS]
o gtags-parser: Gtags-parser had overlooked objects in 'extern "C" {...}'(C, C++).
Now, it can pick up them.
o gtags-parser: Gtags-parser was not able to recognize the following definitions.
Now, it can pick up them.
int invisible /* COMMENT */ ()
{
}
int also_invisible // COMMENT
()
{
}
int visible () // COMMENT
{
}
o gtags-parser: Gtags-parser had overlooked 'Foo' in the following construct.
Now, it can pick up them.
namespace
Foo
{ ...
However, this works:
namespace Foo
{ ...
Version 5.7.3 - October 29 2008
[FIXED BUGS]
gtags: Gtags with the -f option caused segmentation fault if a file in the
file list is not in the working directory or its sub-directories.
gtags.pl: Version test was failed.
Version 5.7.2 - September 30 2008
[CHANGES]
New functions:
o gtags: New -O(--objdir) option.
o gtags.el: New commands: gtags-select-tag-other-window and gtags-find-tag-other-window.
o htags: Picks up the words 'include', 'required' and 'required_once' statement in PHP
source files. Htags makes a link to the file described in above statements if it is
accessible from the current directory.
[INCOMPATIBLE CHANGES]
o gtags: Changed to skip all files whose first character of name is '.'.
The following paths were deleted from the DEFAULTSKIP list in configure.ac,
since new rule covers them.
.notfunction
.gdbinit
.cvsrc
.cvsignore
.gitignore
.cvspass
.cvswrappers
.deps/
.snprj/
.svn/
.git/
o gtags.el: Changed so that the visited files are left after invoking
the 'gtags-pop-stack' command. If you hope old specification,
please set gtags-pop-delete to true like follows:
[$HOME/.emacs]
(setq gtags-mode-hook
'(lambda ()
(setq gtags-pop-delete t)))
Version 5.7.1 - April 21 2008
[CHANGES]
New functions:
o gtags-parser: Picks up symbols in #{if,elif,ifdef,ifndef} line in assembly source.
Other changes:
o gtags.conf: Added new skip files: cscope.po.out,cscope.in.out
o gtags.vim: Added error check for the -f option.
[FIXED BUGS]
o Fixed imperfect symbolic link support.
- global: Global didn't work with the -f option.
- gozilla: Gozilla couldn't convert paths which include symbolic link.
Version 5.7 - March 25 2008
[CHANGES]
New functions:
o gtags: Allows the symbolic links which point to a directory.
In older version, such symbolic links were ignored with warning messages.
[Example]
/tmp
+-global
| +-GTAGS
| +-gtags ----+ (symbolic link to ../work/gtag2)
| +-htags --+ | (symbolic link to ../work/htag2)
| | |
+-work | |
+-gtag2 <-+ |
| +-gtags.c|
| |
+-htag2 <---+
+-htags.c
Old version
===========
$ cd /tmp/global
$ gtags
Warning: './gtags' is a directory. (Ignored)
Warning: './htags' is a directory. (Ignored)
...
$ global -f gtags/gtags.c
'/tmp/work/gtags/gtags.c' is out of source tree.
New version
===========
$ cd /tmp/global
$ gtags
$ global -f gtags/gtags.c
usage 91 gtags/gtags.c usage(void)
help 98 gtags/gtags.c help(void)
...
$ global -f gtags/../htags/htags.c
mkdir 61 htags/htags.c #define mkdir(path,mode) mkdir(path)
link 62 htags/htags.c #define link(one,two) (-1)
...
% cd gtags <= get out of the source tree
$ global -f gtags.c
global: GTAGS not found.
$ pwd
/tmp/work/gtags
Though the symbolic link to a directory might confuse users,
it is originally as such. They should understand the characteristic.
o gtags-parser: Picks up the names of struct, union, enum and enum member
as definitions.
o gtags.el, gtags.vim, gtags.pl: More accurate, language independent context jump
using new --from-here option of global(1).
o gtags.el: Customizable path style in the [GTAGS SELECT MODE].
You can select one of the followings:
root relative from the root of the project (Default)
relative relative from the current directory
absolute absolute (=relative from the system root directory)
New options and variables:
o global: New --from-here option. This option is used by context jump facility.
o gtags,htags,gtags-parser: New environment variable GTAGSFORCECPP.
If this variable is set, each file whose suffix is 'h' is treated as
a C++ source file.
o gtags.el: Added new variable for customizing the path style in the
[GTAGS SELECT MODE].
Other changes:
o global.texi: Added descriptions about gtags-cscope (fake cscope).
[INCOMPATIBLE CHANGES]
o gtags.el: Changed the default path style in [GTAGS SELECT MODE] relative
from the root of the current project. In older version, it was absolute
by default.
o nvi-1.79-gtags.diff: The support for nvi-1.79 ended. This nvi is an very
old program, and is not distributed any longer.
o gtags-parser: Removed the -d(--define) and -t(--typedef) option, because they
have already been the default operation.
[FIXED BUGS]
o gtags: Failed to process new GCC source code.
o gtags.vim: Completion facility didn't work with the -f option of Gtags.
o htags: Self-referred links.
Version 5.6.2 - October 26 2007
[CHANGES]
* gtags-parser: In C++ source code, now ignores forward definitions of classes
(e.g. "class name;")
Version 5.6.1 - August 11 2007
[CHANGES]
* gtags.conf: Added '.git/' to the DEFAULTSKIP list.
[FIXED BUGS]
* global: Global(1) with the -t option didn't print correct line number.
Gtags.vim also didn't work correctly due to this bug. This bug was
introduced in GLOBAL-5.4.
Version 5.6 - July 6 2007
[INCOMPATIBLE CHANGES]
* All commands: According to the GNU coding standard, the --version option
shows always verbose message without --verbose option.
[CHANGES]
* Migrated to GNU GPLv3 and GNU LGPLv3.
* gtags-parser: Added support for assembler directive ".macro" and ".equ".
[FIXED BUGS]
* global(1): Fixed a memory leak.
Version 5.5 - May 5 2007
* GNU GLOBAL became a BOKINware.
* gtags-parser: Added support for 'enum' (java).
* gtags.el: Changed to work without event-point function.
Version 5.4.1 - March 10 2007
[CHANGES]
* htags: New --item-order option.
Specify the order of items in the top page. The spec is a string
which consists of item signs in order. Each sign means as follows:
c: caution, s: search form, m: mains, d: definition, f: files.
The default is 'csmdf'.
[FIXED BUGS]
* htags: didn't extract some '#include' correctly.
Version 5.4 - January 29 2007
[INCOMPATIBLE CHANGES]
* Further compression of tag files (format version 5).
Though new global can read older tag file since version-5.0, older
global cannot read new format. It might say like follows:
"GTAGS seems new format. Please install the latest GLOBAL."
[OTHER CHANGES]
* global: Improved performance when the -x option is not specified.
* globash.rc: New option -l for tag search command (x,r,s,g,P,I,f).
This option invokes less(1) directly without using tag stack.
* Verbose messages are unified.
P option file not found
<n> files located
others object not found
path format: <n> files located
other format:<n> objects located
[FIXED BUGS]
* Gtags(1) and global(1) didn't work well in the system root directory('/').
Version 5.3 - November 20 2006
[INCOMPATIBLE CHANGES]
* global: Changed not to locate other symbols (-s) in GTAGSLIBPATH.
This is the original specification of GLOBAL.
* global: Discontinued sorting when the -I(--idutils) option specified.
The output of gid(idutils) is sorted by the suitable way. Though the order is
slightly differ from global(1), it need not be sorted again.
[OTHER CHANGES]
* global: New -O(--only-other) option.
* htags: Added some new options and new arguments which are synonyms of
configuration variable. This decreases dependence on configuration file.
new option | configuration variable
------------------------+-------------------------
--disable-grep | disable_grep
--table-list | table_list
--tabs=<n> | tabs
--full-path | full_path
new argument | configuration variable
------------------------+-------------------------
--line-number [columns] | ncol
--func-header [position]| definition_header
--xhtml [version] | xhtml_version
(*=default)
position: before, right, *after
version: *1.0, 1.1
* htags: Changed to use each 'CVS/Repository' file to generate URLs if it is available.
* htags: Added '.gitignore' to the DEFAULTSKIP list.
* gtags.el:
- Shorten path names in [GTAGS SELECT MODE]:
If the project directory is specified using 'gtags-visit-rootdir', gtags.el print path
using the relative path name from the project directory, else print absolute path name.
- Support dynamic completing-read of tag name.
gtags-make-complete-list is deprecated. You can enjoy tag name completion without
invoking this command.
[FIXED BUGS]
* gtags: gtags had exited when it encountered dead symbolic link.
Version 5.2 - August 8 2006
* htags: Added new options:
- -h(--func-header) option.
- -I(--icon) option.
- -T(table-flist[=fields]) option.
Suggested options:
$ htags -vsanohIT
* htags: Changed the default color of braces from blue to red to make them stand out.
* htags: Always enable 'Grep pattern' form when the -f(--form) option specified.
Removed configuration variable 'enable_grep' since it became meaningless. Instead, added
a new variable 'disable_grep'.
* htags: Added more profitable tips in the file browser.
- File size of bytes
- Directory number of files in the directory.
Version 5.1 - June 10 2006
[INCOMPATIBLE CHANGES]
* Changed the priority about the --result option to make the format
specification easy. The --result option is now given to priority
more than the -t and -x option. (This option appeared in version 5.0.)
[OTHER CHANGES]
* New program 'gtags-cscope'.
Gtags-cscope is a pseudo cscope which implements the line-oriented
interface. You can use this command for various clients instead of
true cscope.
* Added new format 'cscope' to the argument of --result=<format>.
Version 5.0 - April 21 2006
[INCOMPATIBLE CHANGES]
* Moved to new tag format. (GTAGS, GRTAGS, GSYMS, GPATH)
The purpose is as follows:
o Allows path name including blanks, at least in tag files.
(GLOBAL still doesn't support the path name which contains blanks.)
o Decrease disk space used.
o Make tag format simpler.
o Realize stable performance.
Hereafter, older tag format is not supported.
Compact format was progressively canceled with the adoption of
the new tag format. The -c(--compact) option of gtags(1) was removed.
The following error messages are displayed in wrong combinations:
- older global and new tag file
$ global -x main
GTAGS seems new format. Please install the latest GLOBAL.
- new global and older tag file
$ global -x main
GTAGS seems older format. Please remake tag files.
Known problem:
- older global and new tag file
Global(1) with the -g or -P command will always work as if invoked
with the -o option. There is no way to avoid this problem.
New requirement:
* Added new requirement of plug-in parser
Plug-in parser must process the arguments in the order they are given
in the command line. In each file, any order is acceptable.
Exuberant Ctags with the -xu option meets this requirement.
(See global.info for the detail.)
Removed options:
* gtags(1): Removed the -c(--compact) option.
Compact format was progressively canceled with the adoption of new
tag format.
* gtags(1): Removed the -o(--omit-gsyms) option.
This option was necessary in the past to use the program in a incompetent
machine with a small hard disk. Since most recent machines has powerful
CPU and mass hard disk. This options might already be unnecessary.
* htags(1): Removed the --style-sheet option.
This was a really halfway option, and now nobody might need it because
the --xhtml option became available.
[OTHER CHANGES]
New options:
* global: New --result=<format> option. Grep format became available.
<format>: path,ctags,ctags-x,grep
conventional option | newly added option
--------------------+---------------------
(none) | --result=path
-t | --result=ctags
-x | --result=ctags-x
| --result=grep
The -t and -x option are given to priority more than the --result
option.
Version 4.8.7 - September 30 2005
New options:
* gtags: New --file <file list> option.
Using this option, you can give the file set which should be
processed to gtags.
% find . -type f -print >/tmp/list
% gtags --file=/tmp/list
or
% find . -type f -print | gtags --file=-
* gtags: New --max-args option.
Improvement of efficiency:
* Gtags was improved of performance by changing algorithm of the
incremental updating. Along with it, the verbose message was
greatly changed.
* Gtags was improved of performance by decreasing the frequency
of the parser invoking. Under the influence of it, the verbose
message is not necessarily real-time. If you dislike this behavior,
use the --max-args option of gtags. You can control the frequency
of the invoking with the option. With --max-args=1, the program
does the same behavior as older version.
* Htags was improved of performance by decreasing the frequency
of the parser invoking.
* Htags was improved of performance by omitting flushing temporary
files to the disk.
Fixed bugs:
* Htags didn't treat here document (<<<word) of PHP source code correctly.
Now it is treated correctly.
* Htags didn't treat HTML part of PHP source code correctly.
Now it is treated correctly.
Other facilities:
* Added 'Htags Hyper-text Reference Kit'.
The hypertext generated by htags(1) is now available from external
programs. This kit helps you to convert the path of the source
file into the URL in the hypertext.
* doc/global.txi: Added the usage of Doxygen using GLOBAL.
Version 4.8.6 - May 12 2005
[INCOMPATIBLE CHANGES]
* htags: Changed the value of id attribute and name attribute of
the anchor of each line like follows:
<a id='100' name='100'> => <a id='L100' name='L100'>
It is because XHTML prohibits the id attribute which starts
with a digit. If you refer these anchors from outer system,
please rewrite them.
[OTHER CHANGES]
* htags: New option --insert-header and --insert-footer.
Version 4.8.5 - April 19 2005
* htags: Added the support for XHTML (--xhtml).
If the --frame option is specified then generates XHTML-1.0 Frameset,
else if configuration variable 'xhtml_version' is set to 1.1 then generates
XHTML-1.1 else XHTML 1.0 Transitional.
You can customize the appearance using style sheet file 'style.css'.
* htags: Added configuration variable 'xhtml_version'.
* htags: Added 'html/' to the fault skip list.
It is the output directory of doxygen document.
* gtags-parser: Added yacc directives introduced in bison-2.0.
%default-prec(%default_prec)
%expect-rr(%expect_rr)
%initial-action
%no-default-prec(%no_default_prec,%no_default-prec,%no-default_prec)
%nondeterministic-parser
Version 4.8.4 - March 4 2005
Fixed bugs:
* gtags-parser: C and C++ parser was broken.
* gnusort: Couldn't be compiled in Solaris environment.
Version 4.8.3 - February 26 2005
[INCOMPATIBLE CHANGES]
* The support for DOS and Windows 32 ended.
But it doesn't mean the deletion of the code for DOS and Windows 32.
We leave the support to outside projects and accept their code as is.
Therefore, anything has not been changed substantially up to now.
* Renamed gctags(1) to gtags-parser(1) because some systems have
another 'gctags' which does not relate to GLOBAL.
* Changed gtags-parser(1) to decide language type of the source files
only by the suffix. In older version, *.h files were considered to be
C++ source files if they include token 'class'. New version considers
*.h files always to be C source files. If you want gtags-parser to
consider them C++ then you must redefine new configuration variable
'langmap'.
[OTHER CHANGES]
Fixed bugs:
* htags: The --gtagsconf and --gtagslabel option didn't work correctly.
* htags: Buffer overflow occurred in dupindex.c:makedupindex().
* htags: Could not ignore path name which includes blank correctly.
New features:
* gtags,htags: New configuration variable 'langmap'.
This variable is used for customizing the mapping of languages and the
parsers, and it includes the function of obsoleted 'suffixes' variable.
If you use 'suffixes' then it is effective else GLOBAL internally
generates the value of 'suffixes' from the 'langmap'.
The reason to continue 'suffixes' is that it is needed for plug-in parser.
If you don't use plug-in parser then you should use 'langmap' instead.
* htags: New configuration variable 'copy_files'.
With the -f option, htags makes links of tag files in the 'cgi-bin'
directory by default. With this variable, htags copy them instead of
linking.
Version 4.8.2 - November 11 2004
[INCOMPATIBLE CHANGES]
* The support for postgres ended.
* Removed htags.pl (older version of htags written by Perl) completely.
* Removed configuration variables: sed_command and sort_command.
Sed(1) and sort(1) are not necessary any longer.
[OTHER CHANGES]
Fixed bugs:
* Fixed wrong output of 'global -Po'.
New features:
* gctags(assembly language):
- In addition to `call', `jsr' is recognized as call instruction.
Although various call instructions exist like `bl' or `calls',
only `call' and `jsr' are used widely.
- Macros like ENTRY or EXT are taken up as reference,
when definitions exist in somewhere else.
- Warning is displayed when a comment is not closed.
- C_SYMBOL_NAME and C_ENTRY are recognized as a macro
which shows the start of a function.
- The string which is not closed finishes at the end of line.
This behavior is the same as GNU C pre-processor.
- The check of correspondence of "#if" and "#endif" was deleted.
This did not exist in version 4.8.
* Added '.snprj/' directory to the DEFAULTSKIP list.
This is the tag directory for the Source-Navigator.
Version 4.8.1 - October 6 2004
Fixed bugs:
* htags: The -d option of htags didn't work. Now it works well.
* htags: Didn't recognize continued line and null directive(#).
Now it works well.
New features:
* htags: Configurable suffix list for include file.
(See man htags(1). configuration variables: include_file_suffixes)
* htags: Uses environment variable TMP if TMPDIR doesn't exist.(only DJGPP)
* htags: Warns about unknown pre-processing directive. As the exception,
when unknown preprocessing directive appears in assembly source,
it will be recognized as the start of a shell comment.
* htags: Added all yacc directives supported by bison-1.875.
Version 4.8 - August 26 2004
* Htags(1) was rewritten in C language completely. It is compatible
with the perl version and the performance has been improved greatly.
The perl version is left in the package for the time being as
'/usr/local/bin/htags.pl' by default.
* htags: In PHP source code, now picks up variables in strings ("${aaa}").
* gctags: Added __thread to the reserved word list of C and C++.
Version 4.7.2 - June 7 2004
Fixed bugs:
* Fixed obsolete style option for sort(1).
Version 4.7.1 - June 1 2004
New features:
* Added support for home_etc(3) facility on PLD Linux/GNU.
* gctags: Now picks up external defined functions as symbols.
Fixed bugs:
* Global(1) didn't work with the GNU sort(1) based on POSIX 1003.1-2001.
GNU sort(1) with the latest glibc doesn't accept obsolete +POS1[-POS2]
style option. Now global(1) works well with it.
* GLOBAL-4.3 and the later couldn't treat shadow tree. Now it works well.
Version 4.7 - Feb 1 2004
* gtags.vim: Plug-in script which integrates GLOBAL and vim editor.
* global.txi: Added the usage of gtags.vim script.
* global: The -o option is now available with the -P command.
* gctags: Fixed a bug: Gctags couldn't recognize the definitions
in namespace block. Now it can recognize them.
* Changed to install gtags.conf and other files to $datadir/gtags.
* Borland C++ compiler support in Windows32 ended because
- Now, Cygwin environment is widely used.
- Borland C++ compiler is not free software.
The w32/ directory is left in this release but will be removed in the
future release.
Version 4.6.1 - Oct 3 2003
* gtags, htags, gctags: Added '.hpp' to the suffix list of C++ source file.
Version 4.6 - July 2 2003
[INCOMPATIBLE CHANGES]
* Changed the default value of configuration variable 'definition_header' to 'no',
because definition header is unsightly according to the place, especially
in class definition.
[OTHER CHANGES]
* Added support for PHP language.
(Known problems in htags)
- Variables in string cannot be recognized.(global can recognize that.)
- In HTML, character strings which are same spelling with the reserved
word of PHP are recognized as reserved words of PHP.
Htags(1) should be rewritten greatly to solve above problems in the future.
* Added support for SCM_DEFINE macro which is part of guile-snarf.
* Added 'right' as a value of configuration variable 'definition_header'.
* Added some tool tips.
- Alphabet in the alphabetical definition index shows the count of definitions.
- File name in the file index shows the full path name.
- Anchor in the duplicate index shows the number of duplicated objects.
* Added .cvsrc,.cvsignore,.cvspass,.cvswrappers,autom4te.cache/
to the DEFAULTSKIP list.
Always thanks to Hideki Iwamoto san for his contribution.
Version 4.5.3 - June 5 2003
[INCOMPATIBLE CHANGES]
* htags: Tool tip is now implemented by title attribute instead of javascript.
* htags: Removed the --no-javascript option because it is already unnecessary.
* global: Argument pattern is now always interpreted as an extended regular expression.
In older version, it was interpreted as a basic or extended regular expression.
It depended on the build environment. In the new version, if you want pattern
to be interpreted as a basic regular expression, please specify the -G option.
[OTHER CHANGES]
New features:
htags:
* Added CVS REPOSITORY link (the --cvsweb and --cvsweb-cvsroot option).
* Added tooltips in some anchors.
* Added --no-map-file option.
Htags generates 'MAP' file by default. You can suppress it by the option.
* Added --statistics option.
With this option, htags prints statistics information to standard error.
global:
* New -e(--regexp) option like grep(1).
* New -G(--basic-regexp) option like egrep(1).
Performance tuning:
htags:
* Reduced the size of cache file by removing unnecessary information.
* Suppressed the use of temporary file to the minimum by trying to read from
the source code.
Other modifications:
* Shut a security hole.
* Added '{arch}' and '.notfunction' to the DEFAULTSKIP list.
* gctags: Added support for __attribute__((...)).
I wish to express my gratitude continuously since last time for the
contribution of Hideki Iwamoto san.
Version 4.5.2 - March 29 2003
[INCOMPATIBLE CHANGES]
* htags: Added configuration variables: 'title_begin' and 'title_end'.
This makes the configuration more flexible.
If you are still using older version of gtags.conf, please replace it
with the one in this package.
[OTHER CHANGES]
* htags: Added 'INCLUDED FROM' index written by Hideki IWAMOTO.
This indexes the places where the header file is included.
* htags: Added support for multi-line string.
* htags: Now pass the '-w' option to gtags when the -g option specified.
* htags: Now allows the references to nonexistent definition without warning.