View Source tags (tools v4.0)
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 above 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"}]).
Here we create 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
Create a TAGS file for all files in directory Dir
.
Equivalent to dirs/2
Create a TAGS file for all files in any directory in DirList
.
Equivalent to file/2
Create a TAGS
file for the file File
.
Equivalent to files/2
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/2
Descend recursively down the directory Dir
and create a TAGS
file based on
all files found.
Equivalent to subdirs/2
Descend recursively down all 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/2
-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/2
-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/2
-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/2
-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/1
-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/2
-spec subdir(Dir, Options) -> ok | error when Dir :: file:filename(), Options :: [option()].
Descend recursively down 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/2
-spec subdirs(DirList, Options) -> ok | error when DirList :: [file:filename()], Options :: [option()].
Descend recursively down all the directories in DirList
and create a TAGS
file based on all files found.