plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

VERSION (18856B)


      1 ------------------------
      2 Version 3.3.2   7/7/92
      3 ------------------------
      4 
      5  1: Added UTF support for Plan 9. Only signigficant source code changes were
      6     in dpost.utf (font.h, font.c, dpost.c). Added common/rune.[hc] so code
      7     can be compiled elsewere. Remove RUNELIB in commmon/rune.h if fullrune(),
      8     chartorune(), and runetochar() are available on your system. Original
      9     DWB 3.3 dpost source is in directory dpost. You should select dpost or
     10     dpost.utf in postscript.mk. Both compile and install a program called
     11     dpost so don't pick both!
     12 
     13  2: dpost can read old or UTF troff output. Default is whatever is assigned
     14     to READING (file common/gen.h). You get one or the other, unless troff
     15     tells dpost what encoding to use (currently x E UTF).
     16 
     17  3: Most other translators passed bytes through and so only needed slightly
     18     modified proglogues and a new encoding scheme (psencoding/UTF.enc). It
     19     works for Latin1, but still needs a bit more attention. Prologue changes
     20     were easy and only involved adding lines like,
     21 
     22 	/show {show} bind def
     23 	/stringwidth {stringwidth} bind def
     24 
     25     Guarantees text procedures used in prologues aren't operators and can be
     26     successfully redefined in UTF.enc. Unbinding means a small but probably
     27     not noticeable speed penalty. You may not want to include those changes
     28     on other system.
     29 
     30  4: Operator redefinitions means dpost should work in it's own dictionary
     31     (rather than userdict). Not implemented yet, but should be easy. Only
     32     potential problem is with picture inclusion when dpost reads UTF.enc.
     33 
     34 ------------------------
     35 Version 3.3.2   5/15/92
     36 ------------------------
     37 
     38  1: postio now outputs all unrecognized status reports - primarly for spooler
     39     accounting purposes.
     40 
     41  2: The makefiles also enable the selection of alternate stream module names
     42     for streams based DKHOST support in postio.
     43 
     44  3: dpost now assumes the optional fifth token in a font mounting command
     45     (e.g. x font 2 R /usr/me/font/R) is the full pathname of the font. troff
     46     outputs the pathname when a .fp request contains a third argument that
     47     begins with a / as in .fp 1 R /usr/me/font/R.
     48 
     49  4: By request Latin1's - character has been changed from minus to the smaller
     50     hyphen character. Added \(dq and \(bs (for " and \ characters) to devpost
     51     and devLatin1 tables. Also added \(!! and \(?? to devpost tables.
     52 
     53  5: Helvetica-Light and Helvetica-LightOblique tables are included as HL and
     54     HK in devpost and devLatin1, even though fonts aren't generally available.
     55     Also copy H to HM during an install of devpost and devLatin1 tables.
     56 
     57  6: LH is a horizontally arranged color Lucent logo with text which replaces the AT&T logo.
     58     LV is a vertically arranged monochrome AT&T logo with text.
     59     FA is a horizontally arranged monochrome Lucent logo with text (low res.).
     60 	L1 is a monochrome AT&T logo, no text.
     61 	LA is a monochrome AT&T text.
     62 
     63  7: Included L1 and LA outlines in devpost and devLatin1. Adjusted LA scaling
     64     so size of "AT&T" matches what's in LV. Original PostScript came
     65     from Matthijs Melchior.
     66 
     67  8: Included the "symmetric clippath" version of roundpage.ps as Nroundpage.ps
     68     in directory postscript/psfiles. Move it to roundpage.ps if you want it to
     69     be the default.
     70 
     71  9: Added a few lines of code to dpost for handling current implementation of
     72     the portrait/landscape mode macros.
     73 
     74 10: The man page for download now documents the -r option and notes that -p
     75     is for Unix 4.0 lp.
     76 
     77 ------------------------
     78 Version 3.3.1   4/30/91
     79 ------------------------
     80 
     81  1: buildtables stuff has been cleaned up and is now a user level command.
     82     Uses shell.lib files that are installed with font tables. The devpost
     83     tables were built on a version 47.0 PS-810. The devLatin1 tables were
     84     built on a version 51.7 PS-820.
     85 
     86  2: The devLatin1 tables provide support for the ISO Latin1 alphabet on
     87     PostScript printers.
     88 
     89  3: All translators support different text font encoding schemes using the
     90     -E option and *.enc files installed in POSTLIB. The ISO Latin 1 alphabet
     91     is supported with file /usr/lib/postscript/Latin1.enc.
     92 
     93  4: printfont prints a table of the available (encoded) characters in one
     94     or more PostScript fonts. It also understands the -E option.
     95 
     96  5: grabit and hardcopy are two new programs that may be of interest to the
     97     more serious PostScript programmer. grabit resembles ==, but produces
     98     output that's usally easier to read. hardcopy redirects output from
     99     PostScript file output operators (or procedures) to paper. It's useful
    100     if you don't have direct access to a printer.
    101 
    102  6: Prologues and programs are stored together. Other common PostScript files
    103     are now in the psfiles directory.
    104 
    105 ------------------------
    106 Verions 3.3	4/16/90
    107 ------------------------
    108 
    109  1: The package is now included in DWB. Version numbers are a bit misleading.
    110     The one in postscript.mk refers to the DWB package.
    111 
    112  2: dpost (and troff) now read ASCII font tables. makedev and the old binary
    113     format are gone.
    114 
    115  3: The devpost directory came directly from the DWB package. The font tables
    116     originally distributed with this package are in directory devopost. They
    117     are not installed. If possible we recommend you use the devpost tables.
    118     The old tables can be installed by adding devopost to the TARGETS list in
    119     file postscript.mk.
    120 
    121  4: dpost recognizes two new fields in font tables. Entries for the full
    122     PostScript font look like,
    123 
    124 		fontname Times-Roman
    125 
    126     The fontname field is helps manage host resident fonts, the DocumentFonts
    127     comment, and is used to define font name abbreviations like the ones in
    128     dpost.ps. A font table entry that looks like,
    129 
    130 		named in prologue
    131 
    132     disables the runtime abbreviation for the font - dpost assumes it's already
    133     in the prologue.
    134 
    135  5: Extra font tables included in DWB 3.0's devpost font collection are in
    136     directory devpost.add. They included here, but should probably not be
    137     used.
    138 
    139  6: Bracket building has been fixed and tested on a wide range of PostScript
    140     printers. It will likely still not work on many clones. Real problem
    141     appears to be with Adobe's braceleftbt character.
    142 
    143  7: Most of the special tuning code for device emulation has been removed.
    144     Emulation still works, but there may be cases where it's not as good as
    145     earlier versions.
    146 
    147  8: Several problems with color and reverse video printing have been fixed.
    148 
    149  9: buildtables directory has been cleanup up. The template files in directory
    150     buildtables/devpost.data were used to build the devpost tables.
    151 
    152 10: postplot and download are two new programs. postplot is for the System V
    153     plot package only. Both were written for the Unix 4.0 lp package.
    154 
    155 11: postgif is also relatively new - it came from Chi Choy.
    156 
    157 12: The translators now rotate clockwise when printing in landscape mode. If
    158     you want the old behavior set ROTATION to -1 in postscript.mk.
    159 
    160 13: forms.ps has been cleaned up some. Better behavior when you print 2
    161     landscape pages on one sheet.
    162 
    163 14: Handling of Datakit code for System V has been changed some. Makefiles
    164     now expect to find libdk.a and dk.h in standard places (e.g /usr/lib and
    165     /usr/include). Set DKHOST to TRUE in postscript.mk to get Datakit support
    166     on System V.
    167 
    168     If you're stuck and need to have things behave as they did in the past
    169     take a look at file postio/postio.mk. Define DKHOSTDIR and uncomment
    170     three lines and the behavior should be close to what it was.
    171 
    172 15: Picture inclusion and color macros are gone. They're included in the DWB
    173     package, and not here.
    174 
    175 ------------------------
    176 Version 3.2	11/27/89
    177 ------------------------
    178 
    179  1: Implemented height and slant requests in dpost.
    180 
    181  2: Modified the behavior of all translators so save objects are no longer left
    182     on the stack. The original implementation was a mistake and occasionally
    183     (e.g. picture inclusion with forms.ps) resulted in invalid restores.
    184 
    185  3: Fixed the mistake in the external declaration of mesg in postio/slowsend.c.
    186 
    187  4: The malloc() call in postdmd (routine dimensions()) is only made if patterns
    188     is positive.
    189 
    190  5: Changed definition of De in draw.ps so savematrix is loaded with the CTM
    191     whenever De is executed. Original implementation didn't work with forms.ps
    192     because the CTM is changed with each page image. (4/29/89)
    193 
    194  6: Flush stdout when postio is invoked with the -t option - just convenient
    195     not necessary. (4/30/89)
    196 
    197  7: Included a man page for the picture inclusion macros - file man/mpictures.5.
    198     (5/6/89)
    199 
    200  8: Added BoundingBox code to dpost - still needs to go in other translators.
    201     Most of the work is done in common/bbox.c. (5/7/89)
    202 
    203  9: Fiddled with the bracket building stuff in dpost.ps so things finally look
    204     decent. Was particularly bad on the typesetter.
    205 
    206 10: dpost now generates a PageBoundingBox comment and ps_include.c accepts
    207     the comment. Added -B option to enable/disable the BoundingBox calculations.
    208     -Bon to enable and -Boff to disable. On by default now, but that may change.
    209     Add similar code to the rest of the translators (6/20/89).
    210 
    211 11: Fixed ps_include.c so it properly handles %%BeginGlobal and %%EndGlobal.
    212     Added braces and compare page.start to page.end instead of 0.
    213 
    214 12: Added xymove(hpos, vpos) for \X'PS ...' request - near the end of devcntrl().
    215     Must output position info for following PostScript.
    216 
    217 13: Added a call to endtext() immediately before the oput() call for \N'...'
    218     requests. Without it spacing often messed up with -e2 but not -e0.
    219 
    220 ------------------------
    221 Version 3.1	11/15/88
    222 ------------------------
    223 
    224  1: postio can run as one or two processes (-R option) and can establish an
    225     interactive connection with a postscript printer (-i option). Parsing of
    226     status reports has been improved. The status query mechanism can be disabled
    227     using the -q option. An exit status of 1 implies a system error (eg. can't
    228     open the line) while 2 usually means there was an error in the PostScript
    229     file. By default postio runs as a single process. The -B, -R, and -q options
    230     can be used to speed things up some. A version of the program (previously
    231     supplied in postio.tmp) that can help if you seem to be having flow control
    232     problems can be obtained using the -S option. It's not generally recommended
    233     and should only be used as a last resort!
    234 
    235  2: Several widthshow encoding schemes have been added to dpost and can reduce
    236     print time by 20% or more. The method used to encode lines of text can be
    237     changed on the command line using the -e option. Level 0 produces output
    238     essentially identical to previous versions of dpost. The default can be
    239     changed by modifying the definition of ENCODING in ./Makefile. At present
    240     only level 0 is thoroughly tested, although level 2 (ie. -e2) may be the
    241     default and is undoubtedly worth a try.
    242 
    243  3: dpost now supports color selection and reverse video. Access in troff is via
    244     the stand-alone macro package ./macros/color. Examples are,
    245 
    246 	.so /usr/lib/macros/color
    247 	.CL red "this prints in red"
    248 	.CL "white on black" "and this prints white text on a black background"
    249 
    250     The postscript procedures that handle color and reverse video can be found
    251     in ./postscript/color.ps. Additional colors can be added to the colordict
    252     dictionary defined in ./postscript/color.ps.
    253 
    254  4: The dpost drawing routines have been improved and have been moved from the
    255     prologue (ie. ./postscript/dpost.ps) to ./postscript/draw.ps. That file is
    256     only included if needed. Drawing routines now support the ability to group
    257     a series of drawing commands together as a single path. May be useful for
    258     future versions of pic that wish to fill regions with colors or gray levels.
    259     Access is via the new "x X BeginPath" and "x X DrawPath" device control
    260     commands. In addition there's some complicated PostScript code in file
    261     ./postscript/baseline.ps, that can be used to set text along an arbitrary
    262     curve. It's terribly confusing and I doubt anyone will have the patience to
    263     bother to figure it out.
    264 
    265  5: A simple picture packing troff preprocessor (picpack) has been included and
    266     the code needed to recover pictures and text has been added to dpost. The
    267     program is designed to supplement to the original picture inclusion mechanism,
    268     and should ONLY be used when absolutely necessary. Using dpost to pull picture
    269     files into a document is strongly recommended and will always be the more
    270     efficient and portable approach. picpack simply provides a way to combine
    271     pictures and text in a single file before dpost is executed. It may help in
    272     a distributed printing environment where the user runs everything through
    273     troff while a spooling daemon (eg. lp) handles the postprocessing. There
    274     are serious disadvantages to this approach, with perhaps the most important
    275     being that troff output files (when picpack is used) will likely result in
    276     files that can no longer be reliably passed through other important post-
    277     processors like proof.
    278 
    279  6: Code to handle host resident PostScript fonts in dpost has been tested and
    280     finally works. The -H option points dpost to a host resident font directory,
    281     which by default is NULL. Host resident font files stored in that directory
    282     must be assigned a name that corresponds to the one or two character troff
    283     font name. Width tables must also be built (see buildtables/README), the new
    284     binary font files must be installed in /usr/lib/font/devpost, and a mapping
    285     definition from troff's name to the PostScript font name must be added to
    286     ./postscript/dpost.ps.
    287 
    288  7: The default pattern length in postdmd has been reduced to from 10 to 6 bytes.
    289     Printers with fast processors (eg. PS-810s) often benefit from a further
    290     reduction, while optimal performance on slower printers (eg PS-800s) may
    291     require larger pattern sizes. The pattern length can be set using the -b
    292     option. Increasing the pattern size usually increases the size of the output
    293     file.
    294 
    295  8: Line drawing in posttek and postbgi includes code that automatically ties
    296     lines to device space coordinates when you select a non-zero width. Helps
    297     eliminate the variation in line thickness that many observed. The default
    298     line width in posttek and postbgi is still 0 (which gets 1 pixel). If you
    299     want a different default change the definition of variable linewidth in files
    300     ./postscript/posttek.ps and ./postscript/postbgi.ps.
    301 
    302  9: Defocused lines in posttek have been fixed.
    303 
    304 10: postbgi now supports color and can be used to translate most PRISM (color
    305     BGI) jobs. Special device specific tuning needed for many PRISM jobs can be
    306     enabled by using the -P"/prism true" option. Missing pieces (eg. subroutines)
    307     needed for translating PRISM jobs, have also been implemented.
    308 
    309 11: postreverse can reverse the pages in documents that conform to Adobe's 1.0
    310     or 2.0 file structuring conventions, and it works with all the translators in
    311     this package. The new version is backwards compatible, but files produced by
    312     the new translators should not be passed through old versions of postreverse.
    313     The likely result will be no output at all. If you choose to do a partial
    314     installation put the new postreverse up first!
    315 
    316 12: All translators attempt to conform to Adobe's Version 2.0 file structuring
    317     conventions. dpost output falls short, but only in the interest of efficiency.
    318     Passing dpost output through postreverse (perhaps with the -r option) produces
    319     a minimally conforming PostScript file.
    320 
    321 13: All the translators now support three options that pass arbitrary PostScript
    322     through to the output file. The -P and -C options add a string and the
    323     contents of a file respectively immediately after the prologue. It's assumed
    324     whatever is added is legitimate PostScript - there is no checking. In each
    325     case the added PostScript code becomes part of the job's global environment.
    326 
    327     The -R option can be used to request special action (eg. manualfeed) on a
    328     global or page basis.  The argument should be "request", "request:page", or
    329     "request:page:file". If page is given as 0 or omitted the request applies
    330     globally. If file is omitted the lookup is in /usr/lib/postscript/ps.requests.
    331     The collection of recognized requests can be modified or extended by changing
    332     /usr/lib/postscript/ps.requests.
    333 
    334 14: PostScript code (from Johnathan Shopiro) that produces bolder versions of the
    335     Courier fonts has been included in file postscript/fatcourier.ps. The file
    336     can  be added to individual prologue files (eg. dpost.ps) or pulled in as
    337     needed using the -C option.
    338 
    339 15: postmd is a new program that can be used to display a large matrix as a gray
    340     scale image. May help if you're looking for patterns in a large matrix. A very
    341     optimistic estimate suggests you can display up to a 600x600 matrix (with five
    342     different shades of gray) on 300dpi printer using 8.5x11 inch paper.
    343 
    344 16: What's available in buildtables has been cleaned up and works well with the
    345     new version of postio. It can be used to have PostScript printers build troff
    346     width tables for both printer and host resident fonts.
    347 
    348 17: The PostScript bind operator has been applied to all procedures that are
    349     expected to be executed more than once. Redefined save and restore procedures
    350     are no longer needed and saverestore.ps is not included in this package.
    351 
    352 18: The bizarre PostScript code used to get to the upper left corner of a page
    353     in old versions of dpost.ps and postprint.ps has been replaced by something
    354     that's at least slightly more comprehensible. All prologues have also been
    355     changed so picture inclusion (eg. including a pic picture that's been run
    356     through troff and dpost) should work better than previous versions. Still
    357     missing (from most translators) is the %%BoundingBox comment and even when
    358     it's put out (by postdmd) only the dimensions are correct - sorry!
    359 
    360 19: The careless mistake in the DKHOST section of postio that some noticed belongs
    361     to me (not Allan Buckwalter) and has now been fixed.
    362 
    363 20: By default all prologues still use the current clipping path to determine page
    364     dimensions, but that behavior can be disabled by setting boolean useclippath
    365     (in each prologue) to false. In that case the page dimensions will be taken
    366     from array pagebbox, which by default is initialized to 8x11 inch paper. The
    367     -P options (in each translator) can change useclippth and pagebbox.
    368 
    369 21: New in the misc directory is sample lp support from Maryann Csaszar and a
    370     simple program that converts host resident font files obtained from a Macintosh
    371     to a format that works on Unix.
    372