View Source tags (tools v4.1)
Generate Emacs TAGS file from Erlang source files
A TAGS
file is used by Emacs to find function and variable definitions in any
source file in large projects. This module can generate a TAGS
file from
Erlang source files. It recognises functions, records, and macro definitions.
Options
The functions in this module have an optional argument Options
. It
is a list which can contain the following elements:
{outfile, NameOfTAGSFile}
Create aTAGS
file namedNameOfTAGSFile
.{outdir, NameOfDirectory}
Create a file namedTAGS
in the directoryNameOfDirectory
.
The default behaviour is to create a file named TAGS
in the current directory.
Examples
tags:root([{outfile, "root.TAGS"}]).
This command will create a file named
root.TAGS
in the current directory. The file will contain references to all Erlang source files in the Erlang distribution.tags:files(["foo.erl", "bar.erl", "baz.erl"], [{outdir, "../projectdir"}]).
This command will create a file named
TAGS
placed it in the directory../projectdir
. The file contains information about the functions, records, and macro definitions of the three files.
See Also
- Richard M. Stallman. GNU Emacs Manual, chapter "Editing Programs", section "Tag Tables". Free Software Foundation, 1995.
- Anders Lindgren. The Erlang editing mode for Emacs. Ericsson, 1998.
Summary
Functions
Equivalent to dir(Dir, [])
.
Create a TAGS
file for all files in directory Dir
.
Equivalent to dirs(Dirs, [])
.
Create a TAGS
file for all files in any directory in DirList
.
Equivalent to file(Name, [])
.
Create a TAGS
file for the file File
.
Equivalent to files(Files, [])
.
Create a TAGS
file for the files in the list FileList
.
Create a TAGS
file covering all files in the Erlang distribution.
Equivalent to subdir(Dir, [])
.
Descend recursively into the directory Dir
and create a TAGS
file based on
all files found.
Equivalent to subdirs(Dirs, [])
.
Descend recursively into the directories in DirList
and create a TAGS
file based on all files found.
Types
-type option() :: {outfile, NameOfTAGSFile :: file:filename()} | {outdir, NameOfDirectory :: file:filename()}.
Functions
-spec dir(Dir) -> ok | error when Dir :: file:filename().
Equivalent to dir(Dir, [])
.
-spec dir(Dir, Options) -> ok | error when Dir :: file:filename(), Options :: [option()].
Create a TAGS
file for all files in directory Dir
.
-spec dirs(DirList) -> ok | error when DirList :: [file:filename()].
Equivalent to dirs(Dirs, [])
.
-spec dirs(DirList, Options) -> ok | error when DirList :: [file:filename()], Options :: [option()].
Create a TAGS
file for all files in any directory in DirList
.
-spec file(File) -> ok | error when File :: file:filename().
Equivalent to file(Name, [])
.
-spec file(File, Options) -> ok | error when File :: file:filename(), Options :: [option()].
Create a TAGS
file for the file File
.
-spec files(FileList) -> ok | error when FileList :: [file:filename()].
Equivalent to files(Files, [])
.
-spec files(FileList, Options) -> ok | error when FileList :: [file:filename()], Options :: [option()].
Create a TAGS
file for the files in the list FileList
.
-spec root() -> ok | error.
Equivalent to root([])
.
-spec root(Options) -> ok | error when Options :: [option()].
Create a TAGS
file covering all files in the Erlang distribution.
-spec subdir(Dir) -> ok | error when Dir :: file:filename().
Equivalent to subdir(Dir, [])
.
-spec subdir(Dir, Options) -> ok | error when Dir :: file:filename(), Options :: [option()].
Descend recursively into the directory Dir
and create a TAGS
file based on
all files found.
-spec subdirs(DirList) -> ok | error when DirList :: [file:filename()].
Equivalent to subdirs(Dirs, [])
.
-spec subdirs(DirList, Options) -> ok | error when DirList :: [file:filename()], Options :: [option()].
Descend recursively into the directories in DirList
and create a TAGS
file based on all files found.