Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ vc(1) — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ed(1)

help(1)



VC(1)                                                                    VC(1)



NAME
     vc - version control

SYNOPSIS
     vc [-a] [-t] [-cchar] [-s] [keyword=value ... keyword=value]

DESCRIPTION
     The vc command copies lines from the standard input to the standard
     output under control of its arguments and 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(1);
     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 \.

     Keyletter Arguments

     -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 one is found, all
                 characters up to and including the tab are discarded.

     -cchar      Specifies a control character to be used in place of :.






                                                                        Page 1





VC(1)                                                                    VC(1)



     -s          Silences warning messages (not error) that are normally
                 printed on the diagnostic output.

     Version Control Statements

     :dcl keyword[, ..., keyword]
          Used to declare keywords.  All keywords must be declared.

     :asg keyword=value
          Used to assign values to keywords.  An asg statement overrides the
          assignment for the corresponding keyword on the vc command line and
          all previous asg's for that keyword.  Keywords declared, but not
          assigned values have null values.
          :if condition
.
.
.
:end
Used to 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 (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
&
|
Page 2


VC(1)                                                                    VC(1)



          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.

     ::text
          Used for keyword replacement 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
          Prints the given message on the diagnostic output.

     :err message
          Prints the given 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
     ed(1), help(1)

DIAGNOSTICS
     Use help(1) for explanations.

EXIT CODES
     0 - normal
     1 - any error


















                                                                        Page 3



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026