Google
 

Trailing-Edge - PDP-10 Archives - BB-J939B-BM - documents/pretty.hlp
There are 2 other files named pretty.hlp in the archive. Click here to see a list.


                     Help file for PRETTY (2 Pages)
                        Version No. 6, Sept 1979

PRETTY is a utility program which accepts a BLISS  (-16,  -32,  or  -36)
source  file  and  produces  a reformatted source file (and optionally a
specially formatted listing file),  using  VAX-11  Software  Engineering
Manual  guidelines  for formatting rules.  The output file will have all
whitespace (except in strings, macro definitions, and comments)  removed
and   replaced.    Control   expressions   are   indented  according  to
hierarchical structure.

To invoke PRETTY, type RUN BLI:PRETTY.  It will prompt with  '*'  for  a
file specification line of the form

input.ext [/OUTPUT:name.ext] [/LISTING:name.ext] [/EXIT]

where 'input.ext' is the source file specification (default ext = 'BLI')
and  'list.ext'  is the listing file specification (default ext = 'LST',
name = the input file name).  The output filespec  designates  the  new,
reformatted  source  file.   If  it  is omitted, a new generation of the
input file is created.  (Note:  Production of the listing  file  doubles
the PRETTY run time.)

Formatting options  are  supplied  to  PRETTY  by  means  of  directives
inserted  as full-line comments into the source text.  The comments have
the general form
        !<BLF/directive>        example: !<BLF/remark:9>
where "directive" may be one of the following  (either  lower  or  upper
case may be used):

REQUIRE'file-spec'
        Accesses the specified file for further options of the following
        types.  File-specs are limited to those recognized by EZIO.  The
        specified file must not contain another REQUIRE directive.
PAGE
        Produces a page break (formfeed) after the comment line.
WIDTH:n
        Causes the output file line width to  be  set  to  "n"  columns,
        where 71<n<141 (default is 110).
REMARK:n
        Causes the remark column to be set to 8*n+1, i.e., "n" tabs  are
        issued to place the "!" in the proper column.  The range of n is
        2<n<16 (Default n=6).
NOFORMAT
        Inhibits automatic formatting until a PAGE or  FORMAT  directive
        is encountered.
FORMAT
        Resumes automatic formatting (default).
NOMACRO
        Causes formatting of macro definitions to be inhibited  until  a
        subsequent MACRO directive is found.
MACRO
        Causes macros to be formatted (which may cause error messages to
        be issued) until a subsequent NOMACRO directive is found.
NOERROR
                                                                  Page 2


        Inhibits the insertion of error messages into the  output  files
        (they will appear at the terminal only).
ERROR
        Resumes the insertion of error messages into  the  output  files
        (default).  Error messages are automatically deleted from source
        files on subsequent runs.
LOWERCASE_KEY
        Causes BLISS keywords to appear in lower case.
LOWERCASE_USER
        Causes user names to appear in lower case.
LOWERCASE
        Causes all names and keywords to appear in lower case.
UPPERCASE_KEY
        Causes BLISS keywords to appear in upper case.
UPPERCASE_USER
        Causes user names to appear in upper case.
UPPERCASE
        Causes all names and keywords to appear in upper case.
NOCASE_KEY
        Causes BLISS keywords to be left alone.
NOCASE_USER
        Causes user names to be left alone.
NOCASE
        Causes all names and keywords to be left alone (default).
SYNONYM name = lexeme lexeme lexeme ...
        The SYNONYM directive appearing after a macro definition  causes
        the  macro  name  to be formatted as though the specified lexeme
        sequence had appeared in its place  in  the  source  text.   The
        special  lexeme  "*" indicates where in the sequence the name is
        to be output.  For example,
            !<BLF/SYNONYM ELIF = ELSE IF * >
        permits the sequence
            IF expr THEN expr ELIF expr THEN expr;
        to be formatted without error messages.   (The  name,  ELIF,  is
        output, but it is parsed and indented as though ELSE IF had been
        found there.)


Questions or comments concerning PRETTY should be directed to:
Lynn Yarbrough, x(22)3-2435, ML3-5/E82.  Thank you.