[comp.os.cpm] Printer filter

binder%fizbin.DEC@decwrl.dec.com (Sold - but we have others) (12/28/86)

Shawn Miner asks:

> ...I need a filter between the output of a word processor, and a letter
> quality printer.  The problem is that I need to do foreign language text
> processing such as the ' over another character, the umlaut etc.  This
> requires that the printer strike, backspace, and strike again.  Neat trick,
> except that the word processor will count this as three characters, and
> justify accordingly...Anyone had to 'deal' with this problem?  And /or know
> of an existing program that will filter the text for me?  Any help will be
> much apppreciated. 

I do what you're talking about frequently - probably on a daily basis.  A
simple filter may be a cheap way to deal with your problem, but it's a
band-aid, and it is guaranteed to get in your way more than it helps out. 
What you might think about instead is investing in a better word processor. 

A good word processor will *not* count a char-<BS>-char sequence as three 
characters and misjustify the output.  I use WordStar, and WS handles this
function quite well.  In the WS installation sequence, you can tell WS about 
your printer:

a.  Backspacing printer - able to backspace and overstrike the same character

b.  Non-backspacing printer - print the entire line and issue <CR> without
    accompanying <LF>, then restrike all overstruck character positions on
    the line

When editing, you enter the backspace command the same way regardless of how 
your printer is installed, and WS figures out how to print things.

WordStar is disgustingly cheap at present, at least in its IBM or Apple CP/M 
incarnations - something like $120 will get you WS Professional, which 
includes Spellstar, MailMerge, and StarIndex.  Sure, there are *nicer* WP 
packages available now, but WS is still about the most powerful one around.
If WS isn't to your liking, try some of the other good WPs, such as Paper 
Clip or WordPerfect.

Cheers,
Dick Binder   (The Stainless Steel Rat)

DEC Enet:	ASD::BINDER
UUCP:		{ decvax, allegra, ucbvax... }!decwrl!asd.dec.com!binder
ARPA:		binder%asd.DEC@decwrl.ARPA

halko@nadc.ARPA (12/29/86)

you should be able to turn off the justify option .

binder%fizbin.DEC@decwrl.dec.com (Sold - but we have others) (12/29/86)

halko@nadc.ARPA writes:

> you should be able to turn off the justify option .

This in response to my message to Shawn Miner in re: his query for a filter to
handle overstriking sequences via backspacing. 

True, you should be able to turn off the justify option.  With WordStar, and 
with most other good WPs, you can.  But turning off justification is not in
itself sufficient.  Consider the following nonsensical bit of French 
philosophy:

    Ca, c'est la boite noire de noel bien aimee qui doit rougir qu'on la
    connaitrait. 

(Rough translation, "That's the well-loved black Christmas box that must blush
so that it may be known."  Pardon the rust; I've had little opportunity to
speak French in the last 20 years.) 

This example, of course, lacks six diacritical marks that should be there. 
To print it with marks, by backspacing, requires twelve "extra" characters in
the text - with justification turned off, you'll get one awfully short line in
the middle of your text, or maybe two slightly short ones.  For drafts, and
for many other uses, that's okay.  But it's not acceptable if you're trying to
produce professional printed copy.  For that, you need justification.  A good
WP understands all this.  WordStar counts a <BS> and one following character
as no characters and thereby does not screw up the character count.  Justified
or not, the printed text will have lines as full as possible.  I surmise that 
other WPs are as intelligent.

Writing a filter to handle all the justification, character-counting, bolding, 
underscoring, line-overstriking, discretionary hyphenation, etc., that a truly
good WP does, seems to me a trifle in the line of far too much work for far
too little return, without even considering the hassle of using such a filter.
Such a filter defeats the purpose of a WP - why not just use ED and then run
the result through your filter??  No, thank you, not me.

Cheers,
Dick Binder   (The Stainless Steel Rat)

DEC Enet:	ASD::BINDER
UUCP:		{ decvax, allegra, ucbvax... }!decwrl!asd.dec.com!binder
ARPA:		binder%asd.DEC@decwrl.ARPA