# asa

## PROLOG



           This manual page is part of the POSIX Programmer's Manual.  The
           Linux implementation of this interface may differ (consult the
           corresponding Linux manual page for details of Linux behavior), or
           the interface may not be implemented on Linux.
    


## NAME



           asa — interpret carriage-control characters
    


## SYNOPSIS



           asa **[**_file_...**]**
    


## DESCRIPTION



           The _asa_ utility shall write its input files to standard output,
           mapping carriage-control characters from the text files to line-
           printer control sequences in an implementation-defined manner.
    
           The first character of every line shall be removed from the input,
           and the following actions are performed.
    
           If the character removed is:
    
           <space>   The rest of the line is output without change.
    
           0         A <newline> is output, then the rest of the input line.
    
           1         One or more implementation-defined characters that
                     causes an advance to the next page shall be output,
                     followed by the rest of the input line.
    
           +         The <newline> of the previous line shall be replaced
                     with one or more implementation-defined characters that
                     causes printing to return to column position 1, followed
                     by the rest of the input line. If the **'+'** is the first
                     character in the input, it shall be equivalent to
                     <space>.
    
           The action of the _asa_ utility is unspecified upon encountering any
           character other than those listed above as the first character in
           a line.
    


## OPTIONS



           None.
    


## OPERANDS



           _file_      A pathname of a text file used for input. If no _file_
                     operands are specified, the standard input shall be
                     used.
    


## STDIN



           The standard input shall be used if no _file_ operands are
           specified, and shall be used if a _file_ operand is **'-'** and the
           implementation treats the **'-'** as meaning standard input.
           Otherwise, the standard input shall not be used.  See the INPUT
           FILES section.
    


## INPUT FILES



           The input files shall be text files.
    


## ENVIRONMENT VARIABLES



           The following environment variables shall affect the execution of
           _asa_ :
    
           _LANG_      Provide a default value for the internationalization
                     variables that are unset or null. (See the Base
                     Definitions volume of POSIX.1‐2017, _Section 8.2_ ,
                     _Internationalization Variables_ for the precedence of
                     internationalization variables used to determine the
                     values of locale categories.)
    
           _LC_ALL_    If set to a non-empty string value, override the values
                     of all the other internationalization variables.
    
           _LC_CTYPE_  Determine the locale for the interpretation of sequences
                     of bytes of text data as characters (for example,
                     single-byte as opposed to multi-byte characters in
                     arguments and input files).
    
           _LC_MESSAGES_
                     Determine the locale that should be used to affect the
                     format and contents of diagnostic messages written to
                     standard error.
    
           _NLSPATH_   Determine the location of message catalogs for the
                     processing of _LC_MESSAGES_.
    


## ASYNCHRONOUS EVENTS



           Default.
    


## STDOUT



           The standard output shall be the text from the input file modified
           as described in the DESCRIPTION section.
    


## STDERR



           None.
    


## OUTPUT FILES



           None.
    


## EXTENDED DESCRIPTION



           None.
    


## EXIT STATUS



           The following exit values shall be returned:
    
            0    All input files were output successfully.
    
           >0    An error occurred.
    


## CONSEQUENCES OF ERRORS



           Default.
    
           _The following sections are informative._
    


## APPLICATION USAGE



           None.
    


## EXAMPLES



            1. The following command:
    
                   asa _file_
    
               permits the viewing of _file_ (created by a program using
               FORTRAN-style carriage-control characters) on a terminal.
    
            2. The following command:
    
                   a.out | asa | lp
    
               formats the FORTRAN output of **a.out** and directs it to the
               printer.
    


## RATIONALE



           The _asa_ utility is needed to map ``standard'' FORTRAN 77 output
           into a form acceptable to contemporary printers. Usually, _asa_ is
           used to pipe data to the _lp_ utility; see _lp_.
    
           This utility is generally used only by FORTRAN programs. The
           standard developers decided to retain _asa_ to avoid breaking the
           historical large base of FORTRAN applications that put carriage-
           control characters in their output files. There is no requirement
           that a system have a FORTRAN compiler in order to run applications
           that need _asa_.
    
           Historical implementations have used an ASCII <form-feed> in
           response to a 1 and an ASCII <carriage-return> in response to a
           **'+'**.  It is suggested that implementations treat characters other
           than 0, 1, and **'+'** as <space> in the absence of any compelling
           reason to do otherwise. However, the action is listed here as
           ``unspecified'', permitting an implementation to provide
           extensions to access fast multiple-line slewing and channel
           seeking in a non-portable manner.
    


## FUTURE DIRECTIONS



           None.
    


* * *