mktags: Tag all procedure declarations in a set of files

Package: softools

Usage

mktags

Parameters

files = "*.x"
The files to be tagged, e.g., "*.x".
listing = no
If this switch is enabled a sorted list of all procedures declared in the set of files will be printed on the standard output, giving the procedure name, line and file number, and procedure declaration on each output line.
tags = yes
If this switch is enabled a "tags" file will be written in the current directory for use with the VI editor.

Description

The named files are scanned for procedure declarations. Each such declaration found is buffered internally. When all files have been scanned the internal tag database is sorted and the output files are generated. Two types of output are provided:

[1]
A summary of all procedures defined in the given set of files may be printed on the standard output. This output may be used as a printed index to manually find procedures in the given file set.
[2]
A "tags" format database file (a text file) may be written. This file is read by the VI editor when a command of the form ":ta tag" is entered. This command is used to edit procedures regardless of the file in which they reside. For example, to edit procedure "maxmin", enter command ":ta maxmin" when in VI.

By default the operation of mktags is to silently update the tags database. If a printed listing is desired the listing switch must be enabled.

Bugs

A fixed amount of storage is allocated internally and overflow will occur if there are too many tags (procedures) or if there is too much text (the string buffer will overflow).

See also