VC(1-SVR4) RISC/os Reference Manual VC(1-SVR4)
NAME
vc - version control
SYNOPSIS
vc [-a] [-t] [-cchar] [-s] [keyword=value ... keyword=value]
DESCRIPTION
This command is obsolete and will be removed in the next
release.
The vc command copies lines from the standard input to the
standard output under control of its arguments and of ``con-
trol statements'' encountered in the standard input. In the
process of performing the copy operation, user-declared key-
words may be replaced by their string value when they appear
in plain text and/or control statements.
The copying of lines from the standard input to the standard
output is conditional, based on tests (in control state-
ments) of keyword values specified in control statements or
as vc command arguments.
A control statement is a single line beginning with a con-
trol character, except as modified by the -t keyletter (see
below). The default control character is colon (:), except
as modified by the -c keyletter (see below). Input lines
beginning with a backslash (\) followed by a control charac-
ter are not control lines and are copied to the standard
output with the backslash removed. Lines beginning with a
backslash followed by a non-control character are copied in
their entirety.
A keyword is composed of 9 or less alphanumerics; the first
must be alphabetic. A value is any ASCII string that can be
created with ed; a numeric value is an unsigned string of
digits. Keyword values may not contain blanks or tabs.
Replacement of keywords by values is done whenever a keyword
surrounded by control characters is encountered on a version
control statement. The -a keyletter (see below) forces
replacement of keywords in all lines of text. An uninter-
preted control character may be included in a value by
preceding it with \. If a literal \ is desired, then it too
must be preceded by \.
The following options are valid:
-a Forces replacement of keywords surrounded by
control characters with their assigned value in
all text lines and not just in vc statements.
-t All characters from the beginning of a line up
Printed 11/19/92 Page 1
VC(1-SVR4) RISC/os Reference Manual VC(1-SVR4)
to and including the first tab character are
ignored for the purpose of detecting a control
statement. If a control statement is found, all
characters up to and including the tab are dis-
carded.
-cchar Specifies a control character to be used in
place of the ``:'' default.
-s Silences warning messages (not error) that are
normally printed on the diagnostic output.
vc recognizes the following version control statements:
:dcl keyword[, ..., keyword]
Declare keywords. All keywords must be declared.
:asg keyword=value
Assign values to keywords. An asg statement overrides
the assignment for the corresponding keyword on the vc
command line and all previous asg statements for that
keyword. Keywords that are declared but are not
assigned values have null values.
:if condition
...
:end Skip lines of the standard input. If the condition is
true, all lines between the if statement and the match-
ing end statement are copied to the standard output.
If the condition is false, all intervening lines are
discarded, including control statements. Note that
intervening if statements and matching end statements
are recognized solely for the purpose of maintaining
the proper if-end matching.
The syntax of a condition is:
<cond> ::= [ ``not'' ] <or>
<or> ::= <and> | <and> ``|'' <or>
<and> ::= <exp> | <exp> ``&'' <and>
<exp> ::= ``('' <or> ``)'' | <value> <op>
<value>
<op> ::= ``='' | ``!='' | ``<'' | ``>''
<value> ::= <arbitrary ASCII string> |
<numeric string>
The available operators and their meanings are:
= equal
!= not equal
& and
| or
Page 2 Printed 11/19/92
VC(1-SVR4) RISC/os Reference Manual VC(1-SVR4)
> greater than
< less than
( ) used for logical groupings
not may only occur immediately after the
if, and when present, inverts the
value of the entire condition
The > and < operate only on unsigned integer values
(e.g., : 012 > 12 is false). All other operators take
strings as arguments (e.g., : 012 != 12 is true).
The precedence of the operators (from highest to
lowest) is:
= != > < all of equal precedence
&
|
Parentheses may be used to alter the order of pre-
cedence.
Values must be separated from operators or parentheses
by at least one blank or tab.
::text
Replace keywords on lines that are copied to the stan-
dard output. The two leading control characters are
removed, and keywords surrounded by control characters
in text are replaced by their value before the line is
copied to the output file. This action is independent
of the -a keyletter.
:on
:off Turn on or off keyword replacement on all lines.
:ctl char
Change the control character to char.
:msg message
Print message on the diagnostic output.
:err message
Print message followed by:
ERROR: err statement on line ... (915)
on the diagnostic output. vc halts execution, and
returns an exit code of 1.
SEE ALSO
help(1).
ed(1) in the User's Reference Manual.
Printed 11/19/92 Page 3