--------------------------------------------------------------------------------
This is Psfilt, a programm to turn various kinds of text into PostScript(TM).

If you want your .c source files printed in properly kerned PostScript,
with comments rendered different than the code, this program is for you.

Psfilt understands:
- C, C++, Makefiles, shell scripts and their comments; mail messages,
  news articles; perl files (partially)
- Different character encodings
- Different transcriptions for diacritic characters and other characters
  unavailable in ASCII and related encodings:
  - *roff (groff/troff/ditroff)
  - RFC 1345 mnemonics
  - TeX (rudimentary)

Psfilt generates:
- PostScript with document structuring convention (DSC) comments
- Pairwise kerning
- Color (only for devices capable of displaying it)
- Different rendition for comments (e.g. different font or color)

--------------------------------------------------------------------------------
You need:
- gmake (or you have to edit the makefile)
  Version 3.63 should suffice, but 3.70 or higher is recommended.
- flex
  Version 2.3.7 won't work, get 2.4.6 or higher.
- bison
  Version 1.18 or higher.
- gcc (or another ANSI-C compiler?).

--------------------------------------------------------------------------------
Installation:

See INSTALL for instructions.

Since psfilt was first developed on an old System V machine and on
Solaris 1 (BSD'ish) later on, it should be relatively easy to port to other
systems.

Psfilt is known to run on:
  USG/SVR3
  Solaris 1 (a.k.a. SunOS 4)
  Linux
  Ultrix 4.3
  Solaris 2 (a.k.a. SunOS 5)
  AIX/6000 3.2

There seem to be problems on:
  HP-UX (fsopen.c)
  SGI
  FreeBSD (fsopen.c)

If you've another architecture to add to either list, please tell me!
If you had to fiddle to get on the `success list', please tell me.

--------------------------------------------------------------------------------
Since some Unicode files may not directly be redistributed, they are
not supplied with the psfilt distribution.
The derived files, ucs2list.[ch] are distributed instead.
The Unicode files are freely available by anonymous FTP from unicode.org
and/or metis.com.

--------------------------------------------------------------------------------
What if...

Q: patch can't find the patch information in your diff.
A: The patches are unified diffs, similar to context diffs but more compact.
   If your version of the patch program is more than 2.5 years old, you
   should get a newer one.

Q: Where do i get .afm and .ppd files?
A: FTP: ftp.adobe.com
   Mail server: ps-file-server@adobe.com (send mail with the single word
       `help' (without quotes, of course) in it)
   On a Sun, you may find some .afm files in
   /usr/openwin/lib/fonts/afm/ (Solaris 1).
   Two PPD files for standard ghostscript and ghostview are supplied with
   psfilt.

Q: Psfilt always reads all .afm files.
A: The cache file may not be initialized. Try `psfilt -nofile -cache update`.

Q: Psfilt doesn't generate any kerning. Why?
A: The .afm file has to supply kerning pair information.

Q: Psfilt says `can't get font from family "Times"'.
A: Check your .afm files and the cache. Psfilt gets the FontFamily information
   from there.

Q: There are some funny characters in the source files.
A: The file's encoding is ISO Latin 1. You can use recode (a GNU utility)
   to change it to your computers favorite encoding, be it ASCII,
   IBM codepage 437, NeXT, MacIntosh (sp?), DIN 66003, EBCDIC or whatever.

Q: My poor machine gets killed when it compiles ucs2.c.
A: You may want to use `fgrep -v UCS2_hangul_` to cut the size of
   ucs2list.[ch] in half. You can call `gmake shrink-ucs2list` to do this.
   Edit configure and throw out this line:
	test -n "$GCC" && CC="$CC -pipe"

--------------------------------------------------------------------------------
Mail addresses

  I have set up a mailing list for psfilt. If you want to discuss
  further improvements to psfilt, or other things related to psfilt,
  you may want to join. For those who just want to be notified of
  patches and new revisions, there is another alias. The address for
  requests to get on or off these lists is:

	psfilt-request@rainbow.in-berlin.de

  The mailing lists address is

	psfilt@rainbow.in-berlin.de

--------------------------------------------------------------------------------
FTP addresses

  Psfilt is available from the following ftp addresses:

    primary:
      ftp.fokus.gmd.de:/pub/freeware/psfilt/

    mirrors:
      ftp.inria.fr:/postscript/
      ftp.funet.fi:/pub/unix/postscript/

          file names: psfilt-<vers>.<patchlevel>.tar.gz
		      psfilt-<vers>.<patchlevel>-<vers>.<patchlevel>.diff.gz

     current version: 1.7
  current patchlevel: 14

  I'm still waiting for some ftp site in the US to offer some disk space!
  Most requests to get psfilt via ftp come from over the pond (I'm in Europe).

--------------------------------------------------------------------------------
History:

Psfilt got started on 1 January, 1992. It was initially developed on an
old System V machine. It has been tested and used by a number of friends
and collegues for more than a year, before version 1.6 got first posted
on 31 December, 1993.

Version 1.7 got a totally revised PPD parser, and a little support for perl.
The posted version appears so much larger because in the original post
the postings were twice as large and some large files were compressed.

With version 1.7.2, psfilt became configurable via GNU autoconf.

--------------------------------------------------------------------------------
TODO:

- If someone wants to come up with a texinfo file, i might even support it. ;-)

--------------------------------------------------------------------------------
Psfilt is Copyright (C) 1992, 1993, 1994 Robert Joop.

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

--------------------------------------------------------------------------------
