| www.delorie.com/gnu/docs/a2ps/a2ps_95.html | search |
![]() Buy GNU books! | |
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Sequences admit several declarations too:
sequences ::= sequences are
sequence_1 `,' sequence_2...
end sequences
sequence ::= rule in_face close_opt exceptions_opt
| |
The rules are:
As a first example, here is the correct definition for a C string:
sequences are
"\"" Plain String "\"" Plain
exceptions are
"\\\\", "\\\""
end exceptions
end sequences
|
C-string to mean exactly this, and C-char for
manifest characters defined the C way.
The following example comes from `ssh.ssh', the style sheet for
style sheet files, in which there are two kinds of pseudo-strings: the
strings (`"example"'), and the regular expressions
(`/example/'). We do not want the content of the pseudo-strings in
the face String.
sequences are
# The comments
"#" Comment,
# The name of the style sheet
"style " Keyword_strong (Label + Index1) " is" Keyword_strong,
# Strings are exactly the C-strings, though we don't want to
# have them in the "string" face
"\"" Plain "\""
exceptions are
"\\\\", "\\\""
end exceptions,
# Regexps
"/" Plain "/"
exceptions are
"\\\\", "\\\/"
end exceptions
end sequences
|
The order between sequences does matter. For instance in Java, `/**' introduces strong comments, and `/*' comments. `/**' must be declared before `/*', or it will be hidden.
There are actually some sequences that could have been implemented as
operators with a specific regular expression (that goes up to the
closer). Nevertheless be aware of a big difference: regular expression
are applied to a single line of the source file, hence, they cannot
match on several lines. For instance, the C comments,
/* * a comment */ |
cannot be implemented with operators, though C++ comments can:
// // a comment // |
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
| webmaster donations bookstore | delorie software privacy |
| Copyright © 2003 by The Free Software Foundation | Updated Jun 2003 |