-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
1908 lines (1507 loc) · 67.1 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-2014 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 should search '[INCOMPATIBLE CHANGES]' for each version.
Version 6.3.4 - February 2 2015
[FIXED BUGS]
o global: Global(1) exited with a message "Abbrev character must be
a lower alphabetic character ()" in some condition. Now it is fixed.
o gozilla/Makefile.am: Installation made a directory outside of the DESTDIR.
Now it is fixed.
o gtags: The C++ parser picked up compiler specific macros as a class name.
It is not desirable. Now it is fixed.
Version 6.3.3 - November 26 2014
[CHANGES]
New facilities:
o Pygments plug-in parser: Support python 3.
o gozilla: added support of OSX's default browser.
Please set environment variable BROWSER to 'osx-default'.
$ htags --suggest --map-file
$ export BROWSER=osx-default
$ gozilla +120 main.c # shows line 120 in main.c
$ gozilla -d main # shows definitions of main()
o vim74-gtags-cscope.patch: New patch for vim + gtags-cscope to treat
file names which include spaces correctly. Please see README.PATCHES.
Release for beta test:
o Added --sqlite3 option which uses SQLite3 API instead of BSD/DB API for
making tag files. If you will test the code then please do as follows:
[configuration phase]
$ ./configure --with-sqlite3 # use sqlite3 API
[execution phase]
$ gtags --sqlite3 # make sqlite3 tag files
[FIXED BUGS]
o gtags-cscope.vim: There was a calling to undefined function.
Now it works.
Version 6.3.2 - September 4 2014
[CHANGES]
New facilities:
o Pygments plug-in parser by Yoshitaro MAKISE.
By this parser, you can apply gtags(1) to wide variety of programming
languages supported by Pygments. The method of plug-in is very simple.
See 'plugin-factory/PLUGIN_HOWTO.pygments' for details.
It should mention especially that Pygments plug-in parser can treat both
definitions and references using Exuberant Ctags together.
Version 6.3.1 - August 11 2014
[CHANGES]
New facilities:
o gtags.vim: New 'Gtagsa' (Gtags with append) command.
This command appends tags to the current tag list.
If you want to get a union of 'global -d foo' and
'global -r foo' then please do as follows:
:Gtags -d foo
:Gtagsa -r foo
o geco.rc: New command (Bash function).
You need bash, percol and less to use geco.
$ source /usr/local/share/gtags/geco.rc
$ geco --help # show help
$ geco mai[TAB] # auto completion
v
$ geco main [ENTER]
QUERY> init # narrowing down
(less's screen)
:tag -r main # tag jump again
The same options are available on the both prompts:
$ geco <options> arg
:tag <options> arg
[INCOMPATIBLE CHANGES]
o global: The following configuration variables were removed
since they will surely cause confusion:
GTAGSROOT, GTAGSDBPATH
These variables were added in Version 6.3.
Version 6.3 - June 9 2014
[CHANGES]
New facilities:
o htags-server: A private HTTP/CGI web server for a hyper-text
generated by htags(1).
o gtags.conf: New project based configuration mechanism.
You can make a configuration file for each project.
This is Leo Liu's idea.
o gtags, htags: New environment variables which have default
options for each command: GTAGS_OPTIONS, HTAGS_OPTIONS
o global: Added support of GREP_COLORS environment variable.
o global: Added new options:
-F (--first-match), -M (--match-case), -E (--extended-regexp)
[DEPRECATED FEATURES]
The following features of htags(1) are now deprecated.
They will be removed in the future.
o The -c (--compact) option.
o The --system-cgi option.
o The --overwrite-key option.
o The -x (--xhtml[=version]) option.
All files will be 1.0.
o The following configuration variables:
colorize-warned-line (substitute: --colorize-warned-line)
gzipped_suffix
htags_options (substitute: HTAGS_OPTIONS)
ncol (substitute: -n, --line-number [n])
normal_suffix (will be always '.html')
no_order_list (substitute: --no-order-list)
script_alias
tabs (substitute: --tabs n)
xhtml_version (will be always 1.0)
[FIXED BUGS]
o global: Highlight of symbols in library paths does not
work. Now it works.
o htags: Htags with the --suggest option didn't find GTAGS
in obj directories. Now it works.
Version 6.2.12 - March 31 2014
[CHANGES]
New facilities:
o global: New --color option. It use the environment variable GREP_COLOR
(default is red) to highlight the matching string like grep (1).
(--colour and GREP_COLORS are not supported this time)
Please try the following command line:
$ global --color=always -x main
[FIXED BUGS]
o global: A lack of initialization of data brought unexpected segmentation
violation; it often occurred during execution of htags(1). Now it is fixed.
This bug exists in the following version: 6.2.10, 6.2.11.
Version 6.2.11 - March 12 2014
[CHANGES]
New facilities:
o global: New -S (--scope) <directory> option. This option prints only tags
which exist under <directory>. It is similar to the -l option, but different
from it in that you need not change directory.
o gtags: Now, the skip list allows glob file patterns (*, ?, [...], [!...], [^...]).
o gtags.conf: Added the following glob patterns to the skip list:
*.orig,*.rej,*.bak,*~,#*#,*.swp,*.tmp,*_flymake.*,*_flymake
o gtags: Now, the -I option supports file list (-f option or gtags.files).
Instead, idutils 4.5 or later is required.
[FIXED BUGS]
o global: With combination of the --invert-match and --literal, it did not match
the last line of files. Now it works.
o global: Literal search with the -i option printed an unmatched tag in a certain
kind of case. Now it works.
o global: 'global -cI' without argument caused segmentation fault.
Now it works.
Version 6.2.10 - January 16 2014
[CHANGES]
New facilities:
o gtags.el: New custom variables 'gtags-find-all-text-files'.
Optimization:
o global: Optimization of case-insensitive search like:
$ global -xi strlen
$ global -xi '^str'
[FIXED BUGS]
o global: Combination of the -v and -g option showed wrong matched
number (always 0). Now it works.
o global: The --from-here option did not work with a path name
which includes symbolic links. Now it works.
o global: The -I command failed when the logical and physical
path name of the current working directory were not identical.
Now it works.
o htags: Htags couldn't find tag files in obj directories.
Now it works.
o ctags-5.8.patch: This file was not included in old packages.
Now it is included.
Version 6.2.9 - August 26 2013
[CHANGES]
New facilities:
o configure: New option --with-sitekeys-mode=MODE.
Changed:
o jquery.treeview.js: Removed effects on mouse over because they use time too much
to build a tree. Now it works faster than previous versions.
o htags: Added a loading message when the --tree-view option is specified.
[INCOMPATIBLE CHANGES]
o gtags-cscope: Though previous gtags-cscope ignored GTAGSROOT, GTAGSDBPATH when
the -d option was not specified, it was meaningless. Now it accepts both of them
always.
[FIXED BUGS]
o gtags-cscope: Arrow keys didn't work after execution of external programs. Now it works.
o global: The -u option didn't work in a project whose path includes blanks. Now it works.
o htags: Fixed some bugs about --tree-view option.
- The type argument of --tree-view option didn't work in the top page. Now it works.
- Directory icons by --tree-view=filetree were not displayed. Now it works.
- On-line manual didn't say about the type argument. Now it is written.
Version 6.2.8 - February 28 2013
[CHANGES]
New facilities:
o htags: Added support of Python's built-in web server.
Required python 2.4 or later.
Please try this: (CGI and AJAX work completely)
$ htags --suggest2
$ cd HTML
$ python -m CGIHTTPServer # Python 2.X(2.4-)
($ python3 -m http.server --cgi # Python 3.X)
Serving HTTP on 0.0.0.0 port 8000 ...
(in another terminal)
$ firefox http://localhost:8000/
o gtags.conf: Added a new record for Drupal(Content management platform).
o global: New --path-style=<format> option.
<format> may be relative, absolute, shorter, abslib and through.
shorter: use shorter one among relative and absolute paths.
abslib: use absolute path only in library projects.
through: raw path name as is in GPATH.
The --path-style option is given more priority than the -a options.
[INCOMPATIBLE CHANGES]
o htags: End of support of customization of HTML tag using gtags.conf.
Please use CSS(cascading style sheets) instead.
- The --html option of htags(1) was removed.
- The tag definitions in gtags.conf were removed.
Version 6.2.7 - December 22 2012
[FIXED BUGS]
global: The -g command failed in handling of files whose size is 0 in some systems.
Now it works.
Version 6.2.6 - December 11 2012
[CHANGES]
New facilities:
ctags-5.8.patch: Patch against ctags-5.8. This adds new option --gtags and new
function makeSimpleReferenceTag() to ctags. These are for making reference tags
for GLOBAL, and enable you to write a single parser for both GLOBAL and ctags
at once.
exuberant-ctags.so: Added support for ctags --gtags option.
Changed:
gtags.vim: Renamed custom variable 'Dont_Jump_Automatically' to 'Gtags_No_Auto_Jump'.
Now 'Dont_Jump_Automatically' is deprecated.
global: The performance of literal search (-g --literal) has been improved.
A pattern string which consists of alphanumeric characters and/or blank characters
is treated as a literal string automatically. Try 'global -gx --literal string'.
Version 6.2.5 - November 16 2012
[CHANGES]
New facilities:
gtags.el: Now supports XEmacs again.
gtags.vim: New custom variable Dont_Jump_Automatically.
[FIXED BUGS]
gtags: Now the following error does not occur.
'input buffer overflow, can't enlarge buffer because scanner uses REJECT'
gtags.el: 'gtags-parse-file' didn't expand the file name (tilde character => $HOME).
Now it works.
Version 6.2.4 - May 30 2012
[FIXED BUGS]
Gtags with the -f option brings segmentation fault. Now it works.
This bug exists only in GLOBAL-6.2.3.
Version 6.2.3 - May 26 2012
[FIXED BUGS]
o Built-in parser: When attribute specifier appeared immediately after the
`struct', `union' or `enum' keyword, GLOBAL could not pick up tag name.
Now it works correctly.
[CHANGES]
New facilities:
o gtags: --single-update option support addition of a file.
o global: New --single-update option.
o gtags.el: New custom variables:
- gtags-ignore-case
- gtags-auto-update.
o gtags.vim: New custom variables 'Gtags_Auto_Update' (default 0).
Version 6.2.2 - March 15 2012
[FIXED BUGS]
o configure: The --disable-gtagscscope option didn't avoid building gtags-cscope
completely. So, ./configure failed when there is no curses library.
Now it avoids building gtags-cscope completely.
o htags: Imported a patch to fix htags on Windows Vista+ (tmpfile wants to create
its file in the root directory, which is not writable by normal users).
Version 6.2.1 - February 24 2012
[CHANGES]
New facilities:
o gtags: New --accept-dotfiles option.
o configure: New --disable-gtagscscope option.
o gtags.el: Key mapping was changed to follow "Key binding conventions" of Emacs Lisp.
- The prefix character "\C-c" for suggested key mapping became customizable.
If you want to invoke 'gtags-find-tag by "\C-xt", please write your .emacs file
like follows:
[$HOME/.emacs]
(setq gtags-suggested-key-mapping t)
(setq gtags-prefix-key "\C-x")
[INCOMPATIBLE CHANGES]
o gtags.el: Key mapping was changed to follow "Key binding conventions" of Emacs Lisp.
- Policy of key mapping was changed.
[Old] If 'gtags-suggested-key-mapping' is false, any key mapping is not done.
[New] If 'gtags-suggested-key-mapping' is false, almost key mapping is not done.
But "\C-m" and "\C-t" in 'Gtags select mode' are always enabled.
[FIXED BUGS]
global: The -L option with '-' didn't work. Now it works.
Built-in parser:
- Pick up symbols in expression in enumerator-list as "reference or other symbol".
- C/C++ parser couldn't handle typedef of the form of 'typedef enum tag_name TYPEDEF_NAME;'
correctly. Now, it works.
Version 6.2 - January 21 2012
[CHANGES]
New facilities:
o gtags.el: Added support for TRAMP. Now gtags.el works almost transparently with TRAMP.
Please send a bug report to the bug mailing list.
o gtags-cscope: Enables an environment variable EDITOR allow options.
o gtags-cscope: New -i option.
o gtags-cscope.vim: New custom variable GtagsCscope_Kepp_Alive.
o globash: Added long name options:
use, show, first, last, next, prev: --vi, --less, --emacs, --vim, --gozilla, --noedit
mark: --list, --edit
cookie: --list, --edit, --menu, --warp
o gtags: Add keywords introduced in ISO/IEC 9899:2011.
_Alignas _Alignof _Atomic _Generic _Noreturn _Static_assert _Thread_local
[INCOMPATIBLE CHANGES]
o less-global: Quoting is required for the pattern which should be interpreted by the shell.
[FIXED BUGS]
The icase_path config variable didn't affect the -c command with the -P option of global.
Now it works.
Version 6.1 - October 7 2011
[CHANGES]
New facility:
o Server side GLOBAL
You can use some shell scripts instead of global, gtags and htags.
By this facility, you need not install GLOBAL in your client machine.
Client machine Network Server machine
+--------------+ +---------------+
|gtags-client |-------- SSH ------>| gtags |-->GTAGS,GRTAGS,GPATH
| | | | |
|global-client |<------- SSH ------>| global |<----+
| | | |
| vi, emacs |<------- NFS ------>| project files |
+--------------+ +---------------+
Please read script/README for the details.
Version 6.0 - September 7 2011
[CHANGES]
New facilities:
o Now GLOBAL allows path names which include blanks.
o Now GLOBAL refuses looping symbolic links.
o global: the -c command accepts -T option.
o global: the -c command locates symbols in the directories in GTAGSLIBPATH.
o global: New --match-part option.
o global: New environment variable GTAGSTHROUGH. If this variable is set,
the -T option is specified.
o global: New output format 'ctags-mod'. It is used in gtags.vim.
o global: New environment variable GTAGSBLANKENCODE.
o htags: Changed the cflow loader to accept "_' and HTML special chars (&XXXX;).
o gtags.vim: Now allows the use of the -s and -r option at the same time.
o gtags.vim: Now custom variables: 'Gtags_Auto_Map' (default 0).
o gtags.el: New custom variable 'gtags-grep-all-text-files'.
o gtags-cscope: New -a option.
o gtags-cscope.vim: New custom variables: 'GtagsCscope_Use_Old_Key_Map',
'GtagsCscope_Ignore_Case', 'GtagsCscope_Absolute_Path'.
[INCOMPATIBLE CHANGES]
o gtags.el: Now each gtags-find-xxx command follows 'case-fold-search' variable.
o gtags.el: Mouse key mappings for xemacs is not done any longer.
o gtags.el: Changed the prefix character of the commands from 'ESC' to 'Ctrl-c'
to avoid the collisions with the default key mapping. If you want to use the old
key mapping, please write the followings in your '.emacs' file.
(setq gtags-suggested-key-mapping t)
(setq gtags-use-old-key-map t)
o gtags.el: New policy of key mapping:
- If 'gtags-suggested-key-mapping' is false, any key mapping is not done.
- If 'gtags-disable-pushy-mouse-mapping' is true, any mouse mapping is not done.
o gtags-cscope.vim: The default value of the 'GtagsCscope_Auto_Map' and
'GtagsCscope_Auto_Load' was changed to 0. Additionally, the default key mapping
was changed to the one derived from 'cscope_maps.vim' that was made
by the cscope team.
If you hope older environment, please write the followings to your '.vimrc' file.
let GtagsCscope_Auto_Load = 1
let GtagsCscope_Auto_Map = 1
let GtagsCscope_Use_Old_Key_Map = 1
o gtags.vim: Changed the -P sub-command not to accept NULL input.
Please input '/' instead.
o gtags-cscope: Title changed.
Find this C symbol: -> Find this symbol
Find functions calling this function: -> Find locations calling this function:
o gtags.conf: The lines which start with a '#' on the continuation lines is considered
to be a comment line.
[example]
:langmap=C\:.c:\
# :langmap=C#\:.cs:\
:langmap=Java\:.java:
[old]
considered as:| :langmap=C\:.c:# :langmap=C#\:.cs: :langmap=Java\:.java:|
[new]
considered as:| :langmap=C\:.c: :langmap=Java\:.java:|
[FIXED BUGS]
o gtags.el: gtags-mode-hook and gtags-select-mode-hook were not the last thing run
when entering the mode. It has been fixed.
Version 5.9.7 - July 1 2011
[CHANGES]
New facilities:
o global: the -c command accepts new -P and -r option.
o gozilla: Now support firefox.
o globash: Added two commands: d and rs.
[INCOMPATIBLE CHANGES]
o globash: The -l option in each search command was removed.
o gtags.el: Removed the default mouse key mapping in gtags-mode and gtags-select-mode.
If gtags-suggested-key-mapping is true, the old mouse key mapping is available.
[$HOME/.emacs]
+------------------------------------------------
|(setq gtags-suggested-key-mapping t)
[NEW FACILITIES IN TESTING STAGE]
You can use the following facilities by setting GTAGSTESTING environment variable.
Please try:
$ export GTAGSTESTING= (in sh)
or
% setenv GTAGSTESTING (in csh)
o gtags: Now gtags detects looping symbolic link.(testing stage)
o gtags: Now treat blanks in a path correctly.(testing stage)
If you find a bug, please send a bug report to [email protected]. Thank you.
Version 5.9.6 - June 7 2011
[CHANGES]
global: New option --literal.
htags: New --fixed-guide option.
[FIXED BUGS]
htags: didn't make FILEMAP file which is referred by Doxgen.
version 5.9.4 and 5.9.5 didn't this file.
gtags-cscope: 'Find this text string:' didn't work correctly in some cases.
gtags-cscope/Makefile: setting of gtags_cscope_DEPENDENCIES was wrong.
Version 5.9.5 - May 16 2011
[CHANGES]
o gtags-cscope: re-implemented using cscope's code.
Now, it is almost compatible with cscope itself.
o Config variable 'suffixes' was completely removed.
Instead, config variable 'langmap' was actualized.
[INCOMPATIBLE CHANGES]
Removed GPATH,GTAGS,GRTAGS,GSYMS and html/ from the skip variable
in gtags.conf file.
From now on, gtags unconditionally ignore the tag files.
Though 'html/' was added for Windows, it brought troubles for UNIX.
[FIXED BUGS]
o The processing of the --ncol option was missing.
Version 5.9.4 - March 8 2011
[CHANGES]
o gtags.el: New custom variables: 'gtags-disable-pushy-mouse-mapping'
and 'gtags-suggested-key-mapping'.
o gtags.el: Command gtags-parse-file was rewritten.
o gtags.vim: New custom variable Gtags_Use_Tags_Format.
[INCOMPATIBLE CHANGES]
o htags: Ceases making ID database arbitrarily when the -g option is specified.
o htags: The --no-map-file option was removed. Instead, new --map-file option
was added. Htags doesn't make the mapping files (FILEMAP, MAP) any longer.
o htags: The -c (--compact) option was deleted from the option list of the
--suggest2 option.
[FIXED BUGS]
o htags: A certain kind of files which does not end with newline bring
segmentation fault.
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 globash: 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)