logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

tags - Generate Emacs TAGS file from Erlang source files

Description

       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.

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.

Exports

file(File)->ok|errorfile(File,Options)->ok|error

              Types:

                 File = file:filename()
                 Options = [option()]
                 option() =
                     {outfile, NameOfTAGSFile :: file:filename()} |
                     {outdir, NameOfDirectory :: file:filename()}

              Create a TAGS file for the file File.

       files(FileList)->ok|errorfiles(FileList,Options)->ok|error

              Types:

                 FileList = [file:filename()]
                 Options = [option()]
                 option() =
                     {outfile, NameOfTAGSFile :: file:filename()} |
                     {outdir, NameOfDirectory :: file:filename()}

              Create a TAGS file for the files in the list FileList.

       dir(Dir)->ok|errordir(Dir,Options)->ok|error

              Types:

                 Dir = file:filename()
                 Options = [option()]
                 option() =
                     {outfile, NameOfTAGSFile :: file:filename()} |
                     {outdir, NameOfDirectory :: file:filename()}

              Create a TAGS file for all files in directory Dir.

       dirs(DirList)->ok|errordirs(DirList,Options)->ok|error

              Types:

                 DirList = [file:filename()]
                 Options = [option()]
                 option() =
                     {outfile, NameOfTAGSFile :: file:filename()} |
                     {outdir, NameOfDirectory :: file:filename()}

              Create a TAGS file for all files in any directory in DirList.

       subdir(Dir)->ok|errorsubdir(Dir,Options)->ok|error

              Types:

                 Dir = file:filename()
                 Options = [option()]
                 option() =
                     {outfile, NameOfTAGSFile :: file:filename()} |
                     {outdir, NameOfDirectory :: file:filename()}

              Descend recursively down the directory Dir and create a TAGS file based on all files found.

       subdirs(DirList)->ok|errorsubdirs(DirList,Options)->ok|error

              Types:

                 DirList = [file:filename()]
                 Options = [option()]
                 option() =
                     {outfile, NameOfTAGSFile :: file:filename()} |
                     {outdir, NameOfDirectory :: file:filename()}

              Descend  recursively down all the directories in DirList and create a TAGS file based on all files
              found.

       root()->ok|errorroot(Options)->ok|error

              Types:

                 Options = [option()]
                 option() =
                     {outfile, NameOfTAGSFile :: file:filename()} |
                     {outdir, NameOfDirectory :: file:filename()}

              Create a TAGS file covering all files in the Erlang distribution.

Name

       tags - Generate Emacs TAGS file from Erlang source files

Options

       The functions above have an optional argument, Options. It is a list  which  can  contain  the  following
       elements:

         * {outfile,NameOfTAGSFile} Create a TAGS file named NameOfTAGSFile.

         * {outdir,NameOfDirectory} Create a file named TAGS in the directory NameOfDirectory.

       The default behaviour is to create a file named TAGS in the current directory.

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.

Ericsson AB                                        tools 3.5.2                                        tags(3erl)

See Also