Mini Shell
What's new in GNU enscript
--------------------------
Summary of changes in enscript version 1.6.6:
* Add afm/MustRead.html, containing licensing information for Adobe
AFM files. (Savannah bug #35883)
* Sync all translations from the Translation Project. Please visit
http://translationproject.org/ to help translate Enscript!
* Add documented but missing '-w' option as an alias for '--language'.
(Savannah bug #30651)
* Apply sliceprint patch from Debian. (Savannah bug #31259)
Summary of changes in enscript version 1.6.5.2:
* Fix CFG_FATAL macro in util.c; this prevents a segmentation fault
when the configuration file contains unknown parameters. (Savannah
bug #28769)
* Fix segmentation fault with line lengths over 90 characters.
(Savannah bug #29198)
Summary of changes in enscript version 1.6.5.1:
* Typo corrections in the manual pages.
* Reorganise source tree to use a single ChangeLog file.
* Actually ship f90.st in the tarball.
* Reorganise INSTALL and README.
Noteworthy changes in enscript version 1.6.5:
* New maintainer.
* Licensing change: GNU Enscript is now distributed under version 3 or
later of the GNU GPL.
* Build system fixes - distcheck now passes.
* At least four security bug fixes:
- CAN-2004-1184
- CAN-2004-1185
- CAN-2004-1186
- CVE-2008-3863, CVE-2008-4306
* Syntax highlighting fixes.
- shell escaping rules from Shawn McMahon.
- JavaScript regexps now recognised.
- New highlighting rules for Fortran 90 from David Bowler.
See changelogs for more detailed notes.
Noteworthy changes in enscript version 1.6.4:
* Unknown - to be filled in at a later date.
Noteworthy changes in enscript version 1.6.3:
* Changes in the highlighting / pretty printing
- The `States*' config file options have changed. The new options
are:
- StatesBinary specify an absolute path for `states'
- StatesColor use colors in the highlighting outputs?
- StatesConfigFile config file name (enscript.st)
- StatesHighlightStyle highlighting style
- StatesPath path from which the states is looking
up the state definition files (.st)
- Support for user defined local highlighting definitions and styles.
- new option `--style=STYLE' to specify the highlighting style
- Verbose highlighting for the C, C++, and Objective-C languages.
In the verbose highlighting, some mathematical constructs (&&, ||,
!=, etc.) are replaced with the corresponding mathematical symbols
(logical and, logical or, not equal, etc.). The mode can be
enabled with option `--style=emacs_verbose'.
- renamed `--pretty-print' and `--help-pretty-print' options to
`--highlight' and `--help-highlight'
* states:
- Support for state inheritance.
* new highlighting rules:
- bash, csh, ksh, tcsh, zsh
Unix shells
- m4 m4 macro preprocessor
- skill Cadence Design Systems lispy language
- vrml Virtual Reality Modeling Language (VRML97)
- rfc fix broken page breaks in RFCs and in Internet Drafts
- inf GUI INF Script language
- matlab Matlab files
- outline Emacs' outline text
- tex TeX/LaTeX source files.
- diffs side diff files
- fortran_pp fortran 77 with preprocessor
- wmlscript WMLScript language
- new output language `ansi' to print color outputs on color xterm,
etc.
* new encodings:
- 88599 ISO-8859-9 (ISO Latin5)
- 885910 ISO-8859-10 (ISO Latin6)
* new options:
- -3, -4, -5, -6, -7, -8, -9 select 3-9 columns
- --nup-columnwise layout pages in the N-up printing
columnwise
- --swap-even-page-margins swap left and right side margins for
even numbered pages
- --extended-return-values encode more status information in the
return value of the program
- --footer=STRING specify the page footer string
* misc:
- It is possible to specify the font encoding in the ^@font{}
escape. But, it allows only `ps' or the enscript's global input
encoding values. For example, ^@font{Symbol@7:ps}b^@font{default}
prints the beta symbol
- New escape ^@bgcolor{} to change the text background color.
- New fancy headers `squeeze' and `enscript-color'.
- Minor fixes in the 88593 and 88594 encodings.
- New highlighting style `msvc'.
- Support for the matrix printers. Try `enscript -fMatrix10' ;-)
- Fixed some buffer overrun bugs. Now all buffer space for unknown
items (filenames, user-supplied tokens, etc.) is allocated
dynamically.
- Removed the `--list-options' option. It was an old debugging
option. I can remember when I have used or updated it.
Noteworthy changes in enscript version 1.6.1:
* new options:
- --ps-level=LEVEL, PostScriptLevel
set the PostScript language level that
enscript should use for its output
- --rotate-even-pages
Rotate each even-numbered page 180 degrees.
* misc
- updated C, C++, and Objective-C highlighting
- set the states to process the stdin if argument "-" is given
- bug and portability fixes
Noteworthy changes in enscript version 1.6:
* new options:
- StatesPath define absolute path for the states program
- GeneratePageSize specify wheter the PageSize page device
setting is generated to the output
- -C, --line-numbers option takes an optional argument to specify
the number of the first line in the input
- -W, --language=LANG set ouput language to LANG
- --h-column-height=HEIGHT
set the horizontal column height to HEIGHT
PostScript points
- --mark-wrapped-lines[=STYLE], MarkWrappedLines
mark wrapped lines in the printout with STYLE
- --margins=LEFT:RIGHT:TOP:BOTTOM
adjust page marginals
- --nup-xpad=NUM set the page x-padding of N-up printing to NUM
- --nup-ypad=NUM set the page y-padding of N-up printing to NUM
- --word-wrap wrap long lines from word boundaries
* new highlighting rules:
- ada Ada95 programming language
- asm assembler listings
- awk awk scripting language
- delphi Delphi programming language
- diff diff files
- diffu unified diff files
- elisp Emacs Lisp
- fortran Fortran77 programming language
- haskell Haskell programming language
- idl CORBA interface definition language
- java Java programming language
- javascript JavaScript language
- pascal Pascal programming language
- perl Perl programming language
- postscript PostScript
- python Python programming language
- sh Bourne shell scripts
- sql Sybase 11 SQL
- vba Visual Basic (for Applications)
- improved C, C++ and Objective-C highlighting
* new special escapes:
- ^@bggray{GRAY} change text's background color
- ^@escape{CODE} changes the escape character
* new encodings:
- 88594 ISO-8859-4 (ISO Latin4)
- 88597 ISO-8859-7 (ISO Greek)
* misc:
- interpret formatting escapes from the page header strings
- page header string can contain left, center and right aligned
fields
- support for HTML, RTF (Rich Text Format) and overstrike output
languages
- fixed tabulator character handling with variable width fonts
- added support for regular expression character syntax tables in
the states program
- generates the PageSize page device setting to the PostScript
output -- this should make the printer to select the correct paper
tray automatically
- replaced all stdarg functions with macros
- fixed N-up printing to cooperate with the page margins
- renamed the ISO-8859-* input encoding names to conform their
ISO names
Noteworthy changes in enscript version 1.5:
* new options:
-A ALIGN, --file-align=ALIGN
align separate input files to even ALIGN page
count
-E, --pretty-print pretty print program source files with states
-U NUM, --nup=NUM print NUM logical pages on each output page
(N-up printing)
--help-pretty-print describe all supported --pretty-print
languages and file formats
--slice print vertical slices of input files
--toc print table of contents
* config file options:
- TOCFormat set the table-of-contents line format
- NoJobHeaderSwitch set the spooler switch which disables job
header (-h)
- OutputFirstLine set output's fist line
- StatesColorModel define color model for states
- StatesConfigFile set states' config file
- StatesHighlightLevel
define highlight level for states
* new utilities:
- sliceprint print documents with long lines
- states awk like state machine to highlight program listings
- many2html convert files to HTML. Program supports all file
formats which can be pretty-printed with enscript.
* new encodings:
- koi8 Adobe Standard Cyrillic Font KOI8 charset
- 88595 ISO-8859-5 (ISO Cyrillic)
- asciifise 7 bit ascii with fi and se encodings for {|}[\]
(old asciiscands)
- asciidkno 7 bit ascii with dk and no encodings for {|}[\]
* misc
- ^@color{r g b} special escape
- if input file (all input files) does not exist, enscript doesn't
generate any output
- -E, --pretty-print highlighting for: C, ChangeLog, C++, mail,
Makefile, nroff output, Objective-C, Scheme, States, Synopsys,
Tcl, Verilog, VHDL
Noteworthy changes in enscript version 1.4:
* new and changed options:
-a, --pages select pages to print
-e, --escapes option takes an optional argument which
changes the escape character
-h, --no-job-header supress the job header page
--title sets the name of stdin
-I, --filter set input filter
-j, --borders print borders around columns
-k, --page-prefeed enable page prefeed
-K, --no-page-prefeed disable page prefeed
--highlight-bars enable highlight bars
--highlight-bar-gray set the gray-level for highlight bars
--printer-options pass extra options to the printer command
--ul-style specify how the underlay strings are printed
- renamed option `--page-header' to `--header'
- renamed option `--pass-through-ps-files' to `--pass-through'
* config file options:
- AcceptCompositeCharacters
- AppendCtrlD
- FormFeedType what to do when a formfeed character is
encountered from input
- EscapeChar specify the escape character
- UnderlayStyle how underlays are printed: outline / filled
* new fancy headers: mp, frame
* escapes:
- font works now over page boundaries
- ps include raw PostScript code to the output
- shade new escape to highlight text regions
- setfilename
- setpagenumber
- newpage
* new encodings:
- hp8 HP Roman-8
* internationalization support with the GNU gettext
* changed to use GNU Automake
* program renamed from genscript to enscript
* new utility scripts:
- diffpp - pretty-print diff outputs
Noteworthy changes in enscript version 1.3:
* new encodings:
- 88593 ISO-8859-3
- pslatin1 PostScript interpreter's ISOLatin1Encoding
* new fancy header: edd, a2ps
* option changes:
- option -Z, --pass-through-ps-files no longer wraps PS document
inside enscript prolog and epilog.
- renamed some options to conform the GNU coding standards:
--output-file => --output
--queue => --printer
--tab-size => --tabsize
- new command line / config file options:
-z, --no-formfeed
--ul-angle UnderlayAngle
--ul-position UnderlayPosition
--non-printable-format NonPrintableFormat
* added some customization options to header description files:
%Format format and define string constants according
to format string
%HeaderHeight explicit set the fancy header height
%FooterHeight allocate space for the page footer
Note! If you have defined your own fancy header, it will probably
not work on enscript-1.3 without modifications. Following constants
are removed from the enscript prolog so you must define them with
the `%Format' comment:
usadatestr = %Format: usadatestr %W
eurdatestr = %Format: eurdatestr %E
findatestr = %Format: findatestr %F
timestr = %Format: timestr %C
fmodstr = %Format: fmodstr $D{%a %b %e %T %Y}
Check `lib/*.hdr' to see them in action.
* the library directory has changed from `<prefix>/lib/enscript' to
`<prefix>/share/enscript'
* new Makefile targets: check, uninstall
* enscript must no longer be installed before it can be tested; you
can print files directly after you have compiled enscript.
* support for Windows95/NT via the Win32 api