Manual Pages for UNIX Darwin command on man enscript
MyWebUniversity

Manual Pages for UNIX Darwin command on man enscript

ENSCRIPT(1) ENSCRIPT ENSCRIPT(1)

NAME

enscript - convert text files to PostScript, HTML, RTF, ANSI, and over-

strikes

SYNOPSIS

eennssccrriipptt [-112233445566778899BBccggGGhhjjkkKKllmmOOqqrrRRvvVVzzZZ] [-## copies] [-aa pages] [-AA

align] [-bb header] [-CC[startline]] [-dd printer] [-DD key[::value]]

[-ee[char]] [-EE[lang]] [-ff font] [-FF headerfont] [-HH[num]] [-ii indent]

[-II filter] [-JJ title] [-LL linesperpage] [-MM media] [-nn copies] [-NN

newline] [-oo outputfile] [-oo -] [-pp outputfile] [-pp -] [-PP printer] [-ss

baselineskip] [-SS key[::value]] [-tt title] [-TT tabsize] [-uu[text]] [-UU

num] [-WW language] [-XX encoding] [filename ...]

DESCRIPTION

EEnnssccrriipptt converts text files to PostScript or to other output lan-

guages. EEnnssccrriipptt can spool the generated output directly to a speci-

fied printer or leave it to a file. If no input files are given, eennssccrriipptt processes the standard input ssttddiinn. EEnnssccrriipptt can be extended to handle different output media and it has many options which can be used to customize the printouts. OOPPTTIIOONNSS

-## num Print num copies of each page.

-11,, -22,, -33,, -44,, -55,, -66,, -77,, -88,, -99,, --ccoolluummnnss==num

Specify how many columns each page have. With the long option

--ccoolluummnnss==num you can specify more than 9 columns per page.

-aa pages,, --ppaaggeess==pages

Specify which pages are printed. The page specification pages can be given in the following formats:

begin-end

print pages from begin to end

-end print pages from 0 to end

begin- print pages from begin to end

page print page page odd print odd pages even print even pages

-AA align,, --ffiillee-aalliiggnn==align

Align separate input files to even align page count. This

option is useful in two-side and 2-up printings

(-file-align=2).

-bb header,, --hheeaaddeerr==header

Use the text header as a page header. The default page header

is constructed from the name of the file and from its last mod-

ification time. The header string header can contain the same formatting

escapes which can be specified for the %%FFoorrmmaatt directives in

the user defined fancy headers. For example, the following option prints the file name, current data and page numbers:

eennssccrriipptt --hheeaaddeerr==''$$nn %%WW PPaaggee $$%% ooff $$=='' **..cc

The header string can also contain left, center and right jus-

tified fields. The fields are separated by the ''||'' character:

eennssccrriipptt --hheeaaddeerr==''$$nn||%%WW||PPaaggee $$%% ooff $$=='' **..cc

now the file name is printed left justified, the date is cen-

tered to the header and the page numbers are printed right jus-

tified.

-BB,, --nnoo-hheeaaddeerr

Do not print page headers.

-cc,, --ttrruunnccaattee-lliinneess

Cut lines that are too long for the page. As a default, eennssccrriipptt wraps long lines to the next line so no information is lost.

You can also use the --sslliiccee option which slices long lines to

separate pages.

-CC[startline],, --lliinnee-nnuummbbeerrss[==startline]

Precede each line with its line number. The optional argument startline specifies the number of the first line in the input. The number of the first line defaults to 1.

-dd name Spool output to the printer name.

-DD key[::value],, --sseettppaaggeeddeevviiccee==key[::value]

Pass a page device definition to the generated PostScript out-

put. If no value is given, the key key is removed from the definitions. For example, the command

eennssccrriipptt -DDDDuupplleexx::ttrruuee ffoooo..ttxxtt

prints file foo.txt in duplex (two side) mode. Page device operators are implementation dependent but they are standardized. See section PPAAGGEE DDEEVVIICCEE OOPPTTIIOONNSS for the details.

-ee[char],, --eessccaappeess[==char]

Enable special escapes interpretation (see section SSPPEECCIIAALL EESSCCAAPPEESS). If the argument char is given, it changes the escape character to char. The default escape character is 0.

-EE[lang],, --hhiigghhlliigghhtt[==lang]

Highlight source code by creating a special input filter with the ssttaatteess program. The optional argument lang specifies the

language to highlight. As a default the ssttaatteess makes an edu-

cated guess. You can print a short description of the supported highlighting languages and file formats with the command:

eennssccrriipptt --hheellpp-hhiigghhlliigghhtt

The highlighting rules are defined in the

`/usr/share/enscript/st/*.st' files which can be edited to cre-

ate highlighting definitions for new languages. NNoottee!! You can not use your own input filters with this option.

-ff name,, --ffoonntt==name

Select a font that is used for the body text. The default body font is CCoouurriieerr1100, unless multicolumn landscape printing mode is selected, in which case the default font is CCoouurriieerr77. The font specification name contains two parts: the name of the font and its size in PostScript points. For example,

"TTiimmeess-RRoommaann1122" selects the "Times-Roman" font with size 12pt.

The font specification name can also be given in format `name@ptsize', where the name of the font and its point size are separated by a `@' character. This allows eennssccrriipptt to use fonts which contain digit characters in their names. The font point size can also be given in the format width/height where the width and the height specify the size of

the font in x- and y-directions. For example,

"TTiimmeess-RRoommaann@@1100//1122" selects a 10 points wide and 12 points high

"Times-Roman" font.

You can also give the font sizes as decimal numbers. For exam-

ple, "TTiimmeess-RRoommaann1100..22" selects a 10.2pt "Times-Roman" font.

-FF name,, --hheeaaddeerr-ffoonntt==name

Select a font for the header texts.

-gg,, --pprriinntt-aannyywwaayy

Print a file even if it contains binary data. The option is implemented only for compatibility purposes. EEnnssccrriipptt prints binary files anyway regardless of the option.

-GG,, --ffaannccyy-hheeaaddeerr[==name]

Print a fancy page header name to the top of each page. The

option -GG specifies the default fancy header. See section CCOONN-

FIGURATION FILES o e hw h dfut ac hae cn e changed.

-hh,, --nnoo-jjoobb-hheeaaddeerr

Suppress printing of the job header page.

-HH[num],, --hhiigghhlliigghhtt-bbaarrss[==num]

Specify how high the highlight bars are in lines. If the num is not given, the default value 2 is used. As a default, no highlight bars are printed.

-ii num,, --iinnddeenntt==num

Indent every line num characters. The indentation can also be specified in other units by appending an unit specifier after the number. The possible unit specifiers and the corresponding units are: cc centimeters ii inches ll characters (default) pp PostScript points

-II filter,, --ffiilltteerr==filter

Read all input files through an input filter filter. The input

filter can be a single command or a command pipeline. The fil-

ter can refer to the name of the input file with the escape

`%%ss'. The name of the standard input can be changed with the

option `--ffiilltteerr-ssttddiinn'.

For example, the following command prints the file `foo.c' by

using only upper-case characters:

eennssccrriipptt --ffiilltteerr==""ccaatt %%ss || ttrr ''aa-zz'' ''AA-ZZ''"" ffoooo..cc

The following command highlights changes which are made to files since the last checkout:

eennssccrriipptt --ffiilltteerr==""rrccssddiiffff %%ss || ddiiffffpppp %%ss"" -ee **..cc

To include the string "%s" to the filter command, you must

write it as "%%s".

-jj,, --bboorrddeerrss

Print borders around columns.

-JJ title

An alias for the option -tt, --ttiittllee.

-kk,, --ppaaggee-pprreeffeeeedd

Enable page prefeed.

-KK,, --nnoo-ppaaggee-pprreeffeeeedd

Disable page prefeed (default).

-ll,, --lliinneepprriinntteerr

Emulate lineprinter. This option is a shortcut for the options

--lliinneess-ppeerr-ppaaggee==6666, and --nnoo-hheeaaddeerr.

-LL num,, --lliinneess-ppeerr-ppaaggee==num

Print only num lines for each page. As a default, the number of lines per page is computed from the height of the page and from the size of the font.

-mm,, --mmaaiill

Send a mail notification to user after the print job has been completed.

-MM name,, --mmeeddiiaa==name

Select an output media name. EEnnssccrriipptt's default output media is LLeetttteerr.

-nn num,, --ccooppiieess==num

Print num copies of each page.

-NN nl,, --nneewwlliinnee==nl

Select the newline character. The possible values for nl are: nn (unix newline, 0xa hex) and rr (mac newline, 0xd hex).

-oo file An alias for the option -pp, --oouuttppuutt.

-OO,, --mmiissssiinngg-cchhaarraacctteerrss

Print a listing of character codes which couldn't be printed.

-pp file,, --oouuttppuutt==file

Leave the output to file file. If the file is `-', enscript

sends the output to the standard output ssttddoouutt.

-PP name,, --pprriinntteerr==name

Spool the output to the printer name.

-qq,, --qquuiieett,, --ssiilleenntt

Make eennssccrriipptt really quiet. Only fatal error messages are printed to stderr.

-rr,, --llaannddssccaappee

Print in the landscape mode; rotate page 90 degrees.

-RR,, --ppoorrttrraaiitt

Print in the portrait mode (default).

-ss num,, --bbaasseelliinneesskkiipp==num

Specify the baseline skip in PostScript points. The number num can be given as a decimal number. When eennssccrriipptt moves from line to line, the current point y coordinate is moved (font point size + baselineskip) points down. The default baseline skip is 1.

-SS key[::value],, --ssttaattuussddiicctt==key[::value]

Pass a statusdict definition to the generated PostScript out-

put. If no value is given, the key key is removed from the definitions. The statusdict operators are implementation dependent; see the printer's documentation for the details. For example, the command

eennssccrriipptt -SSsseettppaappeerrttrraayy::11 ffoooo..ttxxtt

prints the file foo.txt by using paper from the paper tray 1 (assuming that the printer supports paper tray selection).

-tt title,, --ttiittllee==title

Set banner page's job title to title. The option sets also the name of the input file ssttddiinn.

-TT num,, --ttaabbssiizzee==num

Set the tabulator size to num characters. The default is 8.

-uu[text],, --uunnddeerrllaayy[==text]

Print the string text under every page. The properties of the

text can be changed with the options --uull-aannggllee, --uull-ffoonntt,

--uull-ggrraayy, --uull-ppoossiittiioonn, and --uull-ssttyyllee.

If no text is given, the underlay is not printed. This can be used to remove an underlay text that was specified with the `UUnnddeerrllaayy' configuration file option.

-UU num,, --nnuupp==num

Print num logical pages on each output page (N-up printing).

The values num must be a power of 2.

-vv,, --vveerrbboossee[==level]

Tell what eennssccrriipptt is doing.

-VV,, --vveerrssiioonn

Print eennssccrriipptt version information and exit.

-WW [lang],, --llaanngguuaaggee[==lang]

Generate output for the language lang. The possible values for lang are: PPoossttSSccrriipptt generate PostScript (default) hhttmmll generate HTML oovveerrssttrriikkee generate overstrikes (line printers, less) rrttff generate RTF (Rich Text Format) aannssii generate ANSI terminal control codes

-XX name,, --eennccooddiinngg==name

Use the input encoding name. Currently eennssccrriipptt supports the following encodings: 8888559911,, llaattiinn11

ISO-8859-1 (ISO Latin1) (eennssccrriipptt's default encoding).

8888559922,, llaattiinn22

ISO-8859-2 (ISO Latin2)

8888559933,, llaattiinn33

ISO-8859-3 (ISO Latin3)

8888559944,, llaattiinn44

ISO-8859-4 (ISO Latin4)

8888559955,, ccyyrriilllliicc

ISO-8859-5 (ISO Cyrillic)

8888559977,, ggrreeeekk

ISO-8859-7 (ISO Greek)

8888559999,, llaattiinn55

ISO-8859-9 (ISO Latin5)

888855991100,, llaattiinn66

ISO-8859-10 (ISO Latin6)

aasscciiii 7-bit ascii

aasscciiiiffiissee,, aasscciiiiffii,, aasscciiiissee

7-bit ascii with some scandinavian (Finland, Sweden)

extensions aasscciiiiddkknnoo,, aasscciiiiddkk,, aasscciiiinnoo

7-bit ascii with some scandinavian (Denmark, Norway)

extensions iibbmmppcc,, ppcc,, ddooss IBM PC charset mmaacc Mac charset vvmmss VMS multinational charset

hhpp88 HP Roman-8 charset

kkooii88 Adobe Standard Cyrillic Font KOI8 charset ppss,, PPSS PostScript font's default encoding ppssllaattiinn11,, IISSOOLLaattiinn11EEnnccooddiinngg PostScript interpreter's `ISOLatin1Encoding'

-zz,, --nnoo-ffoorrmmffeeeedd

Turn off the form feed character interpretation.

-ZZ,, --ppaassss-tthhrroouugghh

Pass through all PostScript and PCL files without any modifica-

tions. This allows that eennssccrriipptt can be used as a lp filter.

The PostScript files are recognized by looking up the `%!'

magic cookie from the beginning of the file. NNoottee!! EEnnssccrriipptt

recognized also the Windoze damaged `^D%!' cookie.

The PCL files are recognized by looking up the `^[E' or `^[%'

magic cookies from the beginning of the file.

--ccoolloorr[==bool]

Use colors in the highlighting outputs.

--ddoowwnnllooaadd-ffoonntt==fontname

Include the font description file (.pfa or .pfb file) of the font fontname to the generated output.

--eexxtteennddeedd-rreettuurrnn-vvaalluueess

Enable extended return values. As a default, eennssccrriipptt returns 1 on error and 0 otherwise. The extended return values give more details about the printing operation. See the section RREETTUURRNN VVAALLUUEE for the details.

--ffiilltteerr-ssttddiinn==name

Specify how the ssttddiinn is shown to the input filter. The default value is an empty string ("") but some programs require

that the ssttddiinn is called something else, usually "-".

--ffooootteerr==footer

Use the text footer as a page footer. Otherwise the option

works like the --hheeaaddeerr option

--hh-ccoolluummnn-hheeiigghhtt==height

Set the horizontal column height to be height PostScript

points. The option sets the formfeed type to hhoorriizzoonnttaall-ccooll-

uummnnss.

--hheellpp Print a short help message and exit.

--hheellpp-hhiigghhlliigghhtt

Describe all supported --hhiigghhlliigghhtt languages and file formats.

--hhiigghhlliigghhtt-bbaarr-ggrraayy==gray

Specify the gray level which is used in printing the highlight bars.

--lliisstt-mmeeddiiaa

List the names of all known output media and exit successfully.

--mmaarrggiinnss==left::right::top::bottom

Adjust the page marginals to be exactly left, right, top and bottom PostScript points. Any of the arguments can be left empty in which case the default value is used.

--mmaarrkk-wwrraappppeedd-lliinneess[==style]

Mark wrapped lines in the output with the style style. The possible values for the style are: nnoonnee do not mark them (default) pplluuss print a plus (+) character to the end of each wrapped line bbooxx print a black box to the end of each wrapped line aarrrrooww print a small arrow to the end of each wrapped line

--nnoonn-pprriinnttaabbllee-ffoorrmmaatt==format

Specify how the non-printable characters are printed. The pos-

sible values for the format are: ccaarreett caret notation: `^@', `^A', `^B', ... ooccttaall octal notation: `\000', `\001', `\002', ... (default) qquueessttiioonnmmaarrkk

replace non-printable characters with a question mark

`?'

ssppaaccee replace non-printable characters with a space ` '

--nnuupp-ccoolluummnnwwiissee

Change the layout of the sub-pages in the N-up printing from

row-wise to columnwise.

--nnuupp-xxppaadd==num

Set the page x-padding of the n-up printing to num PostScript

points. The default is 10 points.

--nnuupp-yyppaadd==num

Set the page y-padding of the n-up printing to num PostScript

points. The default is 10 points.

--ppaaggee-llaabbeell-ffoorrmmaatt==format

Set the page label format to format. The page label format

specifies how the labels for the `%%Page:' PostScript comments

are formatted. The possible values are:

sshhoorrtt Print the current pagenumber: `%%Page: (1) 1' (default)

lloonngg Print the current filename and pagenumber: `%%Page:

(main.c: 1) 1'

--ppss-lleevveell==level

Set the PostScript language level that eennssccrriipptt uses for its output to level. The possible values are 11, and 22.

--pprriinntteerr-ooppttiioonnss==options

Pass extra options to the printer command.

--rroottaattee-eevveenn-ppaaggeess

Rotate each even-numbered page 180 degrees.

--sslliiccee==num

Print the vertical slice num. The slices are vertical regions of input files. A new slice starts from the point where the line would otherwise be wrapped to the next line. The slice numbers start from 1.

--ssttyyllee==style

Set the highlighting style to style. The possible values are:

aa22ppss, eemmaaccss, eemmaaccss-vveerrbboossee, iiffhh, and mmssvvcc.

--sswwaapp-eevveenn-ppaaggee-mmaarrggiinnss

Swap left and right page margins for even-numbered pages.

--ttoocc Print a table of contents to the end of the output.

--wwoorrdd-wwrraapp

Wrap long lines from word boundaries.

--uull-aannggllee==angle

Set the angle of the underlay text to angle. As a default, the

angle is aattaann((-ddppaaggeehh,, ddppaaggeeww)).

--uull-ffoonntt==name

Select a font for the underlay text. The default underlay font

is TTiimmeess-RRoommaann220000.

--uull-ggrraayy==num

Print the underlay text with the gray value num (0 ... 1), the default gray value is .8.

--uull-ppoossiittiioonn==positionspec

Set the underlay text's starting position according to the positionspec. The position specification must be given in format: `sign xpos sign ypos', where the sign must be `+' or

`-'. The positive dimensions are measured from the lower left

corner and the negative dimensions from the upper right corner.

For example, the specification `+0-0' specifies the upper left

corner and `-0+0' specifies the lower right corner.

--uull-ssttyyllee==style

Set the underlay text's style to style. The possible values for style are: oouuttlliinnee print outline underlay texts (default) ffiilllleedd print filled underlay texts CONFIGURATION FILES EEnnssccrriipptt reads configuration information from the following sources (in this order): command line options, environment variable EENNSSCCRRIIPPTT,

user's personal configuration file ($$HHOOMMEE//..eennssccrriippttrrcc), site configura-

tion file (//uussrr//sshhaarree//eennssccrriipptt//eennssccrriippttssiittee..ccffgg) and system's global configuration file (//uussrr//sshhaarree//eennssccrriipptt//eennssccrriipptt..ccffgg). The configuration files have the following format:

Empty lines and lines starting with `#' are comments.

All other lines are option lines and have format: option [arguments ...]. The following options can be specified: AAcccceeppttCCoommppoossiitteeCChhaarraacctteerrss:: bool Specify whether PostScript font's composite characters are

accepted as printable or if they should be considered as non-

existent. The default value is false (0). AAFFMMPPaatthh:: path Specifies the search path for the AFM files. AAppppeennddCCttrrllDD:: bool

Specify if the Control-D (^D) character should be appended to

the end of the output. The default value is false (0). CClleeaann77BBiitt:: bool

Specify how characters greater than 127 are printed. The val-

uee true (1) generates 7-bit clean code by escaping all charac-

ters greater than 127 to the backslash-octal notation

(default). The value false (0) generates 8-bit PostScript code

leaving all characters untouched. DDeeffaauullttEEnnccooddiinngg:: name Select the default input encoding. The encoding name name can

be one of the values of the option -XX, --eennccooddiinngg.

DDeeffaauullttFFaannccyyHHeeaaddeerr:: name Select the default fancy header. The default header is used

when the option -GG is specified or the option --ffaannccyy-hheeaaddeerr is

given without an argument. The system-wide default is

`eennssccrriipptt'. DDeeffaauullttMMeeddiiaa:: name Select the default output media. DefaultOutputMethod: ehd Select the default target to which the generated output is sent. The possible values for the method are: pprriinntteerr send output to printer (default) ssttddoouutt send output to ssttddoouutt DDoowwnnllooaaddFFoonntt:: fontname Include the font description file of the font fontname to the generated output. EEssccaappeeCChhaarr:: num Specify the escape character for the special escapes. The default value is 0. FFoorrmmFFeeeeddTTyyppee:: type Specify what to do when a formfeed character is encountered from the input. The possible values for type are: ccoolluummnn move to the beginning of the next column (default) ppaaggee move to the beginning of the next page GGeenneerraatteePPaaggeeSSiizzee:: bool Specify whether the PPaaggeeSSiizzee page device setting is generated to the PostScript output. The default value is true (1). HHiigghhlliigghhttBBaarrGGrraayy:: gray Specify the gray level which is used to print the highlight bars. HHiigghhlliigghhttBBaarrss:: num Specify how high the highlight bars are in lines. The default value is 0 which means that no highlight bars are printed. LLiibbrraarryyPPaatthh:: path Specifies the eennssccrriipptt's library path that is used to lookup various resources. The default path is:

`/usr/share/enscript:home/.enscript'. Where the home is the

user's home directory. MMaarrkkWWrraappppeeddLLiinneess:: style Mark wrapped lines in the output with the style style. The possible values for the format are the same which can be given

for the --mmaarrkk-wwrraappppeedd-lliinneess option.

MMeeddiiaa:: name width height llx lly urx ury

Add a new output media with the name name. The physical dimen-

sions of the media are width and height. The bounding box of the Media is specified by the points (llx, lly) and (urx, ury). EEnnssccrriipptt prints all graphics inside the bounding box of the media.

User can select this media with option -MM name.

NNooJJoobbHHeeaaddeerrSSwwiittcchh:: switch Specify the spooler option to suppress the print job header page. This option is passed to the printer spooler when the

eennssccrriipptt's option -hh, --nnoo-jjoobb-hheeaaddeerr is selected.

NNoonnPPrriinnttaabblleeFFoorrmmaatt:: format

Specify how the non-printable characters are printed. The pos-

sible values for format are the same which can be given for the

--nnoonn-pprriinnttaabbllee-ffoorrmmaatt option.

OOuuttppuuttFFiirrssttLLiinnee:: line Set the PostScript output's first line to line. The default

value is PPSS-AAddoobbee-33..00. Since some printers do not like DSC

levels greater than 2.0, this option can be used to change the

output first line to something more suitable like %%!!PPSS-

AAddoobbee-22..00 or %%!!.

PPaaggeeLLaabbeellFFoorrmmaatt:: format Set the page label format to format. The possible values for format are the same which can be given for the

--ppaaggee-llaabbeell-ffoorrmmaatt option.

PPaaggeePPrreeffeeeedd:: bool Enable / disable page prefeed. The default value is false (0). PPoossttSSccrriippttLLeevveell:: level Set the PostScript language level, that eennssccrriipptt uses for its output, to level. The possible values for level are the same

which can be given for the --ppss-lleevveell option.

PPrriinntteerr:: name Names the printer to which the output is spooled. QQuueeuueePPaarraamm:: name

The spooler command switch to select the printer queue, e.g. -PP

in llpprr -PPppss. This option can also be used to pass other flags

to the spooler command. These options must be given before the queue switch. SSeettPPaaggeeDDeevviiccee:: key[::value]

Pass a page device definition to the generated PostScript out-

put. SSppoooolleerr:: name Names the printer spooler command. EEnnssccrriipptt pipes generated PostScript to the command name. SSttaatteessBBiinnaarryy:: path Define an absolute path to the ssttaatteess program. SSttaatteessCCoolloorr:: bool Should the ssttaatteess program generate color outputs. SSttaatteessCCoonnffiiggFFiillee:: file Read highlighting states configuration from the file file. The

default config file is `/usr/share/enscript/hl/enscript.st'.

SSttaatteessHHiigghhlliigghhttSSttyyllee:: style Set the highlight style to style. SSttaatteessPPaatthh:: path Define the path for the ssttaatteess program. The ssttaatteess program will lookup its state definition files from this path. The

default value is `$HOME/.enscript:/usr/share/enscript/hl'.

SSttaattuussDDiicctt:: key[::value]

Pass a statusdict definition to the generated PostScript out-

put. TTOOCCFFoorrmmaatt:: format Format table of contents entries with the format string format. The format string format can contain the same escapes which are

used to format header strings with the `%Format' special com-

ment. UUnnddeerrllaayy:: text Print string text under every page. UUnnddeerrllaayyAAnnggllee:: num Set the angle of the underlay text to num. UUnnddeerrllaayyFFoonntt:: fontspec Select a font for the underlay text. UUnnddeerrllaayyGGrraayy:: num Print the underlay text with the gray value num. UUnnddeerrllaayyPPoossiittiioonn:: positionspec Set the underlay text's starting position according to the positionspec. UUnnddeerrllaayySSttyyllee:: style Set the underlay text's style to style. FFAANNCCYY HHEEAADDEERRSS

Users can create their own fancy headers by creating a header descrip-

tion file and placing it in a directory which is in eennssccrriipptt's library path. The name of the header file must be in format: `headername.hdr'.

Header can be selected by giving option: --ffaannccyy-hheeaaddeerr==headername.

Header description file contains PostScript code that paints the header. Description file must provide procedure ddoohheeaaddeerr which is called by eennssccrriipptt at the beginning of every page. Header description file contains two parts: comments and code. Parts are separated by a line containing text:

% - code follows this line -

EEnnssccrriipptt copies only the code part of description file to the generated PostScript output. The comments part can contain any data, it is not copied. If separator line is missing, no data is copied to output. EEnnssccrriipptt defines following constants which can be used in header description files: ddppaaggeeww page width ddppaaggeehh page height ddhheeaaddeerrxx header lower left x coordinate ddhheeaaddeerryy header lower left y coordinate ddhheeaaddeerrww header width ddhheeaaddeerrhh header height ddffooootteerrxx footer lower left x coordinate ddffooootteerryy footer lower left y coordinate ddffooootteerrww footer width ddffooootteerrhh footer height ddoouuttppuuttww width of the text output area ddoouuttppuutthh height of the text output area uusseerrhheeaaddeerrpp predicate which tells if user has defined his/her own header string: ttrruuee/ffaallssee uusseerrhheeaaddeerrlleeffttssttrr if uusseerrhheeaaddeerrpp is ttrruuee, this is the left field of the user supplied header string. uusseerrhheeaaddeerrcceenntteerrssttrr if uusseerrhheeaaddeerrpp is ttrruuee, this is the center field of the user supplied header string uusseerrhheeaaddeerrrriigghhttssttrr if uusseerrhheeaaddeerrpp is ttrruuee, this is the right field of the user supplied header string uusseerrffooootteerrpp predicate which tells if user has defined his/her own footer string: ttrruuee/ffaallssee uusseerrffooootteerrlleeffttssttrr if uusseerrffooootteerrpp is ttrruuee, this is the left field of the user supplied footer string. uusseerrffooootteerrcceenntteerrssttrr if uusseerrffooootteerrpp is ttrruuee, this is the center field of the user supplied footer string uusseerrffooootteerrrriigghhttssttrr if uusseerrffooootteerrpp is ttrruuee, this is the right field of the user supplied footer string

HHFF standard header font (from -FF, --hheeaaddeerr-ffoonntt option).

This can be selected simply by invoking command: `HHFF sseettffoonntt'. ppaaggeennuumm the number of the current page ffnnaammee the full name of the printed file (/foo/bar.c) ffddiirr the directory part of the file name (/foo) ffttaaiill file name without the directory part (bar.c) ggssllaanngguuaaggeelleevveell PostScript interpreter's language level (currently 1 or 2)

You can also use the following special comments to customize your head-

ers and to specify some extra options. Special comments are like DSC

comments but they start with a single `%' character; special comments

start from the beginning of the line and they have the following syn-

tax:

%commentname: options

Currently eennssccrriipptt support the following special comments:

%%FFoorrmmaatt:: name format

Define a new string constant name according to the format

string format. Format string start from the first non-space

character and it ends to the end of the line. Format string

can contain general `%' escapes and input file related `$'

escapes. Currently following escapes are supported:

%%%% character `%'

$$$$ character `$'

$$%% current page number

$$== number of pages in the current file

$$pp number of pages processed so far

$$((VAR)) value of the environment variable VAR.

%%cc trailing component of the current working directory

%%CC ($$CC) current time (file modification time) in `hh:mm:ss'

format

%%dd current working directory

%%DD ($$DD) current date (file modification date) in `yy-mm-dd'

format

%%DD{{string}} ($$DD{{string}})

format string string with the strftime(3) function.

`%%DD{{}}' refers to the current date and `$$DD{{}}' to the

input file's last modification date.

%%EE ($$EE) current date (file modification date) in `yy/mm/dd'

format

%%FF ($$FF) current date (file modification date) in `dd.mm.yyyy'

format

%%HH document title

$$LL number of lines in the current input file. This is

valid only for the toc entries, it can't be used in header strings.

%%mm the hostname up to the first `.' character

%%MM the full hostname

%%nn the user login name

$$nn input file name without the directory part

%%NN the user's pwgecos field up to the first `,' character

$$NN the full input file name

%%tt ($$tt) current time (file modification time) in 12-hour am/pm

format

%%TT ($$TT) current time (file modification time) in 24-hour format

`hh:mm'

%%** ($$**) current time (file modification time) in 24-hour format

with seconds `hh:mm:ss'

$$vv the sequence number of the current input file

$$VV the sequence number of the current input file in the

`Table of Contents' format: if the --ttoocc option is

given, escape expands to `num-'; if the --ttoocc is not

given, escape expands to an empty string.

%%WW ($$WW) current date (file modification date) in `mm/dd/yy'

format

All format directives except `$=' can also be given in format

escape width directive where width specifies the width of the column to which the

escape is printed. For example, escape "$5%" will expand to

something like " 12". If the width is negative, the value will

be printed left-justified.

For example, the `emacs.hdr' defines its date string with the following format comment:

%%FFoorrmmaatt:: eeuurrddaatteessttrr %%EE

which expands to: //eeuurrddaatteessttrr ((9966//0011//0088)) ddeeff

%%HHeeaaddeerrHHeeiigghhtt:: height

Allocate height points space for the page header. The default header height is 36 points.

%%FFooootteerrHHeeiigghhtt:: height

Allocate height points space for the page footer. The default footer height is 0 points. According to Adobe's Document Structuring Conventions (DSC), all resources needed by a document must be listed in document's prolog. Since user's can create their own headers, eennssccrriipptt don't know what resources those headers use. That's why all headers must contain a standard DSC comment that lists all needed resources. For example, used fonts can be listed with following comment:

%%DocumentNeededResources: font fontname1 fontname2

Comment can be continued to the next line with the standard continua-

tion comment:

%%+ font fontname3

SSPPEECCIIAALL EESSCCAAPPEESS EEnnssccrriipptt supports special escape sequences which can be used to add

some page formatting commands to ASCII documents. As a default, spe-

cial escapes interpretation is off, so all ASCII files print out as

everyone expects. Special escapes interpretation is activated by giv-

ing option -ee, --eessccaappeess to eennssccrriipptt.

All special escapes start with the escape character. The default escape character is ^@ (octal 000); escape character can be changed

with option -ee, --eessccaappeess. Escape character is followed by escape's

name and optional options and arguments. Currently eennssccrriipptt supports following escapes: bbggccoolloorr change the text background color. The syntax of the escape is: ^@bgcolor{red green blue} where the color components red, green, and blue are given as decimal numbers between values 0 and 1. bbggggrraayy change the text background color. The syntax of the escape is: ^@bggray{gray} where gray is the new text background gray value. The default value is 1.0 (white). ccoolloorr change the text color. The syntax of the escape is: ^@color{red green blue} where color components red, green and blue are given as decimal numbers between values 0 and 1. ccoommmmeenntt comment the rest of the line including the newline character. Escape's syntax is: ^@comment text newlinecharacter eessccaappee change the escape character. The syntax of the escape is: ^@escape{code} where code is the decimal code of the new escape character. eeppssff inline EPS file to the document. The syntax of the escape is: ^@epsf[options]{filename} where options is an optional sequence of option characters and values enclosed with brackets and filename is the name of the EPS file. If filename ends to the `|' character, then filename is assumed to name a command that prints EPS data to its standard output. In this case, eennssccrriipptt opens a pipe to the specified command and reads EPS data from pipe. Following options can be given for the eeppssff escape: cc print image centered rr print image right justified nn do not update current point. Following output is printed to that position where the current point was just before the eeppssff escape nnxx do not update current point x coordinate nnyy do not update current point y coordinate xxnum move image's top left x coordinate num characters from current point x coordinate (relative position)

xxnumaa set image's top left x coordinate to column num (abso-

lute position)

yynum move image's top left y coordinate num lines from cur-

rent line (relative position) yynumaa set image's top left y coordinate to line num (absolute position) hhnum set image's height to num lines ssnum scale image with factor num ssxxnum scale image in x direction with factor num ssyynum scale image in y direction with factor num As a default, all dimensions are given in lines (vertical) and characters (horizontal). You can also specify other units by

appending an unit specifier after number. Possible unit speci-

fiers and the corresponding units are: cc centimeters ii inches ll lines or characters (default) pp PostScript points For example to print an image one inch high, you can specify height by following options: hh11ii (1 inch), hh22..5544cc (2.54 cm), hh7722pp (72 points). ffoonntt select current font. The syntax of the escape is: ^@font{fontname[:encoding]} where fontname is a standard font specification. Special font specification ddeeffaauulltt can be used to select the default body font (eennssccrriipptt's default or the one specified by the command

line option -ff, --ffoonntt).

The optional argument encoding specifies the encoding that should be used for the new font. Currently the encoding can only be the eennssccrriipptt's global input encoding or ppss. ppss include raw PostScript code to the output. The syntax of the escape is: ^@ps{code} sshhaaddee highlight regions of text by changing the text background color. Escape's syntax is: ^@shade{gray} where gray is the new text background gray value. The default value is 1.0 (white) which disables highlighting. PPAAGGEE DDEEVVIICCEE OOPPTTIIOONNSS Page device is a PostScript level 2 feature that offers an uniform interface to control printer's output device. EEnnssccrriipptt protects all page device options inside an if block so they have no effect in level 1 interpreters. Although all level 2 interpreters support page device, they do not have to support all page device options. For example some

printers can print in duplex mode and some can not. Refer to the docu-

mentation of your printer for supported options. Here are some usable page device options which can be selected with the

-DD, --sseettppaaggeeddeevviiccee option. For a complete listing, see PostScript

Language Reference Manual: section 4.11 Device Setup. CCoollllaattee boolean how output is organized when printing multiple copies DDuupplleexx boolean duplex (two side) printing MMaannuuaallFFeeeedd boolean manual feed paper tray OOuuttppuuttFFaacceeUUpp boolean print output `face up' or `face down' TTuummbbllee boolean how opposite sides are positioned in duplex printing PPRRIINNTTIINNGG EEXXAAMMPPLLEESS

Following printing examples assume that eennssccrriipptt uses the default con-

figuration. If default actions have been changed from the configura-

tion files, some examples will behave differently. eennssccrriipptt ffoooo..ttxxtt Print file ffoooo..ttxxtt to the default printer.

eennssccrriipptt -PPoossssuu ffoooo..ttxxtt

Print file ffoooo..ttxxtt to printer oossssuu.

eennssccrriipptt -ppffoooo..ppss ffoooo..ttxxtt

Print file ffoooo..ttxxtt, but leave PostScript output to file ffoooo..ppss.

eennssccrriipptt -22 ffoooo..ttxxtt

Print file ffoooo..ttxxtt to two columns.

eennssccrriipptt -22rr ffoooo..ttxxtt

Print file to two columns and rotate output 90 degrees (land-

scape).

eennssccrriipptt -DDDDuupplleexx::ttrruuee ffoooo..ttxxtt

Print file in duplex (two side) mode (printer dependent).

eennssccrriipptt -GG22rrEE -UU22 ffoooo..cc

My default code printing command: gaudy header, two columns,

landscape, code highlighting, 2-up printing.

eennssccrriipptt -EE --ccoolloorr -WWhhttmmll --ttoocc -ppffoooo..hhttmmll **..hh **..cc

A nice HTML report of your project's C source files. ENVIRONMENT VARIABLES The environment variable EENNSSCCRRIIPPTT can be used to pass default options for eennssccrriipptt. For example, to select the default body font to be

Times-Roman 7pt, set the following value to the EENNSSCCRRIIPPTT environment

variable:

-ffTTiimmeess-RRoommaann77

The value of the EENNSSCCRRIIPPTT variable is processed before the command line options, so command line options can be used to overwrite these defaults. Variable EENNSSCCRRIIPPTTLLIIBBRRAARRYY specifies the eennssccrriipptt's library directory.

It can be used to overwrite the build-in default `/usr/share/enscript'.

RREETTUURRNN VVAALLUUEE EEnnssccrriipptt returns value 1 to the shell if any errors were encountered or

0 otherwise. If the option --eexxtteennddeedd-rreettuurrnn-vvaalluueess was specified, the

return value is constructed from the following flags: 00 no errors or warnings 22 some lines were truncated or wrapped 44 some characters were missing from the used fonts 88 some characters were unprintable FILES

/usr/share/enscript/*.hdr header files

/usr/share/enscript/*.enc input encoding vectors

/usr/share/enscript/enscript.pro PostScript prolog

/usr/share/enscript/afm/*.afm AFM files for PostScript fonts

/usr/share/enscript/font.map index for the AFM files

/usr/share/enscript/hl/*.st states definition files

/usr/share/enscript/enscript.cfg system-wide configuration file

/usr/share/enscript/enscriptsite.cfg site configuration file

~/.enscriptrc personal configuration file

~/.enscript/ personal resource directory

SEE ALSO

diffpp(1), ghostview(1), gs(1), lpq(1), lpr(1), lprm(1), states(1) AUTHOR Markku Rossi

GNU Enscript WWW home page:

ENSCRIPT Mar 12, 1999 ENSCRIPT(1)




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™