HTAGS(1) General Commands Manual HTAGS(1) NAME htags - generate a hypertext from a set of source files SYNOPSIS htags [-aDfFghInosTvw][-d dbpath][-m name][-t title][dir] DESCRIPTION Htags generates a hypertext from a set of source files of C, Yacc, Java, PHP and assembly. In advance of using this command, you should execute gtags(1) in the root directory of a source project. Then you can execute htags in the same place. Htags makes a directory named 'HTML', and puts a hypertext in it. You can start browsing at 'HTML/index.html'. Since htags generates a static hypertext as long as neither -D nor -f option is not specified, you can move it anywhere and browse it by any browser without any HTTP server. If you use -D or -f option, you need to use HTTP server. Though any HTTP server is available, htags- server(1) is recommended. This command has so many options. If you are new to htags, it is recommended to use --suggest option. With that option, htags chooses popular options on your behalf. OPTIONS The following options are available: -a, --alphabet Make an alphabetical index suitable for a large project. --auto-completion[=limit] Enable auto-completion facility for the input form. If limit is specified, number of candidates is limited to the value. Please note this function requires javascript language in your browser. -C, --directory dir Change the directory before doing all the work including parameter analysis. --caution Display a caution message on the top page. --cflow cflowfile Add a call tree by cflow(1). cflowfile must be posix format. If you use GNU cflow, invoke the command at the project root directory with the --format=posix option. This option is deprecated; please use --call-tree or --callee-tree instead. --call-tree callfile Add a call tree by cflow(1); callfile must be posix format. If you use GNU cflow, invoke the command at the project root directory with the --format=posix option. --callee-tree calleefile Add a callee tree by cflow(1); calleefile must be posix format. If you use GNU cflow, invoke the command at the project root directory with the --format=posix and --reverse options. --colorize-warned-line Use color to highlight warned lines. --cvsweb url Add a link to cvsweb; url is used as the base of URL. When directory 'CVS' exists in the root directory of the project, the content of 'CVS/Repository' is used as the relative path from the base. --cvsweb-cvsroot cvsroot Specify cvsroot in cvsweb URL. -D, --dynamic Generate a tag list dynamically using CGI program. Though this option decreases both the size and generation time of hypertext, you need to start up HTTP server. -d, --dbpath dbpath Specify the directory in which 'GTAGS' exists. The default is the current directory. --disable-grep Disable grep in the search form (-f, --form). --disable-idutils Disable idutils in the search form (-f, --form). -F, --frame Use frames for the top page. -f, --form Add a search form using CGI program. You need to start a HTTP server for it. --fixed-guide Put a fixed guide at the bottom of the screen of the browser. --full-path Use full path name in the file index. By default, use just the last component of a path. -g, --gtags Execute gtags(1) before starting job. The -v, -w and dbpath options are passed to gtags. --gtagsconf file Set environment variable GTAGSCONF to file. --gtagslabel label Set environment variable GTAGSLABEL to label. -h, --func-header[=position] Insert a function header for each function. By default, htags doesn't generate them. You can choose the position using position, which allows one of 'before', 'right' or 'after' (default). --help Print a usage message. --html-header file Insert a header record derived from file into the HTML header of each file. -I, --icon Use icons instead of text for some links. --insert-footer file Insert custom footer derived from file before tag. --insert-header file Insert custom header derived from file after tag. --item-order spec Specify the order of the items in the top page. The spec is a string consisting of item signs in order. Each sign means as follows: 'c': caution; 's': search form; 'm': mains; 'd': definitions; 'f': files; 't': call tree. The default is 'csmdf'. -m, --main-func name Specify startup function name; the default is 'main'. --map-file Generate file 'MAP'. -n, --line-number[=columns] Print line numbers. By default, don't print line numbers. The default value of columns is 4. --no-order-list Numbers are not given in list form. -o, --other Pick up not only source files but also other files for the file index. -s, --symbol Make anchors not only for definitions and references but also other symbols. --show-position Print the position string per function definition. The string can be interpreted by general editors in UNIX. The default is false. --statistics Print statistics information. --suggest Htags chooses popular options on behalf of beginners. It is equivalent to -aghInosTxv --show-position --fixed-guide now. --suggest2 Htags chooses popular options on behalf of beginners. This option enables frame, AJAX and CGI facility in addition to the facilities by the --suggest option. It is equivalent to --suggest -DfF --auto-completion --tree-view=filetree now. -T, --table-flist[=rows] Use tag to display the file index. You can optionally specify the number of rows; the default is 5. -t, --title title Title of the hypertext. The default is the last component of the path of the current directory. --tabs cols Tab stops. The default is 8. --table-list Use
tag to display the tag list. --tree-view[=type] Use treeview for the file index. Please note this function requires javascript language in your browser. Possible values of type are as follows: treeview, filetree, treeview-red, treeview-black, treeview-gray, treeview-famfamfam. The default is treeview. -v, --verbose Verbose mode. --version Show version number. -w, --warning Print warning messages. dir The directory in which the result of this command is stored. The default is the current directory. EXAMPLES $ gtags -v $ htags -sanohITvt 'Welcome to XXX source tour!' $ firefox HTML/index.html $ htags --suggest2 $ htags-server >& log & $ firefox http://127.0.0.1:8000 FILES 'GTAGS' Tag file for definitions. 'GRTAGS' Tag file for references. 'GPATH' Tag file for source files. 'gtags.conf', '$HOME/.globalrc' Configuration data for GNU Global. See gtags.conf(5). 'HTML/FILEMAP' Mapping file for converting file name into the path of the file. 'HTML/GTAGSROOT' If this file exists, CGI program 'global.cgi' sets environment variable GTAGSROOT to the contents of it. If you move directory 'HTML' from the original place, please make this file. 'HTML/.htaccess' Local configuration file for Apache. This file is generated when the -f or -D options are specified. 'HTML/index.html' Start-up file. 'HTML/MAP' Mapping file for converting tag name into the path of tag list. 'HTML/style.css' Style sheet file. '/usr/local/share/gtags/style.css.tmpl' The template of the style sheet file ('HTML/style.css'). ENVIRONMENT The following environment variables affect the execution of htags: GTAGSCACHE The size of the B-tree cache. The default is 50000000 (bytes). GTAGSCONF Configuration file. GTAGSLABEL Configuration label. The default is 'default'. HTAGS_OPTIONS The value of this variable is inserted in the head of arguments. TMPDIR The location used to stored temporary files. The default is '/tmp'. GTAGSFORCECPP If this variable is set, each file whose suffix is '.h' is treated as a C++ source file. CONFIGURATION The following configuration variables affect the execution of htags: datadir(string) Shared data directory. The default is '/usr/local/share' but you can change the value using configure script. Htags looks up template files in the 'gtags' directory in this data directory. include_file_suffixes(comma separated list) Suffixes of include files. The default is: 'h,hh,hxx,hpp,H,inc.php'. langmap(comma separated list) Language mapping. Each comma-separated map consists of the language name, a colon, and a list of file extensions. Default mapping is: 'c:.c.h,yacc:.y,asm:.s.S,java:.java,cpp:.c++.cc.hh.cpp.cxx.hxx.hpp.C.H,php:.php.php3.phtml'. DIAGNOSTICS Htags exits with a non-0 value if an error occurred, 0 otherwise. SEE ALSO htags-server(1), global(1), gtags(1), gtags.conf(5). GNU Global source code tag system (http://www.gnu.org/software/global/). BUG Generated hypertext is VERY LARGE. In advance, check the space of your disk. PHP support is far from complete. The -f and -D options generate CGI programs. If you open the hypertext to the public, please recognize security dangers. Htags does not support plug-in parser. AUTHOR Shigio YAMAGUCHI, Hideki IWAMOTO and others. HISTORY The htags command appeared in FreeBSD 2.2.2. GNU Project June 2013 HTAGS(1)