Contents | Parent Topic | Previous Topic | Next Topic
Home | Catalog
Enhancements | Fixes | Incompatibilities
The major enhancements are:
The minor enhancements are:
Further details on the major enhancements are provided below.
As SDF occasionally provides several ways to generate an output:
As a result, it is now easy to change sdf.ini so that PostScript generation (i.e. -2ps) is via POD format rather than via FrameMaker, say. Furthermore, regardless of the default setup for PostScript generation:
Generally speaking, a name of xxx_yyy means format xxx via yyy. Likewise, a name of xxx_ means format xxx directly.
As requested (many years ago, in fact), SDF will now automatically convert figure formats for you if it needs to. In particular, if you have a prn file on the search path, sdf will convert it to gif for HTML and eps for PostScript. Likewise, if you have an eps for PostScript, sdf will convert this to gif when you generate HTML.
Creating a prn file as a easy as printing to a PostScript file from most Windows apps including MS-Office and Rational Rose. As a result, figure management should no longer be the hassle its been in the past.
The conversion rules are stored in bin/sdf.ini. Feel free to have a look and/or forward me any additions/enhancements to the rules. One of the rules uses a new program supplied in SDF called
A large number of HTML customisation features already existed, but were poorly documented. The new customisation features in this release are:
See the new tutorial titled Generating HTML Using SDF for details.
SDF can now be converted to SGML like this:
sdf -2sgml mydoc.sdf
By default, the linuxdoc DTD is used. Alternatively, the SGML_DTD variable can be used to change the DTD to qwertz, say, like this:
!define SGML_DTD "qwertz"
If SGML-Tools 1.02 or later is installed, you can also generate the formats given below.
Command | Output format | Via |
sdf -2latex_sgml | LaTeX | SGML-Tools |
sdf -2dvi_sgml | DVI | SGML-Tools and LaTeX |
sdf -2ps_sgml | PostScript | SGML-Tools and LaTeX |
sdf -2rtf_sgml | RTF | SGML-Tools |
sdf -2info_sgml | GNU info | SGML-Tools |
sdf -2lyx_sgml | LyX | SGML-Tools |
SDF now has better support for non-English languages via locales. The -L option of the sdf command can be used to specify a locale. The default locale name is specified in sdf.ini. Locale naming follows POSIX conventions (i.e. language_country), so the locale name for American english is en_us. The information for each locale is stored in the locale directory, so you'll need to have to look in there to see what locales are available. (As the default locale can be set in sdf.ini, this isn't as ugly as it first sounds.)
At the moment, a locale file simply contains a list of language specific strings, although it should ultimately be extended to support localisation of date and time formats. Feel free to send me new locales so I can include them in future versions of SDF.
SDF can now also be used as a generic template processor, i.e. you can create C source, say, with ! macros and [[..]] expressions within it and use sdf to process it. For example, if you have a file called xx.sdt like this:
!if DATE <P> The date is [[DATE:DOC_START]]. !else <P> The time is [[TIME:DOC_START]]. !endif
you can process it like this:
sdf xx.sdt | less sdf -DDATE xx.sdt | less
If the file doesn't have a sdt extension, you need to specify template processing like this:
sdf -ptemplate myskel.cpp | less
If you run the sdf program on a file without giving a target, the text of each paragraph is output. Therefore, you can now do things like:
sdf mydoc.sdf | spell -b
It is now possible to post filter the output of a format driver before the results are written to disk. The -y option of the sdf command can now be used to specify a post filter name. A post filter called xxx maps to a routine called xxx_PostFilter in the file perllib/sdf/post_xxx.pl.
Heading numbering in HTML and text outputs should be fixed now.
The file and line number in messages should generally be right now. Certain filters may still lead to incorrect line numbers being reported, but messages containing '$fullname', line number 0 or -1 should no longer appear.
Man page generation now works again. Previously,
MIMS HTX and F6 Help formats should be working correctly now. The MIMS_CLIENT_CODE variable must now be specified on the command line when generating MIMS F6 help.
The APIs for SDF's Perl libraries are now present again in the SDF Guru Guide.
The sdf2... wrapper scripts are no longer provided - use the -2 option of the sdf command instead.
Given the rationalisation of output format naming, some of the previously used names (e.g. fmrtf, sgmllatex) have been changed. If the sdf command complains about an unknown alias, have a look in sdf.ini to see what the new name is.
The interface to FindFile, a subroutine which some users override to integrate SDF into their CM system, has changed. See the FindFile documentation for details.
Contents | Parent Topic | Previous Topic | Next Topic
Home | Catalog