aboutsummaryrefslogtreecommitdiff
path: root/doc/argot_stmt_path.5
diff options
context:
space:
mode:
Diffstat (limited to 'doc/argot_stmt_path.5')
-rw-r--r--doc/argot_stmt_path.5121
1 files changed, 121 insertions, 0 deletions
diff --git a/doc/argot_stmt_path.5 b/doc/argot_stmt_path.5
new file mode 100644
index 0000000..bc2cc0a
--- /dev/null
+++ b/doc/argot_stmt_path.5
@@ -0,0 +1,121 @@
+.\" This file is part of argot -*- nroff -*-
+.\" Copyright (C) 2007-2016 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/>.
+.\"
+.TH ARGOT_STMT_PATH 5 "May 4, 2011" "ARGOT" "Grecs User Reference"
+.SH NAME
+Statement pathname \- a unique identifier of a statement in
+\fBargot\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 argot_config (5).
+.SH AUTHORS
+Sergey Poznyakoff
+.SH "BUG REPORTS"
+Report bugs to <gray+argot@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/argot>.
+.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:
+

Return to:

Send suggestions and report system problems to the System administrator.