Issues found with existing distfiles:
distfiles/eclipse-sourceBuild-srcIncluded-3.0.1.zip
distfiles/fortran-utils-1.1.tar.gz
distfiles/ivykis-0.39.tar.gz
distfiles/enum-1.11.tar.gz
distfiles/pvs-3.2-libraries.tgz
distfiles/pvs-3.2-linux.tgz
distfiles/pvs-3.2-solaris.tgz
distfiles/pvs-3.2-system.tgz
No changes made to these distinfo files.
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
Version 6.5.1 - Sep 15 2015
[CHANGES]
New facilities:
o gtags(c, c++): New environment variable GTAGSFORCEENDBLOCK.
If this variable is set, each '}' at the first column brings
end of all blocks.
o gtags: New --skip-unreadable option.
If this option is specified, gtags skips unreadable files
instead of exiting the command.
[FIXED BUGS]
o gtags: There was a difference of interpretation of the langmap
between gtags and ctags. Now there is no difference.
o gtags (C++): Gtags did not pick up 'my_type1' as a definition
in the following example:
[xxx.cpp]
+------------------------
|using my_type1 = double;
Now it picks up the symbol as a definition.
o gtags (C++): gtags picked up 'DomainId_t' as a definition
in the following example:
[xxx.cc]
+------------------------
|typedef std::map<DomainId_t, int> map_t2;
Now it does not pick up it as a definition.
o gtags (C, C++): Gtags did not pick up 'pr_debug' as a definition
in the following example:
[xxx.h]
+------------------------
|extern void dump_stack(void) __cold;
|#define pr_debug() printk()
Now it picks up it as a definition.
o gtags (PHP): Gtags did not treat back-quote correctly.
[xxx.php]
+------------------------
|<?php `ls $echo ~/*`; ?>
Now it works.
[INCOMPATIBLE CHANGES]
o gozilla: Now, gozilla invokes firefox as a generic browser, that is, using
command line 'firefox url'. Because firefox have removed the -remote command
since version 39.
Version 6.5 - June 10 2015
[CHANGES]
New facilities:
o global: New -N (--nearness=[start]) option.
Nearness sort method is available for the output of tag search command.
The result of nearness sort is concatenation of the followings ([1]-[n])
in this order. The default of 'start' is the current directory.
[1] Output of local search in the 'start' directory.
[2] Output of local search in the parent directory except for [1].
[3] Output of local search in the grandparent directory except for [1]-[2].
(repeat until the project root directory)
[n] Output of local search in the project root directory except for [1]-[n-1].
In each directory, they are sorted by alphabetical order.
o global: Now the --literal option also works with the tag search command,
-P command and -I command as well as the -g command.
[FIXED BUGS]
o htags: The -c and -x option of htags(1) were still available in the help
message, even though they had actually been removed. Now, these options
are removed completely.
o gtags (PHP): Against the following source code, gtags(1) aborted with a message
'short of memory'. Now it works.
[nullstring.php]
+----------------
|<?php
|define('');
|?>
+----------------
o gtags (C++): Gtags(1) didn't recognize the shift operator. Now it works.
[a.hh]
+----------------
|class const_mod<uint64_t(1) << 48>
|{
|};
+----------------
$ gtags
gtags: failed to parse template [+1 ./a.hh].
o gtags (C, C++): Gtags(1) couldn't pick up 'E2' as a definition. Now it works.
[test.c]
+----------------
|enum my_enum2
|{
| E2
|};
+----------------
Version 6.4 - March 24 2015
[CHANGES]
New facilities:
o gtags: Now --sqlite3 option is supported formally. This option uses
SQLite3 API instead of BSD/DB API for making tag files.
To use this option, you need to invoke configure script with
--with-sqlite3 in the build phase.
[configuration phase]
$ ./configure --with-sqlite3 # use sqlite3 API
[execution phase]
$ gtags --sqlite3 # make sqlite3 tag files
o gtags: --single-update option supports deletion of a file.
Now the next command line works well.
$ rm test.c
$ gtags --single-update=test.c
o gtags: New --explain option. This option explains handling files.
You can know the following information:
- Skipped reason for each skipped files.
- Used parser and its library path for each source file.
[FIXED BUGS]
o global: global(1) could not pick up source code from source files
in library projects (GTAGSLLIBPATH) if their tag files are compact
format. Now it works.
[INCOMPATIBLE CHANGES]
The following features of htags(1) were removed.
o The -c (--compact) option.
o The --system-cgi option.
o The --overwrite-key option.
o The -x (--xhtml[=version]) option.
All files are 1.0.
o The following configuration variables:
colorize-warned-line (substitute: --colorize-warned-line)
gzipped_suffix (substitute: not available)
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 (substitute: not available)
tabs (substitute: --tabs n)
xhtml_version (will be always 1.0)
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.
[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
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: The highlight of symbols in library paths does not
work. Now it works.
o htags: Htags with the --suggest option didn't find GTAGS
in the obj directories. Now it works.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
March 17 2014, Shigio YAMAGUCHI
libutil/pathconvert.c module was divided into the following two modules:
o libutil/encodepath.c
o global/convert.c
According to the change, the function of the --path command of gtags(1)
(undocumented) was moved to global(1)'s --path-convert command.
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 does not match
the last line of files. Now it works.
o global: Literal search with the -i option prints an unmatched tag in a certain
kind of case. Now it works.
o global: 'global -cI' without argument causes 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 shows 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 fails when the logical and physical
path name of the current working directory are 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.
[BUG FIXED]
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.
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
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.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.
[BUG FIXED]
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
[BUG FIXED]
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
[BUG FIXED]
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
[BUG FIXED]
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.
[BUG FIXED]
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.
[BUG FIXED]
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:|
[BUG FIXED]
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 bug-global@gnu.org. 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.
Big changes:
- Allows the symbolic links which point to directories, and treats
the names of struct, union, enum and enum member as definitions.
(5.7)
- Uses GPLv3 and LGPLv3 license. (5.6)
- Becomes GNU BOKINware. (5.5)
Details:
http://cvs.savannah.gnu.org/viewvc/global/global/NEWS?view=markup
Bunch of incompatible format changes. DON'T FORGET TO RE-GENERATE TAGS!
Version 5.4 - January 29 2007, by Shigio YAMAGUCHI
[INCOMPATIBLE CHANGES]
* Further compression of tag file (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: Added new option -l for tag search command (x,r,s,g,P,I,f).
This option invokes less(1) directly without 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
[BUG FIXED]
* Gtags(1) and global(1) didn't work well in the system root directory('/').
Version 5.3 - November 20 2006, by Shigio YAMAGUCHI
[INCOMPATIBLE CHANGES]
* global: Changed not to locate other symbols (-s) in GTAGSLIBPATH.
This is the original specification of GLOBAL.
* global: Stop 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: Added new option -O(--only-other).
* htags: Added some new options and new arguments which are synonyms of config variable.
This decreases dependence on configration file.
new option | config variable
------------------------+-------------------------
--disable-grep | disable_grep
--table-list | table_list
--tabs=<n> | tabs
--full-path | full_path
new argument | config 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 default skip file list.
* gtags.el:
- Shorten path names in [GTAGS SELECT MODE]:
If 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 completetion without
invoking this command.
[BUG FIXED]
* gtags: gtags had exited when it encountered dead symbolic link.
and by Murray Armfield in PR 34636.
Version 5.2 - August 8 2006, by Shigio YAMAGUCHI
* 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 config variable 'enable_grep' since it became meaningless. Instead, added
a new variable 'disable_grep'.
* htags: Removed config variable 'enable_grep' since it is meaningless.
Instead, added a new variable 'disable_grep'.
* htags: Added more profitable tips in file browser.
- File size of bytes
- Directory number of files in the directory.
Version 5.1 - June 10 2006, by Shigio YAMAGUCHI
[INCOMPATIBLE CHANGES]
* Changed the priority about the --result option to make the format
specification easy. The --result option is given to priority more
than the -t and -x option. (This option appeared in version 5.0.)
[OTHER CHANGES]
* Added 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, by Shigio YAMAGUCHI
[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 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 a wrong combination:
- 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 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): The -c(--compact) option was removed.
Compact format was progressively canceled with the adoption of the new
tag format.
* gtags(1): The -o(--omit-gsyms) option was removed.
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): The --style-sheet option was removed.
This is a really halfway option, and now nobody might need it because
the --xhtml option became available.
[OTHER CHANGES]
New options:
* global: Added --result=<format> option. Grep format is newly supported.
<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, by Shigio YAMAGUCHI
New options:
* gtags: New --file file-list option added.
Gtags(1) accept a file list specified by --file option.
% find . -type f -print >/tmp/list
% gtags --file=/tmp/list
or
% find . -type f -print | gtags --file=-
* gtags: New --max-args option added.
Improvement of efficiency:
* Gtags was improved of performance by changing algorithm of
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 omiting flushing temporary
files to the disk.
Fixed bugs:
* Htags didn't treat here document of PHP source code correctly.
(<<<WORD)
* Htags didn't treat HTML part of PHP source code correctly.
Other facilities:
* Added 'Htags Hyper-text Reference Kit'.
The hyper-text generated by htags(1) is available from external
programs. This kit helps you to convert the path of the source
file into the URL in the hyper-text.
* doc/global.txi: Added the usage of Doxygen using GLOBAL.
Version 4.8.6 - May 12 2005, by Shigio YAMAGUCHI
[INCOMPATIBLE CHANGES]
* htags: Changed the value of id attribute and name attribute of
line number anchor from line number itself to 'L' + line number
like this.
<a name='100'> => <a name='L100'>
It is because XHTML prohibit the id attribute which starts
with a digit. If you refer these anchors from outer system,
please rewrite it.
[OTHER CHANGES]
* htags: New option --insert-header and --insert-footer added.
Version 4.8.5 - April 19 2005, by Shigio YAMAGUCHI
* htags: XHTML support(--xhtml) added.
If the --frame option is specified then generate XHTML-1.0 Frameset,
else if config variable 'xhtml_version' is set to 1.1 then generate
XHTML-1.1 else XHTML 1.0 Transitional.
You can customize the appearance using style sheet file 'style.css'.
* htags: Added config variable 'xhtml_version'.
* htags: Added 'html/' to the fault skip list of htags(1).
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, by Shigio YAMAGUCHI
Fixed bugs:
* gtags-parser: C and C++ parser was broken.
* gnusort: Compile error in Solaris environment.
Version 4.8.3 - February 26 2005, by Shigio YAMAGUCHI
[INCOMPATIBLE CHANGES]
* DOS and Windows 32 support 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 the code
from them as is. Therefore, anything has not changed substantially
up to now.
* Command gctags(1) was renamed to gtags-parser(1) because some systems
have another 'gctags' which is not GLOBAL's.
* About gtags-parser(1), language type of source file is decided
only by the suffix. In older version, *.h file was considered
to be C++ source file if it includes token 'class'. But the new version
considers it always C source file. If you want to consider it C++
then you must redefine new config 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 config variable 'langmap' added.
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 config variable 'copy_files' added.
If the -f option is used then htags makes links of tag files in 'cgi-bin'
directory by default. With this variable, htags copy tag files instead of
linking.
Version 4.8.2 - November 11 2004, by Shigio YAMAGUCHI
[INCOMPATIBLE CHANGES]
* Postgres support ended.
* Htags.pl (perl version of htags) was removed completely.
* Config variable sed_command and sort_command were removed.
The sed(1) and sort(1) are not necessary any longer.
[OTHER CHANGES]
Fixed bugs:
* Wrong output of 'global -Po' was fixed.
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 preprocessor.
- The check of correspondence of "#if" and "#endif" was deleted.
This did not exist in version 4.8.
* New directory '.snprj/' was added to the DEFAULTSKIP list.
This is the tag directory of Source-Navigator.
Version 4.8.1 - October 6 2004, by Shigio YAMAGUCHI
Fixed bugs:
* htags: The -d option of htags didn't work.
* htags: didn't recognize continued line and null directive(#).
New features:
* htags: make suffix list of include file configurable.
(See man htags(1). config variables: include_file_suffixes)
* htags: try TMP if TMPDIR doesn't exist.(only DJGPP)
* htags: Warn about unknown preprocessing directive. As the exception,
when unknown preprocessing directive appeared in assembly source,
it will be recognized as the start of a shell comment.
* htags: Add all yacc directives understood by bison-1.875.
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
Changes since 4.7:
August 26 2004, Shigio Yamaguchi <shigio@gnu.org>
* Moved function now() from gtags.c to libutil/date.c.
* htags: Changed so that the path passed to CGI might be encoded to %xx.
* htags: Rewritten in C language.
* htags: The use of the 'gtags --write' was stopped.
* die.c: New function sethandler() and warning() added.
* gctags/reserved.pl: The use of the --key-positions option of gperf(1)
was stopped. We need gperf-3.0.1 instead.
June 1 2004, Shigio Yamaguchi <shigio@gnu.org>
* htags: Function usable() was changed to the same specification
as usable() in libutil/usable().
* htags: Execution path of global(1) was changed to the absolute path.
* htags: Write FILEMAP file for reference from external system.
* conf.c: New config variable 'bindir' and 'datadir' added.
* w32/ directory removed.
* Gtags.vim, plugin script integrates GLOBAL with vim editor added.
GLOBAL-4.6.
[INCOMPATIBLE CHANGES]
* The default value of the config variable 'definition_header' was changed
to 'no', because the definition header is unsightly according to the place,
especially in class definition.
[OTHER CHANGES]
* Added support for PHP language.
(Known problems in htags)
- The variable in string cannot be recognized.(global can recognize that.)
- In HTML, the character string of the same spelling as the reserved
word of PHP is recognized as a reserved word of PHP.
I will rewrite htags in C language in the future to solve above problems.
* Added support for SCM_DEFINE macro which is part of guile-snarf.
* Added 'right' as a value of config variable 'definition_header'.
* Added some tool tips.
- Alphabet in alphabetical index shows the count of definitions.
- File name in file index show the full path name.
- Anchor to duplicate index show the number of duplicated objects.
* Added .cvsrc,.cvsignore,.cvspass,.cvswrappers,autom4te.cache/
to the default skip list.
GLOBAL 4.5.3.
[INCOMPATIBLE CHANGES]
* htags: Htags does not generate the code of javascript at all.
In the former version, we used javascript to display information about
links. But a browser these days had come to support the tool tip using
'title' attribute. So, we replaced the function using tool tip instead
of javascript facility.
* The --no-javascript option was removed because it was already unnecessary.
* global: The pattern of the argument came always to be interpreted
as a extended regular expression. In the former version, there was both
the case for the pattern to be interpreted as a basic regular expression
and the interpretation as the extended regular expression. This depended
on the environment of the build. (If you have grep(1) and xargs(1),
basic regular expression will be used.)
In the new version, if you want the pattern to be interpreted as a basic
regular expression, please specify the -G option.
[OTHER CHANGES]
New features:
htags:
* CVS REPOSITORY link (the --cvsweb and --cvsweb-cvsroot option).
You can link CVS repository from the hypertext of source code.
* Tooltip inserted in links.
* The --no-map-file option added.
Htags generate 'MAP' file by default. You can suppress it by this.
* The --statistics option added.
With this option, htags print statistics information to the standard error.
global:
* The -e(--regexp) option added like grep(1).
* The -G(--basic-regexp) option added like egrep(1).
Performance tuning:
htags:
* Remove tag name and line image from cache record. This made cache
file smaller.
* The use of the temporary file was suppressed to the minimum by tring to
read the source code.
Other modifications
* A security hole was shut.
* conf.h: add '{arch}' and '.notfunction' to default skip list.
* gctags: support __attribute__((...)).
GLOBAL 4.5.2.
[INCOMPATIBLE CHANGES]
* htags: move title's '<H1>...</H1>' into configuration variables
'title_begin' and 'title_end'. This makes configuration more flexible.
If you are still using older version of gtags.conf, please replace it
with one in this version.
[OTHER CHANGES]
* htags: add INCLUDED FROM index of htags by Hideki IWAMOTO.
This indexes the places where the header file is included.
* htags: add support of multi-line string.
* htags, gtags: pass option '-w' from htags to gtags.
* htags: allow reference to nonexistent definition without warning.
* htags: add missing reserved words.
- add C99 reserved words _Bool,_Complex,_Imaginary,inline,restrict.
- add missing C++ reserved words asm,bool,const_cast,dynamic_cast,
explicit,export,false,mutable,namespace,reinterpret_cast,static_cast,
true,typeid,typename,using,wchar_t.
* htags: insert HTML tag in the line which was warned.
(see configuration variable 'colorize_warned_line', 'warned_line_begin'
and 'warned_line_end'.)
* gctags: pick up reference to macro in conditional directive.
* gctags: remove wchar_t from the reservation word list of C.
* gctags: remove overload from the reserved word list of C++.
* gctags: remove wchar_t from the reservation word list of C.
* gtags: environment variable GTAGSCACHE added.
* and many bug fi
GLOBAL-4.5.1.
New features:
o gtags,htags: --gtagslabel option added.
o htags: -D(--dynamic) option added.
o Some bugs fixed.