newform(1)




NAME

     newform - change the format of a text file


SYNOPSIS

     newform [-s] [-itabspec] [-otabspec] [-bn] [-en] [-pn] [-an]
     [-f] [-cchar] [-ln] [filename...]


DESCRIPTION

     newform reads lines from the named filenames, or  the  stan-
     dard  input  if  no  input file is named, and reproduces the
     lines on the  standard  output.  Lines  are  reformatted  in
     accordance with command line options in effect.

     Except for -s, command line options may appear in any order,
     may  be  repeated, and may be intermingled with the optional
     filenames. Command line options are processed in  the  order
     specified.  This  means  that  option  sequences like ``-e15
     -l60'' will yield  results  different  from  ``-l60  -e15''.
     Options are applied to all filenames on the command line.


OPTIONS

     The following options are supported:

     -s    Shears off leading characters on each line up  to  the
           first tab and places up to 8 of the sheared characters
           at the end of the line. If more than 8 characters (not
           counting  the first tab) are sheared, the eighth char-
           acter is replaced by a * and  any  characters  to  the
           right  of  it  are  discarded. The first tab is always
           discarded.

           An error message and program exit will occur  if  this
           option  is  used on a file without a tab on each line.
           The characters sheared off are saved internally  until
           all  other options specified are applied to that line.
           The characters are then added at the end of  the  pro-
           cessed line.

           For example, to convert a file  with  leading  digits,
           one  or  more  tabs,  and text on each line, to a file
           beginning with the text,  all  tabs  after  the  first
           expanded  to  spaces, padded with spaces out to column
           72 (or truncated to column 72), and the leading digits
           placed starting at column 73, the command would be:

           newform -s -i -l -a -e filename

     -itabspec
           Input  tab  specification:  expands  tabs  to  spaces,
           according  to  the  tab  specifications given. Tabspec
           recognizes all tab specification  forms  described  in
           tabs(1).  In  addition,  tabspec  may  be  -, in which
           newform assumes that the tab specification  is  to  be
           found  in  the first line read from the standard input
           (see  fspec(4)).  If  no  tabspec  is  given,  tabspec
           defaults  to  -8.  A tabspec of -0 expects no tabs; if
           any are found, they are treated as -1.

     -otabspec
           Output tab specification:  replaces  spaces  by  tabs,
           according  to  the  tab  specifications given. The tab
           specifications are the same as for  -itabspec.  If  no
           tabspec is given, tabspec defaults to -8. A tabspec of
           -0 means that no spaces will be converted to  tabs  on
           output.

     -bn   Truncate n characters from the beginning of  the  line
           when  the  line  length  is greater than the effective
           line length (see -ln).  Default  is  to  truncate  the
           number of characters necessary to obtain the effective
           line length. The default value is used when -b with no
           n  is  used.  This  option  can  be used to delete the
           sequence numbers from a COBOL program as follows:

           newform -l1 -b7 filename

     -en   Same as -bn except that characters are truncated  from
           the end of the line.

     -pn   Prefix n characters (see -cchar) to the beginning of a
           line  when  the line length is less than the effective
           line length. Default is to prefix the number of  char-
           acters necessary to obtain the effective line length.

     -an   Same as -pn except characters are appended to the  end
           of a line.

     -f    Write the tab specification format line on  the  stan-
           dard output before any other lines are output. The tab
           specification  format  line  which  is  printed   will
           correspond  to  the  format  specified  in the last -o
           option. If no -o option is specified, the  line  which
           is  printed  will contain the default specification of
           -8.

     -cchar
           Change the prefix/append character  to  char.  Default
           character for char is a space.

     -ln   Set the effective line length to n characters. If n is
           not  entered,  -l  defaults  to  72.  The default line
           length without the -l option is 80  characters.  Note:
           Tabs and backspaces are considered to be one character
           (use -i to expand tabs to spaces).

           The -l1 must be used to set the effective line  length
           shorter than any existing line in the file so that the
           -b option is activated.


OPERANDS

     The following operand is supported:

     filename
           Input file


EXIT STATUS

     The following exit values are returned:

     0     Successful operation.

     1     Operation failed.


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | Availability                | SUNWesu                     |
    |_____________________________|_____________________________|


SEE ALSO

     csplit(1), tabs(1), fspec(4), attributes(5)


DIAGNOSTICS

     All diagnostics are fatal.

     usage:  ...
           newform was called with a bad option.

     "not -s format"
           There was no tab on one line.

     "can't open file"
           Self-explanatory.

     "internal line too long"
           A line exceeds 512 characters after being expanded  in
           the internal work buffer.

     "tabspec in error"
           A  tab  specification  is  incorrectly  formatted,  or
           specified tab stops are not ascending.

     "tabspec indirection illegal"
           A tabspec read from a file (or standard input) may not
           contain  a  tabspec referencing another file (or stan-
           dard input).


NOTES

     newform normally only keeps track  of  physical  characters;
     however,  for the -i and -o options, newform will keep track
     of backspaces in order to line up tabs  in  the  appropriate
     logical columns.

     newform will not prompt the user if a tabspec is to be  read
     from the standard input (by use of -i- or -o-).

     If the -f option is used, and the last -o  option  specified
     was  -o-, and was preceded by either a -o- or a -i-, the tab
     specification format line will be incorrect.


Man(1) output converted with man2html