CSS Unitec Home Page
      

Underline Utility

 ulp(U)

Synopsis   Platforms   Description   Options   Notes   Examples   See also

Synopsis

ulp [-f] [-u] [-1] [file...]

Platforms

Unix, Windows NT

Description  

The ulp is intended to insert CSS underline on/off escape sequences into text files generated by some old fashion text formatters and viewers. It processes the named files on the command line. If no names are specified, the standard input is assumed. The standard input may be specified along with named files on the command line using the file name '-'. Each underscore character '_' causes ulp to toggle underline on and off (initially off) and generates the CSS control Esc,13 (start underline) and Esc,14 (stop underline) respectively. Further more, ulp converts the nroff(1) controls 'reverse linefeeds' (Esc,'7'), 'reverse-' and 'forward half linefeeds' (Esc,'8' and Esc,'9') into standard CSS controls Esc,15 and Esc,17.

If the printer model in use is not capable to underline in one single print cycle (e.g. Infoscribe 1000), the u-option will instruct ulp to generate to lines to achieve the desired result.

Since some printer models do not process the backspace characters and thus prevent overstriking, ulp generates multiple output lines for each input line containing backspaces.

Some printer models allow so called emphasized printing but do not provide controls as e.g. 'correspondence quality' (e.g. Siemens PT 88/PT 89). On these printers emphasized printing has to be achieved through multiple print cycles. Ulp lets you specify the number of print cycles to generate for each line as an option.

Options

-f

Suppress conversion of 'reverse-' and 'half linefeeds'.

-u Underlined text shall be printed in two cycles (sequence: text - cr - underscores).
-1 Each line is printed n times to achieve emphasized printing (default 1).

Notes

Ulp is capable to process lines of up to 800 characters.

Ulp options may be also defined in the file $HOME/.ulprc as well as in the shell environment variable ULPOPT. The evaluation order is described in the section 'Syntax of Command Lines' page 1-7.

To protect your terminal from unwanted escape sequences, ulp will not write its output on the TTY. This can however be forced by the pipe ulp | cat.

Ulp is not suited for printers that generate an automatic linefeed with each cr character received.

To prevent misalignments, ulp counts all half linefeeds and tries to compensate unbalanced movements at the end of the document. This may under rare circumstances generate an additional empty page.

If the target printer is not capable to perform reverse half linefeeds, nroff(1) output should be filtered through col(1) before a call to ulp. Since CSS itself does not keep track of half line movements, no compensation will be done in these cases.

Examples

nroff -man file | ulp | lpr

nroff -ms file | ulp -u -2 | lpr -d 2

See also

col(1), css.devices(C), nroff(1), ul(1)

 

Back to top