a2ps is an Any to PostScript filter. It started as a Text to PostScript converter, with pretty printing and all the expected features for this kind of programs. Today it also deals with other file types (PostScript, Texinfo, compressed, whatever...) provided you have the necessary tools. For more details see "
a2ps-4.13b: description + notes
man a2ps
" or "info a2ps
". The a2ps home page has on-line manuals and FAQ.A short list of features of a2ps includes:
- Customizable through various configuration files.
- Powerful escapes to define the headers, table of contents etc. the way you want.
- Variables to push even further the customizability in a confortable manner.
- Open approach of encodings.
- Excellent support of the Latin 2, 3, 4, 5 and 6 encodings, thanks to ogonkify.
- Fully customizable output style: fonts, background and foreground colors, line numbering style etc.
- Delegation of processing for some files to other filters.
- Many contributations, e.g., pretty-print diffs, print reference cards of programs, sanitize broken PostScript files, print Duplex on Simplex printers etc.
- And finally, the ability to pretty-print sources written in quite a few various languages.
The most sensitive changes in the interface since version 4.10.4 are that
-D
now means--define
rather than--setpagedevice
, and-S
now means--setpagedevice
rather than--statusdict
.Note that
/usr/freeware/etc/a2ps.cfg
does not assume that you have installed any additional freeware packages. If you install gv (or ghostview), bzip, bzip2, psutils (dvips, psselect, psnup), pdf2ps, dvips, groff, or ImageMagick (convert) executables you may wish to uncomment the corresponding lines in the "Preconfigured delegations
" section.Note: Version 4.13 has a big change in the syntax of style sheets. All the style sheets shipped with a2ps are updated. You will have to update any personal stylesheets by yourself. Here's a summary of the change:
Regexps are now egrep and Perl like, and no longer Emacs like. Before some characters had to be backslashed to denote operators. Now it is just the contrary. For instance `\(' and `\)' used to be the grouping operator and `(' and `)' stood for the paren characters; now it is the converse. Affected characters are `(', `)', `|', `{', and `}'. Make sure to update your own style sheets.
To auto-install this package, go back and click on the respective install icon.