Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ vc(1) — DG/UX 4.30

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ed(1)

help(1)



     vc(1)                      DG/UX 4.30                       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.  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 fewer 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.  You can
          include an uninterpreted control character 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,
                              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



     Licensed material--property of copyright holder(s)         Page 1





     vc(1)                      DG/UX 4.30                       vc(1)



                              is found, all characters up to and
                              including the tab are discarded.

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

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

          Version Control Statements

          :dcl keyword[, ..., keyword]
               Declares keywords.  All keywords must be declared.

          :asg keyword=value
               Assigns 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
               Skips 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 only for 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



     Licensed material--property of copyright holder(s)         Page 2





     vc(1)                      DG/UX 4.30                       vc(1)



                  ( )    Used for logical groupings
                  not    May occur only 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
                  &
                  |
               Use parentheses to alter the order of precedence.
               Separate values from operators or parentheses by at
               least one blank or tab.

          ::text
               Replaces 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
               Turns on or off keyword replacement on all lines.

          :ctl char
               Changes 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




     Licensed material--property of copyright holder(s)         Page 3



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