diff options
author | Francesco Potortì <[email protected]> | 2002-03-12 10:57:49 +0000 |
---|---|---|
committer | Francesco Potortì <[email protected]> | 2002-03-12 10:57:49 +0000 |
commit | 717a0a0d846b7bfb726638042b2933921728b87d (patch) | |
tree | d5aebdf9068abc327475aede0e8f30cffe0c910c /etc | |
parent | 656132ebd3ac2359182c1bf8822253c60bbdb153 (diff) |
Description of the tags file format.
Diffstat (limited to 'etc')
-rw-r--r-- | etc/ETAGS.EBNF | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/etc/ETAGS.EBNF b/etc/ETAGS.EBNF new file mode 100644 index 0000000000..c9d053c176 --- /dev/null +++ b/etc/ETAGS.EBNF @@ -0,0 +1,46 @@ +EBNF (Extended Backus Normal Form) description of the format of the tags +file created by etags.c and interpreted by etags.el +Francesco Potorti` <[email protected]> 2002 +================================================================ + +FF ::= #x0c /* form feed */ + +LF ::= #x0a /* line feed */ + +PATTERM ::= #x80 /* pattern terminator */ + +NAMTERM ::= #x01 /* name terminator */ + +regchar ::= [^#x0a#x0c#x80] /* 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 ::= PATTERM "(" regstring ")" + +tag ::= directtag | patterntag + +directtag ::= PATTERM realposition + +patterntag ::= pattern PATTERM [ tagname NAMTERM ] position + +pattern ::= regstring /* a tag pattern */ + +tagname ::= regchar regstring /* a tag name */ + +position ::= realposition | "," + +realposition ::= "," unsint | unsint "," | unsint "," unsint |