diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2011-05-04 20:10:36 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2011-05-04 21:41:39 +0300 |
commit | a60eb4b18345626a84e23784d77ca231812e1dff (patch) | |
tree | 80192afeadd44b073958c2762491cc7dfea778a1 /doc/grecs_stmt_path.5 | |
parent | b65bfa7564f564f85d3c595c6c1030af2acf5056 (diff) | |
download | grecs-a60eb4b18345626a84e23784d77ca231812e1dff.tar.gz grecs-a60eb4b18345626a84e23784d77ca231812e1dff.tar.bz2 |
Improve docs. Add an option to create installable distribution.
Diffstat (limited to 'doc/grecs_stmt_path.5')
-rw-r--r-- | doc/grecs_stmt_path.5 | 123 |
1 files changed, 123 insertions, 0 deletions
diff --git a/doc/grecs_stmt_path.5 b/doc/grecs_stmt_path.5 new file mode 100644 index 0000000..52941d5 --- /dev/null +++ b/doc/grecs_stmt_path.5 @@ -0,0 +1,123 @@ +.\" This file is part of grecs -*- nroff -*- +.\" Copyright (C) 2007, 2009-2011 Sergey Poznyakoff +.\" +.\" Grecs is free software; you can redistribute it and/or modify +.\" it under the terms of the GNU General Public License as published by +.\" the Free Software Foundation; either version 3, or (at your option) +.\" any later version. +.\" +.\" Grecs is distributed in the hope that it will be useful, +.\" but WITHOUT ANY WARRANTY; without even the implied warranty of +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.\" GNU General Public License for more details. +.\" +.\" You should have received a copy of the GNU General Public License +.\" along with Grecs. If not, see <http://www.gnu.org/licenses/>. +.\" This file is part of SLB. +.\" Copyright (C) 2011 Sergey Poznyakoff +.\" +.TH GRECS_STMT_PATH 5 "May 4, 2011" "GRECS" "Grecs User Reference" +.SH NAME +Statement pathname \- a unique identifier of a statement in +\fBgrecs\fR configuration file. +.SH DESCRIPTION +\fBGrecs\fR configuration files have a distinct hierarchical +structure. Each statement in such a file can therefore be identified +by its name and the names of block statements containing it. Such +names form this statement \fIpathname\fR, similar to that used, +e.g. by UNIX file system. +.PP +For example, consider the following file: +.sp +.nf +.in +2 +foo { + bar { + baz 45; # \fBA\fR. + } + baz 98; # \fBB\fR. +} +.fi +.PP +The full pathname of the statement marked with \fBA\fR can be written +as: +.sp +.nf +.in +2 + .foo.bar.baz +.fi +.PP +Similarly, the statement marked with \fBB\fR has the following +pathname: +.sp +.nf +.in +2 + .foo.baz +.fi +.PP +The default path component separator is dot. A pathname beginning with +a component separator is called an \fIabsolute pathname\fR. Absolute +pathnames uniquely identify corresponding statements. If the leading +dot is omitted, the resulting pathname is called +\fIrelative\fR. Relative pathnames identify statements in relation to +the current point of reference in the configuration file. +.PP +Any other punctuation character can be used as a component separator, +provided that it appears at the beginning of the pathname. In other +words, only absolute pathnames can be written this way. +.PP +A block statement that has a tag is referred to by its name, followed +by an equals sign, followed by the tag value. For example, the +statement \fBA\fR in the file below: +.sp +.nf +.in +2 +program x { + bar { + baz 45; # \fBA\fR. + } +} +.fi +.PP +is identified by the following pathname: +.sp +.nf +.in +2 + .program=x.bar.baz +.fi +.PP +The tag can optionally be enclosed in a pair of double quotes. Such a +quoting becomes mandatory for tags that contain white space or path +component separator, e.g.: +.sp +.nf +.in +2 + .program=\(dqa.out\(dq.bar.baz +.fi +.SH "SEE ALSO" +.BR grecs_config (5). +.SH AUTHORS +Sergey Poznyakoff +.SH "BUG REPORTS" +Report bugs to <gray+grecs@gnu.org.ua>. +.SH COLOPHON +The \fBGrecs\fR library is constantly changing, so this manual page +may be incorrect or out-of-date. For the latest copy of \fBGrecs\fR +documentation, visit <http://www.gnu.org.ua/software/grecs>. +.SH COPYRIGHT +Copyright \(co 2011 Sergey Poznyakoff +.br +.na +License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> +.br +.ad +This is free software: you are free to change and redistribute it. +There is NO WARRANTY, to the extent permitted by law. +.\" Local variables: +.\" eval: (add-hook 'write-file-hooks 'time-stamp) +.\" time-stamp-start: ".TH [A-Z_][A-Z0-9_]* [0-9] \"" +.\" time-stamp-format: "%:B %:d, %:y" +.\" time-stamp-end: "\"" +.\" time-stamp-line-limit: 20 +.\" end: + |