Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
GLOBAL(1)		    General Commands Manual		     GLOBAL(1)

       global -	print the locations of specified object.

       global [-aGilnqrstTvx][-e] pattern
       global -c[qsv] prefix
       global -f[anqrstvx] files
       global -g[aGilnoOqtvx][-e] pattern
       global -I[ailnqtvx][-e] pattern
       global -P[aGilnoOqtvx][-e] pattern
       global -p[qrv]
       global -u[qv]

       Global  find  the  locations of specified object	in C, C++, Yacc, Java,
       PHP and Assembly	source files.  Global can treat	a  source  tree,  that
       is, a directory that has	sub-directories	and source files as a project.
       You can get the relative	path  of  objects  from	 anywhere  within  the
       project.	 Global	can locate not only object definitions but also	object
       references and other symbols.

       In advance of using this	command, you must execute gtags(1) at the root
       directory  of the project to make tag files.  Then you can execute this
       command at anywhere in the project.

       The following commands are available:

       <no command> pattern
	      Print object which match to the pattern.	Extended  regular  ex-
	      pressions	 which	are the	same as	those accepted by egrep(1) are

       -c, --completion	[prefix]
	      Print the	candidates of object names which start with the	speci-
	      fied prefix. Prefix is not specified, print all object names.

       -f, --file files
	      Print all	tags in	the files.  This option	implies	the -x option.

       -g, --grep pattern
	      Print all	lines which match to the pattern.

       --help Show help.

       -I, --idutils pattern
	      Print  all  lines	which match to the pattern.  This function use
	      idutils(1) as a search engine.  To use this command, you need to
	      install  idutils(1) in your system and you must execute gtags(1)
	      with the -I option.

       -P, --path [pattern]
	      Print the	paths which match to the pattern.  If no pattern spec-
	      ified, print all paths in	the project.

       -p, --print-dbpath
	      Print the	location of 'GTAGS'.

       -u, --update
	      Locate tag files and update them incrementally.

	      Show version number.

       The following options are available:

       -a, --absolute
	      Print absolute path name.	By default, print relative path	name.

       --from-here context
	      Decide   tag   type   by	 the  context.	The  context  must  be
	      'lineno:path'.  If this option is	specified then the -s  and  -r
	      are  ignored.  Regular expression	is not allowed in the pattern.
	      This option assumes use in conversational	environments  such  as
	      editors and IDEs.

       -e, --regexp pattern
	      Use  pattern  as the pattern; useful to protect  patterns	begin-
	      ning with	'-'.

       -G, --basic-regexp
	      Interpret	pattern	as a  basic regular expression.	  The  default
	      is extended regular expression.

       -i, --ignore-case
	      ignore case distinctions in pattern.

       -l, --local
	      Print just objects which exist under the current directory.

       -n, --nofilter
	      Suppress sort filter and path conversion filter.

       -O, --only-other
	      Search  pattern  only  in	other than source files	like 'README'.
	      This option is valid only	with -g	or -P  command.	  This	option
	      override the -o option.

       -o, --other
	      Search  pattern  in  not	only source files but also other files
	      like 'README'.  This option is valid only	with -g	or -P command.

       -q, --quiet
	      Quiet mode.

       -r, --reference,	--rootdir
	      Print the	locations of object references.	 By default, print ob-
	      ject  definitions.  With the -p option, print the	root directory
	      of source	tree.

       --result	format
	      format may be 'path', `ctags', `ctags-x',	 `grep'	 or  'cscope'.
	      The --result=ctags and --result=ctags-x are equivalent to	the -t
	      and -x respectively.  The	--result option	is given  to  priority
	      more than	the -t and -x option.

       -s, --symbol
	      Print the	locations of specified symbol other than definitions.

       -T, --through
	      Go  through  all	the  tag files listed in GTAGSLIBPATH.	By de-
	      fault, stop searching when tag is	found.	This option is ignored
	      when either -s, -r or -l option is specified.

       -t, --tags
	      Print with standard ctags	format.

       -v, --verbose
	      Verbose mode.

       -x, --cxref
	      In  addition  to the default output, produce the line number and
	      the line contents.

	    $ ls -F
	    Makefile	  src/	  lib/
	    $ gtags
	    $ global main
	    $ global -x	main
	    main	      10 src/main.c  main (argc, argv) {
	    $ global -x	'^[sg]et'
	    set_num	      20 lib/util.c  set_num(values)
	    get_num	      30 lib/util.c  get_num() {
	    $ global -rx '^[sg]et'
	    set_num	     113 src/op.c	     set_num(32);
	    set_num	     225 src/opop.c		  if (set_num(0) > 0) {
	    get_num	      90 src/op.c	     while (get_num() >	0) {
	    $ cd lib
	    $ global -rx '^[sg]et'
	    set_num	     113 ../src/op.c		set_num(32);
	    set_num	     225 ../src/opop.c		     if	(set_num(0) > 0) {
	    get_num	      90 ../src/op.c		while (get_num() > 0) {
	    $ global strlen
	    $ (cd /usr/src/sys;	gtags)
	    $ export GTAGSLIBPATH=/usr/src/sys
	    $ global strlen
	    $ (cd /usr/src/lib;	gtags)
	    $ GTAGSLIBPATH=/usr/src/lib:/usr/src/sys
	    $ global strlen

	      Tag file for object definitions.

	      Tag file for object references.

	      Tag file for other symbols.

	      Tag file for path	of source files.

	      If environment variable GTAGSROOT	is not set and 'GTAGSROOT' ex-
	      ist  in  the  same  directory with 'GTAGS' then use the value as

       '/etc/gtags.conf', '$HOME/.globalrc'
	      Configuration file.

       The following environment variables affect the execution	of global:

	      The directory which is the root of source	code.

	      The directory on which gtags database exist.  This value is  ig-
	      nored when GTAGSROOT is not defined.

	      If  this	variable  is set, it is	used as	the path to search for
	      library functions. If the	specified object is not	found  in  the
	      source  project,	global also search in these paths.  Since only
	      'GTAGS' is targeted in the retrieval, this variable  is  ignored
	      when the -r or -s	is specified.

	      If  this variable	is set,	its value is used as the label of con-
	      figuration file. The default is default.

	      If this variable is set, '$MAKEOBJDIRPREFIX<current  directory>'
	      is  used	as the candidate directory for tag files.  The default
	      is '/usr/obj'.

       The following configuration variables affect the	execution of global:

	      Ignore case distinctions in the pattern.

       Global exits with a non 0 value if an error occurred, 0 otherwise.

       gtags-parser(1),	gtags(1), htags(1), less(1).

       GNU GLOBAL source code tag system

       Shigio YAMAGUCHI, Hideki	IWAMOTO	and others.

       The global command appeared in FreeBSD 2.2.2.

GNU Project			 February 2009			     GLOBAL(1)


Want to link to this manual page? Use this URL:

home | help