home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
High Voltage Shareware
/
high1.zip
/
high1
/
DIR16
/
FOLD32.ZIP
/
FOLDADD.DOC
< prev
next >
Wrap
Text File
|
1993-09-14
|
12KB
|
356 lines
FOLD-and-PRINT
version 3.2
Appendix to User's Manual
(C) Konrad Budych 1989-93
This appendix does not contain vital information that you need to run
FOLD-and-PRINT. It contains information that I always hate reading in other
people's manuals. Please have a look at FOLD.DOC first, and after you have
done that, you may come back here...
DISCLAIMER
==========
FOLD-and-PRINT is supplied as is. The author disclaims all
warranties, expressed or implied, including, without limitation, the
warranties of merchantability and of fitness for any purpose. The author
assumes no liability for any damages, direct or consequential, which may
result from the use of, or inability to use FOLD-and-PRINT.
WHERE TO BUY FOLD-and-PRINT?
============================
Nowhere. FOLD-and-PRINT is free. I wrote it for myself, but now I
think more people can enjoy and make use of it. You may give FOLD-and-PRINT
away to your friends, but you are not permitted to sell or modify it. If you
distribute FOLD-and-PRINT, please distribute the original, unmodified archive
file.
If you think this program is great and worth contributing, please send
something to the author: money is most welcome ($20 or more or less),
diskettes, postcards, your programs, etc. You can contact the author via
e-mail or via snail mail using the following addresses:
Snail mail address:
Konrad Budych
os. Bohaterow Wrzesnia 24/67
31-621 Krakow, Poland
Internet address:
kbudych@ii.uj.edu.pl
Very strange things sometimes happen to ii.uj.edu.pl host so do not
give up easily when you get no answer!
If you decide to send me some money you may use an international money
order or a personal cheque.
ACKNOWLEDGEMENTS
================
I would like to thank Janusz, Jerzy, Jerzy, and Krzysztof for testing
FOLD-and-PRINT and suggesting some improvements, Piero, George and Jean for
nice words, Tom for his suggestions and his offer, John, Mark, and Nick for
their suggestions. Special thanks go to Edgar for his suggestions and
'debugging' the manual (to the version 3.0, all errors in this manual are my
own invention!)
THANKS IN UPPERCASE go to all contributors. To be honest, there are
only two persons on this list... THANKS, DAN! THANKS, CARLOS!
REVISION HISTORY
================
The history of FOLD-and-PRINT is long and interesting.
VERSIONS 1.0 thru 1.3
---------------------
The first version of this program was running under CP/M-80. It was
written in Turbo Pascal 3.0 (!). There were two parts: one which reformatted
input file into another file; the second part printed that file. All
necessary parameters had to be entered each time the program was run. Printer
control codes were located inside the program and could not be changed without
the recompilation of the source code as I used only one printer.
The first part, which created the reformatted file, could also act on
the WordStar 3.0 document files.
VERSIONS 2.0A thru 2.0J
-----------------------
The version 2.0 was written with the use of Turbo Vision library in
Turbo Pascal 6.0. This program was a 'concatenation' of the previous two.
All parameters could be set in the program and the configuration could be
saved. Several sets of control codes were still inside the program and only
ESC/P compatible printers could be used.
There was a possibility of printing selected pages and truncating
lines. An input file still was first formatted into temporary file which was
then printed. It sometimes took a while to reformat a long text.
A lot of keys has to be pressed to start printing.
VERSIONS 2.91 thru 2.98
-----------------------
As I found that I always use only two print modes, I thought of the
separate configuration files for each of them. A command line utility was the
next idea. A word wrap looks great when there are broken lines and the text
is not a source code. Printing separately odd and even pages was necessary as
I started using a printer with the sheet feeder. Printing each line few times
was a great idea when I was forced to use printers with the very weak ribbons.
FOLD-and-PRINT only reads now an input file: no temporary file is
created. This saves a lot of time: the page is reformatted and immediately
printed; the program prepares the next page while the previous one is being
printed. The text is read once if no analyzis is performed, however if you
want to know how many pages the text will have, it has to be read twice and
the text analysis has to be performed.
All necessary printer information is now in the printer definition
file. This allows (probably) all line printers to be used.
Version 2.91 thru 2.98 were all pre-release versions of 3.0. They
were not widely distributed, but were still improved. The suggestion form a
number of people shaped FOLD-and-PRINT into its final form.
VERSION 3.0
-----------
This version was the first to be widely distributed.
VERSION 3.1
-----------
Here is a list of changes from version 3.0:
* 'd' and 'q' switches have been added for the easier header/footer
defining and printing.
* 'c' switch has been removed as useless and not used (by me...)
* A string of digits is now 'a word' too. This changed the way
FOLD-and-PRINT breaks lines.
* When non-printable characters are found in a text, their codes are
displayed now.
* 'x' switch added to speed up printing of texts on printers with a
sheet feeder.
* 'g' switch added (set tab width).
* 'r' parameter added to allow page numbering shifts.
* The space fillers have been added to special header/footer symbols
to create left/right-justified, odd/even-page-dependent headers and footers.
* The printer configuration file now can contain comments.
VERSION 3.2
-----------
Here is a list of major changes from version 3.1:
* new syntax of .P files
* user's title in headers and footer
* line of hyphens may be printed below/above headers/footer
* separate headers/footers for odd and even pages
* different command line parsing: no switches, one- and two-letter
options, case sensitive options
* 'df' disables headers/footers on page no. 1
* 'qt' asks for a user's title
* 'oo', 'oe', 'ox', 'oa' instead of 'o', 'e', 'x'
* 'tB' and 'tW' cuts off the ends of lines without any text
* switches to remove/ignore control characters
* left and right margins, width can be defined in command line
* bug fix: headers and footers fit within margins
* many minor changes: they are invisible to the user or described in
the manual.
FUTURE VERSIONS
---------------
I think it is not history yet, but this is the best place to inform
you about the future (of FOLD-and-PRINT).
I cannot promise that there ever will be any future version of
FOLD-and-PRINT, but I am afraid that there will. I have improved this program
for more than 3 years (for a few days each year...), to add something I need,
remove something I dislike, etc. Many changes in this version were suggested
by the users.
EXIT CODES AND ERRORS
=====================
If you are interested what exit codes FOLD-and-PRINT returns, here is
the brief list:
0 - everything was okay, the text has been printed
1 - the help screen has been displayed
2 - there were problems with command line parameters or FOLD variable
4 - there were problems with the printer configuration file
5 - there were problems with the input file
6 - there were problems with the output file or the printer
9 - [ESC] has been pressed
And here you have the list of all possible error messages and the
short descriptions of them:
Invalid number: -xxx
The number specified after the switch is not a valid decimal number.
Only one digit is allowed after 'b'. Negative numbers are allowed
only after 'r'. Zero is never allowed.
Invalid data in printer definition file 'FILE.EXT'.
Invalid hex code in printer definition file 'FILE.EXT'.
Invalid number in printer definition file 'FILE.EXT'.
Invalid structure of printer definition file 'FILE.EXT'.
The printer configuration file is invalid: contains invalid number of
entries or/and invalid entries or/and the heading or/and ending is
missing. Please refer to the user's manual for the detailed
description of this file.
Invalid tab width.
The tab width set with 'g' must be within the range from 2 to 32.
Invalid switch: '-Z'.
The switch ('Z' in the example) is unknown and has no meaning.
Margin too large.
The width of the margin is too big in comparison to page width.
Missing file name in command line.
You have not given any file name in the command line. If the name of
the file you want to print begins with '-', use '-' before.
No pages to print.
You have specified an invalid range of pages to print. For example:
'-f10 -l5' or '-s1 -oe'.
No printable text in input file 'FILE.EXT'.
The file to be printed is empty. This is detected only in the text
analyzis mode.
Non-printable character (ASCII nnn, HEX nn).
The text to print cannot contain control characters.
Not enough memory to allocate page buffer.
There is not enough memory for FOLD-and-PRINT to work in the specified
mode. Remove some TSRs and retry.
Too long printer control sequence.
The printer control sequences must not be longer than 128 characters.
Too many columns specified for this paper width.
The page is too narrow or/and the number of columns is too big.
Too many files specified in command line.
You can specify only one file to print in the command line.
Too many TABs in line.
Some line contains too many TAB characters to fit in the internal line
buffer. Line is too long.
Unable to open configuration file 'FILE.EXT'.
The printer configuration file should be located in the current
directory or in the FOLD.EXE home directory.
Unable to open input file 'FILE.EXT'.
The file to be printed is missing or/and has another name.
Unable to open output file 'FILE.EXT'.
The output file cannot be opened / created. This can happen only if
you tell FOLD-and-PRINT to print to the file.
Unable to print.
FOLD-and-PRINT encountered problems with a printer while printing.
Abnormal program termination
Divide error
Null pointer assignment
These messages come from the run-time library and should *never*
appear. Let me know if they do... Describe in detail what have you
done to FOLD-and-PRINT that it stopped this way.
End of Appendix to User's Manual
********************************