view etc/ETAGS.EBNF @ 45655:a4c27d23899f

(enum arg_type): New label at_stdin. (STDIN): New constant. (parsing_stdin): New flag. (longopts): New option --parse-stdin=NAME. (print_help): Document it. (main): Handle it. (process_file): Split into process_file and process_file_name. (process_file_name): New function.
author Francesco Potortì <pot@gnu.org>
date Thu, 06 Jun 2002 12:47:58 +0000
parents 8d0430162d52
children 147a637372eb
line wrap: on
line source

EBNF (Extended Backus Normal Form) description of the format of the tags
file created by etags.c and interpreted by etags.el
Francesco Potorti` <pot@gnu.org> 2002
================================================================

FF ::= #x0c				   /* form feed */

LF ::= #x0a				   /* line feed */

DEL ::= #x7f				   /* pattern terminator */

SOH ::= #x01				   /* name terminator */

regchar ::= [^#x0a#x0c#x7f]		   /* regular character */

regstring ::= { regchar }		   /* regular string */

unsint ::= [0-9] { [0-9] }		   /* non-negative integer */



tagfile ::= { tagsection }		   /* a tags file */

tagsection ::= FF LF ( includesec | regularsec ) LF

includesec ::= filename ",include" [ LF fileprop ]

regularsec ::= filename "," [ unsint ] [ LF fileprop ] { LF tag }

filename ::= regchar regstring		   /* a file name */

fileprop ::= DEL "(" regstring ")"

tag ::= directtag | patterntag

directtag ::= DEL realposition

patterntag ::= pattern DEL [ tagname SOH ] position

pattern ::= regstring			   /* a tag pattern */

tagname ::= regchar regstring		   /* a tag name */

position ::= realposition | ","

realposition ::= "," unsint | unsint "," | unsint "," unsint