GNU Project - GLOBAL / Savannah - GLOBAL

Top page

What's new





Known bugs


Mailing lists


Business model


GNU GLOBAL source code tagging system

[image of the globe]

Copyright (c) 2000-2013 Tama Communications Corporation

Linux source code GNU GLOBAL is a source code tag system that works the same way across diverse environments, such as Emacs editor, Vi editor, Less viewer, Bash shell, various web browsers, etc. You can locate specified tags, such as functions, macros, structs, classes, in your source files and move there easily. It is useful for hacking large projects which contain many sub-directories, many #ifdef and many main() functions. It is similar to ctags or etags, but is different from them at the point of independence of any editor. It runs on a UNIX (POSIX) compatible operating system, like GNU and BSD.

GNU GLOBAL is part of the GNU project, and is free software. You can freely copy, modify and redistribute this program under GNU GPL.

GNU GLOBAL has following features:

  • supports C, C++, Yacc, Java, PHP4 and assembly by the built-in parser. (definition and reference)
  • supports 41 languages (Python, Javascript, Erlang, Ruby, etc) by Exuberant Ctags plug-in parser. (only definition)
  • works the same way across diverse environments like follows:
    • Shell command line
    • Bash shell
    • Vi editor (Nvi, Elvis, vim)
    • Less viewer
    • Emacs editor (Emacs, Mule, Xemacs)
    • Web browser (See UNIX kernel source tour!.)
    • Doxygen documentation system
  • finds locations of specified symbol quickly.
  • locate not only definitions but also references.
  • allows duplicate tags.
  • locate paths which matches to the specified pattern.
  • hierarchical searches by default.
  • searches not only in a source project but also in library projects.
  • generates completion list for completing input method.
  • supports various output formats.
  • allows customizing of the set of candidate files to be tagged.
  • understands POSIX 1003.2 regular expression.
  • supports idutils as an external search engine.
  • tag files are independent of machine architecture.
  • supports incremental updating of tag files.
  • plug-in parser is available to treat new language.
  • supports customizing with gtags.conf.
  • generates a hypertext of source code.
  • compact format to save disk space.
  • supports client/server environment (TRAMP ready).
  • ignores binary files, dot files and specified files.
  • includes cscope-compatible program (gtags-cscope).
  • includes grep-like command (-g command).
  • deals with loop of symbolic links well.
Please also see 'Comparison with Similar Tools' in the OpenGrok project site for comparison with other tools.

If you have a plan to make a yet another editor with tag facility, you can use GLOBAL for it.

May the GLOBAL be under you like the globe!

[Top of page]
Copyright (c) 2000-2013 Tama Communications Corporation
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2
[image of the globe]