2 What's new in GNU enscript
3 --------------------------
5 Summary of changes in enscript version 1.6.6:
7 * Add afm/MustRead.html, containing licensing information for Adobe
8 AFM files. (Savannah bug #35883)
10 * Sync all translations from the Translation Project. Please visit
11 http://translationproject.org/ to help translate Enscript!
13 * Add documented but missing '-w' option as an alias for '--language'.
16 * Apply sliceprint patch from Debian. (Savannah bug #31259)
19 Summary of changes in enscript version 1.6.5.2:
21 * Fix CFG_FATAL macro in util.c; this prevents a segmentation fault
22 when the configuration file contains unknown parameters. (Savannah
25 * Fix segmentation fault with line lengths over 90 characters.
29 Summary of changes in enscript version 1.6.5.1:
31 * Typo corrections in the manual pages.
33 * Reorganise source tree to use a single ChangeLog file.
35 * Actually ship f90.st in the tarball.
37 * Reorganise INSTALL and README.
40 Noteworthy changes in enscript version 1.6.5:
44 * Licensing change: GNU Enscript is now distributed under version 3 or
47 * Build system fixes - distcheck now passes.
49 * At least four security bug fixes:
53 - CVE-2008-3863, CVE-2008-4306
55 * Syntax highlighting fixes.
56 - shell escaping rules from Shawn McMahon.
57 - JavaScript regexps now recognised.
58 - New highlighting rules for Fortran 90 from David Bowler.
60 See changelogs for more detailed notes.
63 Noteworthy changes in enscript version 1.6.4:
65 * Unknown - to be filled in at a later date.
68 Noteworthy changes in enscript version 1.6.3:
70 * Changes in the highlighting / pretty printing
72 - The `States*' config file options have changed. The new options
74 - StatesBinary specify an absolute path for `states'
75 - StatesColor use colors in the highlighting outputs?
76 - StatesConfigFile config file name (enscript.st)
77 - StatesHighlightStyle highlighting style
78 - StatesPath path from which the states is looking
79 up the state definition files (.st)
81 - Support for user defined local highlighting definitions and styles.
82 - new option `--style=STYLE' to specify the highlighting style
83 - Verbose highlighting for the C, C++, and Objective-C languages.
84 In the verbose highlighting, some mathematical constructs (&&, ||,
85 !=, etc.) are replaced with the corresponding mathematical symbols
86 (logical and, logical or, not equal, etc.). The mode can be
87 enabled with option `--style=emacs_verbose'.
88 - renamed `--pretty-print' and `--help-pretty-print' options to
89 `--highlight' and `--help-highlight'
93 - Support for state inheritance.
95 * new highlighting rules:
97 - bash, csh, ksh, tcsh, zsh
99 - m4 m4 macro preprocessor
100 - skill Cadence Design Systems lispy language
101 - vrml Virtual Reality Modeling Language (VRML97)
102 - rfc fix broken page breaks in RFCs and in Internet Drafts
103 - inf GUI INF Script language
104 - matlab Matlab files
105 - outline Emacs' outline text
106 - tex TeX/LaTeX source files.
107 - diffs side diff files
108 - fortran_pp fortran 77 with preprocessor
109 - wmlscript WMLScript language
111 - new output language `ansi' to print color outputs on color xterm,
116 - 88599 ISO-8859-9 (ISO Latin5)
117 - 885910 ISO-8859-10 (ISO Latin6)
121 - -3, -4, -5, -6, -7, -8, -9 select 3-9 columns
122 - --nup-columnwise layout pages in the N-up printing
124 - --swap-even-page-margins swap left and right side margins for
126 - --extended-return-values encode more status information in the
127 return value of the program
128 - --footer=STRING specify the page footer string
132 - It is possible to specify the font encoding in the ^@font{}
133 escape. But, it allows only `ps' or the enscript's global input
134 encoding values. For example, ^@font{Symbol@7:ps}b^@font{default}
135 prints the beta symbol
136 - New escape ^@bgcolor{} to change the text background color.
137 - New fancy headers `squeeze' and `enscript-color'.
138 - Minor fixes in the 88593 and 88594 encodings.
139 - New highlighting style `msvc'.
140 - Support for the matrix printers. Try `enscript -fMatrix10' ;-)
141 - Fixed some buffer overrun bugs. Now all buffer space for unknown
142 items (filenames, user-supplied tokens, etc.) is allocated
144 - Removed the `--list-options' option. It was an old debugging
145 option. I can remember when I have used or updated it.
148 Noteworthy changes in enscript version 1.6.1:
152 - --ps-level=LEVEL, PostScriptLevel
153 set the PostScript language level that
154 enscript should use for its output
155 - --rotate-even-pages
156 Rotate each even-numbered page 180 degrees.
160 - updated C, C++, and Objective-C highlighting
161 - set the states to process the stdin if argument "-" is given
162 - bug and portability fixes
165 Noteworthy changes in enscript version 1.6:
169 - StatesPath define absolute path for the states program
170 - GeneratePageSize specify wheter the PageSize page device
171 setting is generated to the output
172 - -C, --line-numbers option takes an optional argument to specify
173 the number of the first line in the input
174 - -W, --language=LANG set ouput language to LANG
175 - --h-column-height=HEIGHT
176 set the horizontal column height to HEIGHT
178 - --mark-wrapped-lines[=STYLE], MarkWrappedLines
179 mark wrapped lines in the printout with STYLE
180 - --margins=LEFT:RIGHT:TOP:BOTTOM
181 adjust page marginals
182 - --nup-xpad=NUM set the page x-padding of N-up printing to NUM
183 - --nup-ypad=NUM set the page y-padding of N-up printing to NUM
184 - --word-wrap wrap long lines from word boundaries
186 * new highlighting rules:
188 - ada Ada95 programming language
189 - asm assembler listings
190 - awk awk scripting language
191 - delphi Delphi programming language
193 - diffu unified diff files
195 - fortran Fortran77 programming language
196 - haskell Haskell programming language
197 - idl CORBA interface definition language
198 - java Java programming language
199 - javascript JavaScript language
200 - pascal Pascal programming language
201 - perl Perl programming language
202 - postscript PostScript
203 - python Python programming language
204 - sh Bourne shell scripts
206 - vba Visual Basic (for Applications)
208 - improved C, C++ and Objective-C highlighting
210 * new special escapes:
212 - ^@bggray{GRAY} change text's background color
213 - ^@escape{CODE} changes the escape character
217 - 88594 ISO-8859-4 (ISO Latin4)
218 - 88597 ISO-8859-7 (ISO Greek)
222 - interpret formatting escapes from the page header strings
223 - page header string can contain left, center and right aligned
225 - support for HTML, RTF (Rich Text Format) and overstrike output
227 - fixed tabulator character handling with variable width fonts
228 - added support for regular expression character syntax tables in
230 - generates the PageSize page device setting to the PostScript
231 output -- this should make the printer to select the correct paper
233 - replaced all stdarg functions with macros
234 - fixed N-up printing to cooperate with the page margins
235 - renamed the ISO-8859-* input encoding names to conform their
238 Noteworthy changes in enscript version 1.5:
242 -A ALIGN, --file-align=ALIGN
243 align separate input files to even ALIGN page
245 -E, --pretty-print pretty print program source files with states
246 -U NUM, --nup=NUM print NUM logical pages on each output page
248 --help-pretty-print describe all supported --pretty-print
249 languages and file formats
250 --slice print vertical slices of input files
251 --toc print table of contents
253 * config file options:
255 - TOCFormat set the table-of-contents line format
256 - NoJobHeaderSwitch set the spooler switch which disables job
258 - OutputFirstLine set output's fist line
259 - StatesColorModel define color model for states
260 - StatesConfigFile set states' config file
261 - StatesHighlightLevel
262 define highlight level for states
266 - sliceprint print documents with long lines
267 - states awk like state machine to highlight program listings
268 - many2html convert files to HTML. Program supports all file
269 formats which can be pretty-printed with enscript.
273 - koi8 Adobe Standard Cyrillic Font KOI8 charset
274 - 88595 ISO-8859-5 (ISO Cyrillic)
275 - asciifise 7 bit ascii with fi and se encodings for {|}[\]
277 - asciidkno 7 bit ascii with dk and no encodings for {|}[\]
281 - ^@color{r g b} special escape
282 - if input file (all input files) does not exist, enscript doesn't
284 - -E, --pretty-print highlighting for: C, ChangeLog, C++, mail,
285 Makefile, nroff output, Objective-C, Scheme, States, Synopsys,
289 Noteworthy changes in enscript version 1.4:
291 * new and changed options:
293 -a, --pages select pages to print
294 -e, --escapes option takes an optional argument which
295 changes the escape character
296 -h, --no-job-header supress the job header page
297 --title sets the name of stdin
298 -I, --filter set input filter
299 -j, --borders print borders around columns
300 -k, --page-prefeed enable page prefeed
301 -K, --no-page-prefeed disable page prefeed
302 --highlight-bars enable highlight bars
303 --highlight-bar-gray set the gray-level for highlight bars
304 --printer-options pass extra options to the printer command
305 --ul-style specify how the underlay strings are printed
307 - renamed option `--page-header' to `--header'
308 - renamed option `--pass-through-ps-files' to `--pass-through'
310 * config file options:
312 - AcceptCompositeCharacters
314 - FormFeedType what to do when a formfeed character is
315 encountered from input
316 - EscapeChar specify the escape character
317 - UnderlayStyle how underlays are printed: outline / filled
319 * new fancy headers: mp, frame
323 - font works now over page boundaries
324 - ps include raw PostScript code to the output
325 - shade new escape to highlight text regions
333 * internationalization support with the GNU gettext
335 * changed to use GNU Automake
337 * program renamed from genscript to enscript
339 * new utility scripts:
340 - diffpp - pretty-print diff outputs
343 Noteworthy changes in enscript version 1.3:
347 - pslatin1 PostScript interpreter's ISOLatin1Encoding
349 * new fancy header: edd, a2ps
352 - option -Z, --pass-through-ps-files no longer wraps PS document
353 inside enscript prolog and epilog.
355 - renamed some options to conform the GNU coding standards:
356 --output-file => --output
358 --tab-size => --tabsize
360 - new command line / config file options:
362 --ul-angle UnderlayAngle
363 --ul-position UnderlayPosition
364 --non-printable-format NonPrintableFormat
366 * added some customization options to header description files:
367 %Format format and define string constants according
369 %HeaderHeight explicit set the fancy header height
370 %FooterHeight allocate space for the page footer
372 Note! If you have defined your own fancy header, it will probably
373 not work on enscript-1.3 without modifications. Following constants
374 are removed from the enscript prolog so you must define them with
375 the `%Format' comment:
377 usadatestr = %Format: usadatestr %W
378 eurdatestr = %Format: eurdatestr %E
379 findatestr = %Format: findatestr %F
380 timestr = %Format: timestr %C
381 fmodstr = %Format: fmodstr $D{%a %b %e %T %Y}
383 Check `lib/*.hdr' to see them in action.
385 * the library directory has changed from `<prefix>/lib/enscript' to
386 `<prefix>/share/enscript'
388 * new Makefile targets: check, uninstall
390 * enscript must no longer be installed before it can be tested; you
391 can print files directly after you have compiled enscript.
393 * support for Windows95/NT via the Win32 api