blob: a2b835af748a57eb17057ea2bcafed7ad824c6fe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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 */
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
|