vc(1) UNIX System V(Source Code Control System Utilities) vc(1)
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 ``control statements''
encountered in the standard input. In the process of performing the copy
operation, user-declared keywords 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 statements) of keyword values
specified in control statements or as vc command arguments.
A control statement is a single line beginning with a control 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
character 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 uninterpreted 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 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
discarded.
10/89 Page 1
vc(1) UNIX System V(Source Code Control System Utilities) vc(1)
-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 matching 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
> 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 (for example, :
012 > 12 is false). All other operators take strings as arguments
(for example, : 012 != 12 is true).
Page 2 10/89
vc(1) UNIX System V(Source Code Control System Utilities) vc(1)
The precedence of the operators (from highest to lowest) is:
= != > < all of equal precedence
&
|
Parentheses may be used to alter the order of precedence.
Values must be separated from operators or parentheses by at least
one blank or tab.
10/89 Page 3
vc(1) UNIX System V(Source Code Control System Utilities) vc(1)
::text
Replace keywords on lines that are copied to the standard 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
Page 4 10/89