Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ vc(1) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

help(1)

ed(1)



vc(1)                    USER COMMANDS                      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 ``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
                 to  and  including  the  first tab character are
                 ignored for the purpose of detecting  a  control



                                                                1





vc(1)                    USER COMMANDS                      vc(1)



                 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
                 >         greater than



                                                                2





vc(1)                    USER COMMANDS                      vc(1)



                 <         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.




                                                                3



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