Einige Erfahrungen im Umgang mit 3M-"Happy Text"
(c) Dr.W.Näser, Marburg ab 07/89
Die mir zugängliche Version von 3M-"Happy Text" habe ich am 9. Juni
1989 bei der Fa. Büromaschinen-Hauptfleisch in 3540 KORBACH erwor-
ben. Seitdem habe ich verschiedenste Erfahrungen mit dem Textsystem
machen können.
Vom 17.6.89 an habe ich mich, in kürzeren Abständen, mit dem Pro-
gramm beschäftigt und es einige Male im Vergleich mit anderen "Text-
prozessoren" (Word 3, Word 4, Wordstar 4) und Editoren (Norton-Edi-
tor, Q-Dos2-Editor, modifizierter Turbo-Pascal-Editor) getestet.
Allmählich konnte ich dabei Verständnis gewinnen für gewisse Pro-
grammstrukturen in HT,um mich konsequenterweise näher zu befassen
mit TASTATUR.TRB, DRUCKER.TRB und DATUM.TXT, bes. um einige Funk-
tions- und andere Steuerungstasten umzubelegen, damit HT vom Arbei-
ten her "kompatibler" würde zu den gewohnten Textverarbeitungs- und
Editorprogrammen. Ich habe dabei so gut wie alle "von außen her"
(also durch PATCHEN bzw. UMEDITIEREN) zugänglichen Möglichkeiten
ausgeschöpft. Am Rande dieses Weges habe ich immer wieder gestaunt
über die Leistungsfähigkeit von HT bei einer (auf's Notwendige re-
duzierten) Programm-Größe von nur rund 65 kB. HT weckt in jedem in-
teressierten "Textverarbeiter" bzw. "Editor" ein gerütteltes Maß
von KREATIVITÄT und hat als weiteres großes Plus eine gewisse ope-
rationelle ANPASSBARKEIT, wobei allerdings DATUM.TXT in bezug auf
Umbelegbarkeit (customizing) noch mehr an Positionen bieten könnte,
so z.B. im Hinblick auf die leidige Cursor-Steuerung, HT's eigent-
liche "Achilles-Ferse". Auch an den nur unzureichend realisierten,
nach jedem <Return> sich verabschiedenden "Einfüge"-Modus kann man
sich nur schwer gewöhnen, überschreibt nur zu oft unrettbar ent-
schwindende Zeilen - das brauchte nicht zu sein, einfache Editoren
wie Q-DOS2-Edit oder meine abgespeckte Version des Turbo-Pascal-
Editors (der sogar auch Suchen, Ersetzen (auch mit Optionen), Im-
und Export von Textdateien bietet) beweisen dies.
Großes PLUS ist der auf DOS-, bzw. ASCII-Ebene realisier- und somit
auch korrigierbare BLOCKSATZ. K e i n Editor oder Textprozessor von
65 kB Umfang bietet so etwas.
Etwas anfällig gerät manchmal der automatische Zeilen-Umbruch (word
wrap), worauf 3M ja auch hingewiesen hat. Da sind z.B. der mit Tur-
bo-5-Professional kompilierbare Editor MEMO.EXE und der von XTree
Pro aus aktivierbare, voll Wordstar-kompatible Editor "1 Word" bes-
ser dran. Aber man kann ja nicht alles haben.
Wünschenswert wäre auch eine sog. DOS-SHELL, wie sie sogar einfache
ASCII-Editoren (NED, QED, TED) besitzen; vielleicht ließe sich die
Funktion noch leicht nachprogrammieren. Es wäre in diesem Zusammen-
hang nicht übel, wenn das Programm entweder als Quell-Code oder zu-
sammen mit entsprechenden Konfigurationsroutinen verfügbar wäre.
Es werden im folgenden die ersten Schritte mit HT, damit verbundene
Erfahrungen sowie alle Modifikationsstufen beschrieben. Nachstehen-
de Äußerungen sind nicht chronologisch entstanden und wurden öfter
überarbeitet. Besondere Aufmerksamkeit galt zunächst dem Tastatur-
treiber, später anderen Möglichkeiten individueller Konfiguration.
Deshalb sollen alle Schritte genau wiedergegeben werden.
Dieses Dokument ist als reine ASCII-File angelegt und bis auf weni-
ge Ausnahmen nicht mit HT-üblichen Drucksteuerzeichen versehen; der
Text soll auch mit anderen Editoren bzw. Textprozessoren weiteredi-
tiert werden können. Die Druckmöglichkeiten wurden zuletzt getestet
(s. unten und DRUCKER2.TST).
Schreibkonvention: HT's Bildschirm reagiert allergisch auf das Dol-
larzeichen (Scroll-Bremse); daher wird dieses allgemein durch "%"
ersetzt.
Im Juli 1990 Dr.W.Näser
HT-TASTATURTREIBER
Hier der als 1. Modifikations-Stufe (Ende 6/89) umdefinierte Ta-
staturtreiber:
TASTATUR.TRB neu | Funktion | alt
----------------------------------------------------
[0;118;0;92p ^PgDn zum Dateiende sF9
[0;132;0;67p ^PgUp zum Dateianfang F9
[0;73;0;93p PgUp n.oben blättern sF10
[0;81;0;68p PgDn n.unten blättern F10
[0;83;0;84p DEL Zeichen löschen sF1
[0;82;0;59p INS Zeichen einfügen F1
[0;37;0;85p aK Zeile löschen sF2
[0;49;0;60p aN Zeile einfügen F2 *
[0;60;0;102p F2 Textspeicher abfragen ^F9
[0;115;0;82p ^<- Cursor z.vorigen Wort INS *
[0;116;0;81p ^-> Cursor zum n.Formtab PgDn *
[0;117;0;73p ^END Cursor z.nächst.Abs. PgUp *
[5;130p ^E Scan 5 für é
[3;135p ^C Scan 3 für ç
[1;133p ^A Scan 1 für à
[15;162p ^O Scan 15 für ó
[21;151p ^U Scan 21 für ù \ Umbelegung
[0;122;21p Alt-§ für § / von 21
[0;17;251p Alt-w 2. Wurzel aus
[0;25;253p Alt-p Potenzrechnung (hoch 2)
[0;35;37p Alt-h vom-Hundert-Rechnung
[0;34;"Mit freundlichen Grüßen"p Alt-g Grußformel
[0;30;"Sehr geehrte Damen und Herren,"p Alt-a Anredeformel
| ACHTUNG: Umbelegung interferiert mit NORTON-EDITOR; |
| vor dessen Aufruf neu booten !!! |
Dieser funktionsfähige Tastaturtreiber ist in der Lage, eine anson-
sten unveränderte HT-Version zu steuern, und kann zu diesem Zweck
als Textelement exportiert (auskopiert) werden. PRINZIP der obigen
Tastatur-Umbelegung nach ANSI war die bekannte Reihenfolge:
Startsignal [ hier wird mit der
Zeichen für eine ALT-Taste 0 Tastenkombination
Trenner 1 ; Alt-§ (Scan 0/122)
Zeichen für Taste (Scan) 122 (Beispiel) die Ausgabe des §
Trenner 2 ; erzeugt
Neues Zeichen für Taste 21
Schlußsignal p
Die Graphiktasten-Umbelegungen des Original-Treibers wurden hier
getilgt. <Alt-p> u.<Alt-w> bewirken im Rechen-Modus das Potenzieren
und Radizieren. <Ins> entspricht <Space> im Einfügemodus bestimmter
Text-Editoren. ACHTUNG: Korrekt (d.h.arbeitsfähig) wird der Tasta-
turtreiber nur dann geladen, wenn beim Booten die CONFIG.SYS m. dem
Eintrag 'device=ansi.sys' gelesen wurde und das ANSI.SYS auf der
Betriebssystemebene verfügbar ist. Die sog. ANSI-Sequenzen des Ta-
staturtreibers (z.B. [0;122;21p) dürfen beim Laden nicht auf dem
Bildschirm erscheinen. Werden sie wie folgt abgebildet: <-[0;122;
21p , so besteht kein Zugang zum ANSI.SYS. Wird eine Tasten-Umdefi-
nition nicht benötigt, sind TASTATUR.TRB, ANSI.SYS und CONFIG.SYS
überflüssig. Alle Eigenschaften des modifizierten Tastaturtreibers
gelten auch beim Einladen von "HT" im PPC 512. - Die Tasten(um)de-
finition von "HT" befindet sich vermutlich innerhalb der ersten 2-3
Sektoren von HT.CHN. Der dort vorhandene Code spricht an auf die in
DATUM.TXT (s.u.) gegebenen Voreinstellungen.
SINN UND UNSINN DER HT-TASTATURBELEGUNG
Ein * signalisiert, daß die betreffende 'alte' Funktionstaste nun
so umbelegt ist, daß sie nicht mehr HT-kompatibel parallel verwen-
det werden kann. Grund für obenstehende Umdefinition ist eine teil-
weise unverständliche Funktionstastenbelegung bei HT. Wer öfter mit
anderen Editoren und Textverarbeitungsprogrammen umgeht, ist wenig
erfreut, wenn er mit <Del> plötzlich eine ganze Zeile getilgt hat.
Auch die Textblätterfunktion von <F9> und <F10> ist wenig einsich-
tig, das gilt überhaupt für die gesamte Cursorsteuerung. Immer wie-
der ist man versucht, mit <Home> zum Zeilenanfang zu gehen, und die
Gewöhnung an die entsprechende <Return>-Funktion fällt schwer.
Auch TEXT.HLP läßt sich verändern; vorgesehen sind zwei Hilfsbild-
schirme; läßt man die Druckerinformationen weg, kann man einen 2.
Bildschirm nach eigenen Wünschen gestalten, das ist einfacher als
das Patchen der Hilfsbildschirme im Norton-Editor.
Hier die beiden neu konzipierten Hilfe-Seiten (Dollarzeichen = %):
CURSOR + BLÄTTERN KORREKTUREN
1 Zeichen re. --> Zeichen einfügen INS
1 Zeichen li. <-- Zeichen löschen DEL
1 Zeile runter Dn *Zeile einfügen/löschen aN/aD
1 Zeile rauf Up *Inhalt ganz/ab ¦ löschen aK/aL
zum Zeilenende END Einfügen/Zeile ein F3
zum Anfang Folgezeile Home Einf.aus/Text einziehen sF3
ganz hoch/runter . ^Home Zeile zentrieren Esc Z
zum Folgeabschnitt ^END Text auskopieren F4
1 Wort zurück ^<-- Text einkopieren sF4
1 Tabstop weiter TAB Suchen & ersetzen F7
zum nächsten Formtab ^--> Textblock löschen Esc C
Textanfang ^PgUp
Textende ^PgDn BETRIEB
Weiterblättern PgDn Hilfe aufrufen F1
Zurückblättern PgUp ¦ Textspeicher abfragen F2
FORMATIERUNG Rechenmodus ein/aus Esc R
Randausgleich F5 \ Ansi-Bildschirm-Mode ^F5
Seitenumbruch sF5 ab
Blocksatz F6 - Cursor ¦ Nur zwischenspeichern ^F10-Cr
Blocksatz aufheben sF6 / ¦ Speichern + Quit F10-Cr-J-Cr
>>>> 1 Taste drücken für zweite Hilfe - Seite <<<<<
neuer linker Rand sF7 ASCII-/HT-Drucksteuercodes | HT-Sequen-
Neueinstellungen sF8 eingeben: zen
drucken ab Cursor Esc d GROSS-SCHRIFT Plakat %x
Zeichensatz # ein .. %Z#
1-zeilig eng/norm. . %1/2
1,5-/2-zeilig ...... %3/4
^F4 Frage nach Adreßdaten Zeilenvorschub ..... ^K
^F5 Optionen Bildschirm Seitenvorschub ..... ^L %/ o. %\
^F6 Block löschen/<Return> Breitschrift ....... ^N %b 27,33,36
^F7 Text ab hier drucken? Engschrift (Elite) . %e 27,33,1
^I = TAB Schmal-/Dichtschrift ^O %d 27,33,4
^M = <CR> Normalschrift ...... ^R %n 27,33,0
aA Anredeformel Druckerstop ........ ^S %% <Alt 19>
aG Grußformel unterstreichen e/a . %u 27,45
aH vom-Hundert-Rechnen doppelt hoch e/a ... %h 28,86,1
aP Potenzrechnen (Quadrieren) Fett e/a ........... %f 27,69
aW [Quadrat-]Wurzel ziehen aus Kursiv e/a ......... %s 27,52
aF1 Hintergrundzeichen? Proportional e/a ... %p 27,33,3
aF9 Textanfang Seite: NLQ e/a ............ %q 27,120
aC Bellsoft-PopCALC aktivieren Hochstellen e/a .... %T 27,83,0
(sofern resident) Tiefstellen e/a .... %T 27,83,1
>>>>> Bitte eine Taste für Rückkehr zu HT <<<<<
* Beim Initialisieren von HT wird übrigens der HILFSTEXT mit in den
Arbeits- oder Programmspeicher übernommen; ein hernach mittels HT
geänderter Hilfstext wirkt erst nach Neu-Starten des Programms.
TEXT.MSG kann wie jede andere Ascii-Datei bearbeitet werden. Hier
die modifizierte Datei:
1lösche Zeile
5Sichern? [j/n] j
1ESC-Befehl:
0Ersetzen? [j/n]
0Ersetzen durch:
0Weiter j/n/a?
0PageDown
0PageUp
4keine Zeile einfügbar
0Text kopieren als:
4zuviele Zeilen
0Text - ANFANG
0Text - ENDE
0Suchbegriff:
4über Format hinaus
0auskopieren als "":
0einlesen aus Datei:
4Datei ist leer
3Neuer linker Rand
0Hintergrundzeichen:
5Text ab hier drucken? [j/n oder n-mal] j
0Mit <Return> trennen!
0RAND und TAB-STOPs setzen
5Neue Datei? [j/n] n
1Zeilenzahl/Seitenumbruch:
1Mit Cursor Balken bewegen/<RETURN>
0Taste ==> <RETURN>:
1Textanfang Seite:
5Seitengrenze lassen? [j/n] j
1aktuelles Laufwerk:
1Welchen Text laden:
5HAPPY TEXT verlassen? [j/n] n
0speichere Text, überschreibe letzte Fassung
0lösche Textspeicher - bitte warten
01/4 AT-SW¦ 2/5 AT-COLOR ¦ 3/6 PC-XT
4Spalten-Tab nicht gefunden
4Zeilen-Tab nicht gefunden
0Block löschen/<RETURN>
5Wirklich löschen? [j/n]
1Welche Farbe: 1 < Farbe < 128?
1genauen Pfad eingeben:
5Text vorhanden; überschreiben? [j/n]
5Diskette voll: wechseln/Abbrechen? [j/n]
2An welchem Terminal arbeiten Sie? [1-9]
4Text zur Zeit gesperrt
4Datei kann nicht bearbeitet werden
4Pfad nicht gefunden
4Drucker nicht bereit; Abbruch <ESC>
4drucke Text - bitte warten
1Bitte Kennwort eingeben:
1Kennwort nicht gefunden
1Abkürzung nicht eindeutig:
1Welches Kennwort?
4Keine Adreßdaten vorhanden
Zu achten ist darauf, daß am Schluß einer Frage [j/n] bzw. Eingabe-
Aufforderung (mit : abgeschlossen) mindestens eine LEERSTELLE frei
bleibt für die spätere Eingabe der Antwort.
BLOCKSATZ, RANDAUSGLEICH, ZEILENUMBRUCH, ZENTRIERUNG
Am jeweiligen Zeilenende warnt HT durch einen Piep-Ton analog dem
Klingelzeichen der Schreibmaschine. Dieser Piepton sollte idealer-
weise den HT-gemäßen automatischen Zeilen-Umbruch einleiten; dieser
wirkt innerhalb einer voreinstellbaren Zone, ist jedoch möglicher-
weise inaktiv, sobald Zwischentext eingefügt wird und/oder die im
Zeilenlineal durch "(--)" markierte Umbruch-Zone zu eng ist. Somit
ist HT kein "Fließtextprozessor" wie etwa WORD oder DESKTOP. Wird
schnell gearbeitet und nicht auf die HT-gemäßen Regeln geachtet,
kann so leicht die Folgezeile überschrieben werden, denn HT arbei-
tet von Natur aus im Überschreib-Modus, sofern nicht mit <F3> für
jeweils eine Zeile in den Einfüge-Modus gewechselt wird. Diese für
HAPPY TEXT charakteristische Arbeitsweise bedeutet in jedem Falle
eine mehr oder weniger unangenehme Umgewöhnung für alle diejenigen,
die von einem anderen Textsystem aus zu HT "umsteigen" müssen und
über wenig "Computer-Affinität" verfügen. Es wäre folglich zu über-
legen, ob nicht ein schaltbarer INSERT-Modus und damit eine Fließ-
text-Prozedur in HT eingebaut werden könnte, falls es die Programm-
Substanz zuließe - was zu hoffen ist aufgrund der systemnahen HT-
Programmierung. Was mit dem nur 52 kB großen PC-Tools-DESKTOP geht,
müßte auch im vergleichbar großen "HT" funktionieren. Wünschenswert
wäre in diesem Rahmen auch, daß WORDSTAR-kompatibel bestimmte Text-
blöcke markiert, kopiert, gelöscht und beliebig verschoben werden
könnten (^KB - ^KK - Optionen).
Der mit <F5> geschaltete RANDAUSGLEICH ist, zusammen mit dem BLOCK-
SATZ, die eigentliche Stärke von Happy Text und hebt dieses preis-
werte Programm deutlich ab von den sog. DOS- oder ASCII-Editoren.
Je öfter man mit HT arbeitet, umso deutlicher wird, daß hier sowohl
kreative (und auch korrektive!) Chancen liegen (besonders für am
Einzelwort orientierte Schreiber, zum Beispiel Terminologen, Didak-
tiker, Lyriker) wie eine gewisse Achillesferse für gezwungenermaßen
schneller arbeitende, "Fließtext"-orientierte Textproduzenten.
Es handelt sich dabei um eine absatzweise REFORMATIERUNG, die etwa
der im NORTON-EDITOR oder in "QEdit Advanced" entspricht; der Vor-
gang läuft jedoch nicht kontinuierlich ab (und rezeugt die für bei-
de Editoren typischen, ausgeprägten Flatter-Ränder); HT zwingt den
Benutzer, an passender Stelle per <RETURN> Wort-Trennungen vorzu-
nehmen: ein Trennstrich wird dann automatisch gesetzt und, wenn re-
formatiert und das ehemals getrennte Wort neu zusammengefügt wird,
gelöscht. Der Randausgleich mit Trennzwang empfiehlt sich besonders
bei langen Wortzusammensetzungen (Gefahr extremer Flatter-Ränder)
und schwierigen Lautkombinationen. Zu loben sind die hohe Effizienz
und Zuverlässigkeit der Reformatierung sowie die Tatsache, daß die
Graphie /ck/ automatisch durch /k-k/ getrennt wird.
Nach Reformatierung und Worttrenn-Optimierung wird mit <F6> der
BLOCKSATZ aktiviert bzw. mit <Shift-F6> deaktiviert. Im Gegensatz
zu anderen Textprogrammen (z.B. WORD) gelten beide Operationen -
auch in geladenen ASCII-Fremd-Dateien - ab der entsprechenden Zeile
im Absatz. <sF6> beseitigt alle unnötigen Leer-Stellen (Blanks),
kann folglich auch zur Datei-Ökonomisierung dienen.
Eine weitere LAYOUT-Möglichkeit bietet das ZENTRIEREN des Zeilenin-
haltes (per <Esc-Z>), besonders vorteilhaft bei der Gestaltung an-
spruchsvoller "Titeleien" nach Art der alten "Schreib-Meister".
Das Operieren mit (Shift-)<F5> und (Shift-)<F6> kann einerseits zum
Hemmschuh werden und zur Pedanterie führen (typographisches wie
sprachliches Sich-Festbeißen innerhalb des Absatzes), andererseits
mehr als in jedem vergleichbaren Textprogramm dazu dienen, beim
BLOCKSATZ systembedingte Lücken zu eliminieren und so ein Optimum
zu realisieren.
HT-ZEICHENVORRAT
Hier die Reihe der mit <Ctrl n> (n=Buchstabe) eingebbaren Zeichen;
diese können auf DOS-Ebene, jedoch nicht in Verbindung mit einem
HT-Druckertreiber, als Drucksteuerzeichen genutzt werden, so z.B.
Ctrl-L für den Seitenvorschub und Ctrl-N für Breitschrift.
Taste Dez Hex Zeichen / *Funktion
-----------------------------------------------
Ctrl-a 1 00 Leeres Gesicht
Ctrl-b 2 01 volles Gesicht
Ctrl-c 3 02 Herz
Ctrl-d 4 04 Karo
Ctrl-e 5 05 Kreuz
Ctrl-f 6 06 Pik
Ctrl-g 7 07 stehendes kleines Ei
Ctrl-h 8 08 *Cursor 1 Zeichen nach links
Ctrl-i 9 09 *Cursor zum nächsten Tabstop
Ctrl-j 10 0A *jetzt: Cursor 1 Pos. weiter
Ctrl-K 11 0B *Zeilenvorschub
Ctrl-L 12 0C *Seitenvorschub
Ctrl-m 13 0D *Line Feed + Car Return
Ctrl-N 14 0E
*Breitschrift
Ctrl-O 15 0F ¤ *Schmalschrift; nur nach Tab-Sprung eingebbar
Ctrl-p 16 10 volles Dreieck nach rechts
Ctrl-q 17 11 volles Dr-eieck nach links
Ctrl-R 18 12 *Normalschrift]
Ctrl-s 19 13 doppeltes Ausrufezeichen
Ctrl-t 20 14 Word-Absatzmarker, Zeichen-Reset <Alt 20>
Ctrl-u 21 15 § Paragraph
Ctrl-v 22 16 liegender Quader
Ctrl-w 23 17 Zweispitz auf Grundlinie
Ctrl-x 24 18 Pfeil nach oben
Ctrl-y 25 19 Pfeil nach unten
Ctrl-z 26 1A Pfeil nach rechts, *Dateiende-Signal (bei
QED, "copy con" u. bei div. Programmen)
sowie *Drucker-Stop
Vgl. hierzu auch den oben erläuerten Tastaturtreiber. Nach dem Ver-
lassen von HT bleibt eine Tasten-Umdefinition erhalten, bis der PC
neu gebootet wird. Später sollte ggf. über eine BATCH-Datei der al-
te Zustand wiederhergestellt werden, ggf. über sog. PROMPT-Befehle,
z.B. PROMPT $e[35;124p (wenn man Taste # =ASCII 35 drückt, wird das
sog. Piping-Zeichen | ausgegeben) oder, als Rückgängigmachung von
Zle 1 des neuen Tastaturtreibers: PROMPT $e[0;71;0,71p (die <Home>-
Funktion wird reaktiviert).Im Zuge meiner Veränderungen wurden fol-
gende Umbelegungen beseitigt:
[1;133p ^A für á
[3;135p ^C für ç
[5;130p ^E für é
[10;106p ^J für j
[15;162p ^O für ó
[21;151p ^U für ù
Daher lautet der modifizierte Tastatur-Treiber:
[0;71;0;13p <Home> Scan 71 für Ascii 13 Hex 0D (Return)
[0;17;251p Alt-w 2. Wurzel aus
[0;25;253p Alt-p Potenzrechnung (hoch 2)
[0;35;37p Alt-h vom-Hundert-Rechnung
[0;34;"Mit freundlichen Grüßen"p Alt-g Grußformel
[0;30;"Sehr geehrte Damen und Herren,"p Alt-a Anredeformel
In einem logischen nächsten Schritt wurde nun der gesamte Tastatur-
Treiber ersetzt durch die teilweise mit den erwähnten Prompt-Befeh-
len arbeitende Lade- u. Schließdatei "HT.BAT" mit folgendem Inhalt:
@cls
c:
esc [0;71;0;13p \
esc [0;17;251p |
esc [0;25;253p |
esc [0;35;37p |
esc [0;34;"Mit freundlichen Grüßen"p | ANSI.SYS und das
esc [0;30;"Sehr geehrte Damen und Herren,"p | Utility ESC.COM
3m |-- müssen aktiv bzw.
esc [0;71;0;71p | im HT-Pfad vorhan-
esc [0;17;0;17p | den sein!
esc [0;25;0;25p |
esc [0;35;0;35p |
esc [0;34;0;34p |
esc [0;30;0;30p /
HT.BAT wurde auch im Subdirectory c:\edit\ht angelegt; von dort aus
kann HT entweder durch HT.BAT mit a l l e n Tasten-Umbelegungen ge-
startet werden oder durch den Aufruf "3M" mit Konfiguration n u r
durch DATUM.TXT. Wird HT.BAT mit errorlevel-Entscheidungen ausge-
stattet, so kann zwischen mehreren Tasten-Umkonfigurationen gewählt
werden, je nach textuellen/operationellen Erfordernissen.
Die modifizierte HTC.BAT lädt d. Bellsoft-PopCALCulator, einen sehr
nützlichen Taschenrechner, in das RAM und macht ihn so von "HT" aus
jederzeit per <Alt-C> verfügbar:
cls
c:
cd edit
cd ht
calc1
[...] <- hier ESC-Sequenzen für HT
3m
release <- nur sinnvoll, wenn vorher MARK.COM aktiviert
[...] <- hier ESC-Sequenzen für DOS-Normalbetrieb
mark
Jetzt die mit Alt-n bereits erzeugbaren Zeichen und Funktionen:
Taste Scan [0+] Zeichen(kette) / ¦ Funktion
Alt-A 30 Sehr geehrte Damen und Herren,
Alt-C Aktivieren des residenten Popcalc-Taschen-
rechners von BELLSOFT (gehört nicht zu HT,
ist innerhalb von HT jedoch voll funktions-
fähig)
Alt-D 32 ¦ gesamten Zeilen-INHALT löschen [früher DEL]
Alt-G 34 Mit freundlichen Grüßen
Alt-H 35 % Prozentrechenmodus
Alt-K 37 ¦ ZEILE entfernen [früher sF2]
Alt-L 38 ¦ Zeilen-INHALT ab Cursor tilgen [früher Esc-l]
Alt-N 49 ¦ neue ZEILE schaffen (einfügen) [früher F2]
Alt-P 25 ² Quadraturmodus
Alt-S - [mein Vorschlag für die DOS-SHELL]
Alt-W 17 ¹ Radiziermodus
Alt-K u. Alt-L entsprechen dem NORTON-EDITOR, Alt-N wurde der Funk-
tion Ctrl-N im Turbo-Editor angeglichen, Alt-D analog zum Norton-
Editor und als Kompromiß zur früheren HT-Funktion DEL eingerichtet;
Alt-D ist eine sehr nützliche, komfortable Editierhilfe.
Mit den noch freien Kombinationen können in TASTATUR.TRB (s.o.) zu-
sätzliche Schrift- bzw. Graphikzeichen bzw. (einzeilige) Text-FLOS-
KELN definiert werden.
ESC-Kombinationen
Sinnvollerweise werden diese so belegt, daß der hinter <Esc> einge-
tastete Buchstabe dem Initial der bewirkten FUNKTION entspricht, al-
so Esc-A = Adreßdateninfirmation, Esc-B = Bildschirm-Info usw. Die
Esc-Befehle erinnern an WORD und bedeuten von dort aus eine nur ge-
ringe Umgewöhnung.
Der ESC-Modus wird verlassen durch nochmalige Eingabe von <Esc>.
Wahlweise können für jeweils <Esc n> auch alternative Kombinationen
eingetastet werden, wie aus nachstehender Tabelle hervorgeht:
Taste Scan entspricht Funktion (--- unbenutzt)
Esc-A 97 ^F4 keine Adreßdaten vorhanden
Esc-B 98 ^F5 Bildschirm-Konfigurationen
Esc-C 99 ^F6 Block löschen/<Return>
Esc-D 100 ^F7 Text ab hier drucken? (j/n oder n-mal)
Esc-E 101 ^F8 ---
Esc-F 102 ^F9 ---
Esc-G 103 ^F10 Sichern? [j/n]j
Esc-H 104 aF1 Hintergrundzeichen ein/aus
Esc-I 105 aF2 --- (früher Hilfe)
Esc-J 106 aF3 ---
Esc-K 107 aF4 ---
Esc-L 108 aF5 --- (früher ab Crsr -> löschen)
Esc-M 109 aF6 ---
Esc-N 110 aF7 ---
Esc-O 111 aF8 ---
Esc-P 112 aF9 Textanfang Seite: (Paginierung)
Esc-Q 113 aF10 ---
Esc-R 114 Rechenmodus ein/aus
Esc-S 115 ^<- Cursor 1 Wort nach links
Esc-T 116 ^-> ---
Esc-U 117 ^END Cursor/Blättern zum Folgeabsatz
Esc-V 118 ^PgDn Cursor/Blättern zum Textende
Esc-W 119 ^Home Cursor in selber Spalte hoch/runter
Esc-X 120 ---
Esc-Y 121 ---
Esc-Z 122 Zeileninhalt zentrieren (Norm ist das
individuell eingestellte Zeilenlineal)
HT-LADEDATEIEN
In HT.CHN, Sektor 00 findet sich innerhalb des Lade-Bereichs die
Angabe darüber, welche Datei-Typen unter der Rubrik "Text" nicht
innerhalb der "Ladeliste" erscheinen sollen:
.SYS.NDX.BIN.TRB.COM.EXE.NAT.LIB.OBJ.TMP.CHN.KEY.OVL
Wird diese Information 'genullt', so gibt HT eine Lade-Liste aus,
die sämtliche Dateien des Subdirectories enthält, in dem sich das
HT-Programm befindet. Sollen beispielsweise HT-Treiberdateien in
der Ladeliste erscheinen, so ist nur ".TRB" zu nullen. ".TRB" habe
ich durch ".TPU" u. ".KEY" durch ".ARC" ersetzt, weil mir das sinn-
voller erschien, denn weder solche Units noch komprimierte Archiv-
Files lassen sich textredaktionell bearbeiten. Die aktuelle Negativ-
Liste lautet also nun:
.SYS.NDX.BIN.TPU.COM.EXE.NAT.LIB.OBJ.TMP.CHN.ARC.OVL
Solche Dateien können allerdings "von Hand" geladen, d.h. müssen
mit dem korrekten individuellen Dateinamen zum Laden eingegeben
werden. HT verhält sich dann wie der Norton-Editor: es werden nur
bestimmte Zeichen geladen.
DIE INITIALISIERUNGS-DATEI "DATUM.TXT"
Nachstehend eine bildschirm-gerechte Wiedergabe von DATUM.TXT mit
einigen Erläuterungen:
24.02.88 [Erstellungsdatum] * = durch Installationsroutine
6.2 PCDOS [Version + Betriebssystem] eingestellte Parameter
C: [* Betriebslaufwerk]
C: [* Speicherlaufwerk]
1000 [* max. Datensätze] F-Codes; Erläuterung s. unten
/ | \
Tastenbelegung neu / | \
CAN CR C1 C2 C3 C4 HO TB WB ZB DA DE SI SU BIL MEN CLR DRU ZL RZL
DC IC IL DL aus ein NLR HGZ TE TA FOT RDG BLK AUF NEU SPA FRE SPR UMB ZEN
ASC PAG INF CAL DTA WOZ UWG KO ADH
000 013 075 077 080 072 119 009 081 073 132 118 103 065 098 068 099 100 037 038
083 082 049 037 062 087 090 104 061 086 116 063 064 089 091 117 060 079 088 122
116 112 059 114 015 115 129 097
Tastenbelegung alt
000 013 075 077 080 072 071 009 068 093 067 092 115 065 098 066 099 100 083 108
084 059 060 085 062 087 090 104 061 086 081 063 064 089 091 073 102 079 088 122
116 112 105 114 015 082 117 129 097
[Zeilen-Lineal in 'normaler', nicht textindividueller Einstellung]
----+----10---+----20---+----30---+----40---+----50---+----60-(-+-)--70---+----8
0---+---90----+---100---+---110---+---120---+---130---+---140---+---150---+---16
0---+---170---+---180---+---190---+---200---+---210---+---220---+---230---+---24
ABCD [* angegebene Systemlaufwerke] (--) = rechte Randzone; hier
1 Zeilenumbruch (Warnton!) und
Trennvorschläge wirksam!
DATUM.TXT enthält alle für den Programm-Ablauf nötigen Tasten-Kon-
figurationen und sonstigen Betriebsparameter; diese werden festge-
legt durch die Installationsroutine HTINST. Jede einzelne Tasten-
Belegung ist durch einen Buchstaben-Code (F-Code) und eine entspre-
chende dreistellige ZAHL vertreten; die Reihenfolge der Codes darf
nicht vertauscht werden, sie werden nämlich von HT.CHN in festge-
schriebener Reihenfolge abgetastet. Würde hinter SPR (Cursorsprung
rechts bis Zeilenende) etwa ein weiterer Code SPL (für Cursorsprung
nach links bis Zeilen-Anfang, existiert nicht in HT) eingefügt, so
träte dieser an die Stelle des hier erwarteten UMB (Umbruch) und
würde bei Tastatureingabe des zugeordneten Scan-Codes (hier müßte
071 stehen für <Home>) als Umbruch-Anfrage interpretiert. Deshalb
ist es leider unmöglich, die fehlende HOME-Funktion nachträglich
einzubauen, ohne in HT.CHN einzugreifen, wozu dessen Quell-Code nö-
tig wäre. Andererseits läßt sich, wie aus obiger Abbildung hervor-
geht, DATUM.TXT in begrenztem Umfang benutzergerecht modifizieren:
als reine ASCII-Datei nämlich per geeignetem DOS-Editor (HT kann
diese Datei nicht laden).
Nachstehend der Versuch, die in DATUM.TXT vorhandenen Codes und ihre
Funktionen zu erklären; zugrunde liegt die bereits für unsere Zwecke
(Editorkompatibilität) modifizierte Datei, wo verschiedene Scancodes
benutzergerecht ausgewechselt wurden:
HT-Code Bedeutung Scan Taste Funktionserklärung
-----------------------------------------------------------------
CAN ? 000 nicht manipulieren!!!
CR Car Return 013 Line Feed + Car Return
C1 Cursor links 075
C2 Cursor rechts 077
C3 Cursor runter 080
C4 Cursor rauf 072
HO Cursor hoch 119 ^Home Cursor in selber Spalte
TB Randzone ? 009 erzeugt '(' hoch/ru.
WB Weiterblättern 081 PgDn
ZB Zurückblättern 072 PgUp
DA Dateianfang 132 ^PgUp
DE Dateiende 118 ^PgDn
SI Sichern [?] 103 ^F10
SU Suchen/Ersetzen 065 F7
BIL Bildschirm-Modus 098 ^F5 Ansi-Bildschirm-Mode festlegen
MEN Programm-Ende 066 F10 kompatibel zu WED/XED
CLR Block löschen? 099 ^F6 Anfrage; Befehl = Esc C
DRU ab hier drucken? 100 ^F7 Anfrage; Befehl = ESc D)
DC delete character 083 DEL
IC insert character 082 INS
IL insert line 049 aN neue Zeile einfügen
DL delete line 037 aK entferne ganze Zeile
aus Text auskopieren 062 F4
ein Text einkopieren 087 sF4
NLR neuer li. Rand 090 sF7
HGZ Hintergrdzeichen? 104 aF1
TE Texteinfügen ein 061 F3
TA T.einfügen aus 086 sF3
FOT Form-Tab 116 ^->
RDG Randausgleich 063 F5
BLK Blocksatz 064 F6
AUF Blocksatz aufheb. 089 sF6
NEU Neueinstellungen 091 sF8
FRE Frei Textspeicher 060 F2
SPA Sprung -> Absatz 117 ^End Sprung zum nächsten Absatz
UMB Seiten-Umbruch 088 sF5
ZL Zap Line 037 aK Lösche Text in Zeile
Pag Beginn Textseite 112 aF9
Inf Info, Hilfe 059 F1
ASC ESC - <T> 116 Esc T Funktion unbekannt
CAL Kalkulator[modus] 114 Esc R
DTA Dezimaltabulator 015 TAB
WOZ 1 Wort zurück 115 ^<--
RZL ZapLine right 038 aL Lösche Zeileninhalt ab Cursor
UWG ? --- ---
KO ? 129 erzeugt '}'
ADH Adreßdatenabfrage 097 ^F4
FAZIT:
DATUM.TXT ist der Schlüssel zur Tasten-Umdefinition. Durch Auswech-
seln der Scan-Codes kann dasselbe erreicht werden wie etwa mit einem
geänderten Tastaturtreiber. Man muß darauf achten, daß keine Doppel-
belegungen auftreten; sonst kann das gesamte HT-Programm durcheinan-
dergeraten u. es können auch Fehler beim automatischen Zeilenumbruch
auftreten. Zusätzlich kann der HT-typische Tastatur-Treiber geladen
werden, etwa zur Umdefinition von Kommandotasten für das HT-interne
Rechenutility. Auch <F8> wurde so umfunktioniert und gegen <F10> ge-
tauscht, um das Programm kompatibel mit XED und WED zu machen.
[dieser Absatz wurde mit <F6> und <sF6> und durch lexikalische Modi-
fikationen "gestylt"]
DRUCKEN MIT HT (Dollarzeichen: hier = %)
Hierzu muß mindestens ein geeigneter Druckertreiber vorhanden sein;
HT bietet eine Reihe solcher Dateien, die nach HT-Konventionen mo-
difiziert werden können: dies betrifft die HT-gemäß formulierten
ESC-Sequenzen; nähere Auskunft gibt das jeweilige Druckerhandbuch.
Der zu verwendende Treiber ist in DRUCKER.TRB umzubenennen.
Soll unter HT ein beliebiger Text ausgedruckt werden, ist die Folge
<Esc-d-j-CR> einzugeben, und nach der oben erscheinenden WARTE-Mel-
dung wird dann der Text entsprechend den HT-Befehlen gedruckt.
Die derzeit verwendbaren Druckarten werden in TEXT.HLP, S. 2 aufge-
führt (s. oben). Sie entsprechen fast zur Gänze den im Handbuch zum
NEC P 6 enthaltenen Steuerbefehlen (Escape-Sequenzen). %# (#=Indi-
vidualbefehl) muß, auch vor mehreren Textzeilen, nur einmal am An-
fang eingegeben werden. Soll jeweils nur 1 Wort hervorgehoben wer-
den, so ist dieses mit der entsprechenden Sequenz einzurahmen.
Ob die HT-Steuersymbole wirksam werden, erkennt man daran, daß beim
Ausdruck der Testdatei DRUCKER.BSP die entsprechenden Passagen um-
gestaltet werden (auf dem Bildschirm können sie hervorgehoben sein.
Das Dollarzeichen fungiert als gemeinsamer Steuerpräfix, hernach
kommt jeweils 1 weiteres, den Druckerbefehl repräsentierendes Zei-
chen, so z.B. /u/ für 'Unterstreichen', /T/ für Tiefstellen usw..
%x kann mit einer individuellen Großschrift belegt werden.
Basis des HT-Drucks ist die Voreinstellung 27,33,0 (=%n). Was den
Zeichen-Abstand n CPI betrifft, gelten die HT-Konventionen: ein mit
%e eingeleiteter Absatz wird entsprechend 27,33,1 gedruckt, bis
durch %n auf Normaldruck = 27,33,0 gesetzt wird. Neu ist innerhalb
solcher ASCII-Texte das Umschalten auf doppelte Schrifthöhe sowie
auf (4) verschiedene Zeilenabstände (%1...4) nach Art des folgenden
Musters:
$e------------------------------------------$1
$b$xMISSA$b$x $b$xVOTIVA$b$x$e1739 $b<- Musterlabel$b$n
$eMARBURGER BACH-CHOR ¦ MR 3.5.1987 <Stereo>
------------------------------------------$n$2
%b ist mit der NECP6-Sequenz 27,33,59 belegt, %b%x erzeugt die dop-
pelt hohe "Poster"-Schrift. %1 reduziert den Zeilenabstand so, daß
exakt die Breite eines CASSETTEN-Rückentitels erreicht wird: wech-
selnder Zeilenabstand sowie der Wechsel von Normal-Pica (27,33,0)
zu Elite (27,33,1) innerhalb eines Textes sind auf DOS-Ebene nicht
druckbar, können jedoch mit DOS-Editoren programmiert werden, so-
fern HT als DRUCK-PROGRAMM verwandt wird.
HT-eigene Steuerzeichen können auch mit DOS-Printercodes gemischt
werden (^N, ^R, <Alt 20>; nicht jedoch ^O). Wie AUFN653.LBL zeigt,
kann zunächst durch %e Elite = 27,33,1 aktiviert und dann mit %d
zur Dichtschrift = 27,33,4 gewechselt werden, hernach mit %e ohne
Zwischen-Schalter (Alt-20) zu Elite zurück, was die Eingabe verein-
facht. Ebenso einfach kann BREITSCHRIFT mit %b ein- und mit %e aus-
geschaltet werden; FETTSCHRIFT erfordert jedoch "Umrahmung" mit %f.
Falls am Zeilen-Ende getrennt wird, nicht "Ausschaltung" vergessen,
sonst Gefahr einer "Layout-Umkehr": Normaldruck wird hervorgehoben,
Fettdruck als unmarkiert behandelt.
Diese Art der LABEL-Erstellung erfordert einige Umgewöhnung und,
bei häufiger Dichtschrift, im Interesse der Rechtsbündigkeit viele
Probeausdrucke. Mit Geduld und Beharrungsvermögen läßt sich eine
Art "Desktop-Publishing" erreichen, leider ohne das unbedingt nöti-
ge (und die Probeausdrucke überflüssig machende) PRE-VIEW, mit dem
sich HT um einige Klassen aufwerten ließe, vor allem wenn inner-
halb eines "WYSIWYG"-Bildschirmes (bei unsichtbaren Steuerzeichen)
weitereditiert werden könnte.
Aufgrund neuester Versuche konnte eine neue HT-Startdatei erstellt
werden, welche diejenigen NEC-P6-Sequenzen enthält, die als Vorga-
ben für den HT-Druck genutzt werden können. Mehrere Varianten des
NEC-Treibers können als Errorlevels angewählt u. zum allg. Drucker-
treiber erklärt werden. Grundsätzlich wird - im Gegensatz zum ori-
ginalen HT-Programm - immer zuvor der Internationale Zeichensatz
aktiviert, mit dem alle Zeichen bis ASCII 254 verarbeitet werden.
REM HT.BAT mit Voreinstell-Optionen für den DRUCK
REM Textdokumente werden vor Laden/nach Abschluß umattribuiert,
REM damit sie nach Um-Edition von HT überschrieben werden !!!
REM (c) Dr.W.Näser, Marburg 14.7.1990
@echo off
cls
c:
esc [0;71;0;13p
esc [0;17;251p
esc [0;25;253p
esc [0;35;37p
esc [0;34;"Mit freundlichen Grüßen"p
esc [0;30;"Sehr geehrte Damen und Herren,"p
cls
attr -r *.doc
attr -r *.lbl
attr -r *.txt
attr -r *.lis
cls
echo.
echo.
echo +----------------------------------------------------+
echo ¦ HAPPY-TEXT-Druckmodi (c) W.Näser 14.7.1990 ¦
echo ¦ Mode Spalte CPI Z./180" Font Rand Skip # ¦
echo ¦ -------------------------------------------------- ¦
echo ¦ "HT" L..R 10 22 Pica - - .... 1 ¦
echo ¦ Label L 12 22 Eli - - .... 2 ¦
echo ¦ Label R 12 22 Eli 48 - .... 3 ¦
echo ¦ Label L 12 21 Eli - - .... 4 ¦
echo ¦ Label R 12 21 Eli 48 - .... 5 ¦
echo ¦ Label* L 15 22 Eli - - .... 6 ¦
echo ¦ Label* R 15 22 Eli 58 - .... 7 ¦
echo ¦ Label* L 15 21 Eli - - .... 8 ¦
echo ¦ Label* R 15 21 Eli 58 - .... 9 ¦
echo ¦ Brief L..R 12 22 Eli 12 10 ... 10 ¦
echo ¦ Brief o. Zspr. 12 22 Eli 12 - ... 11 ¦
echo +----------------------------------------------------+
echo.
echo Ist Ihr DRUCKER on-line?
echo.
err Bitte Ihre Eingabe(^C=AUS):
if errorlevel 12 goto end
if errorlevel 11 goto 11
if errorlevel 10 goto 10
if errorlevel 9 goto 9
if errorlevel 8 goto 8
if errorlevel 7 goto 7
if errorlevel 6 goto 6
if errorlevel 5 goto 5
if errorlevel 4 goto 4
if errorlevel 3 goto 3
if errorlevel 2 goto 2
if errorlevel 1 goto 1
:11
drucker 27,64;27,82,0;27,33,1;27,108,12
copy dru2212.trb drucker.trb
goto start
:10
drucker 27,64;27,82,0;27,33,1;27,78,10;27,108,12
copy dru2212.trb drucker.trb
goto start
:9
drucker 27,64;27,82,0;27,33,1;27,103;27,108,58
copy dru2115.trb drucker.trb
goto start
:8
drucker 27,64;27,82,0;27,33,1;27,103
copy dru2115.trb drucker.trb
goto start
:7
drucker 27,64;27,82,0;27,33,1;27,103;27,108,58
copy dru2215.trb drucker.trb
goto start
:6
drucker 27,64;27,82,0;27,33,1;27,103
copy dru2215.trb drucker.trb
goto start
:5
drucker 27,64;27,82,0;27,33,1;27,108,48
copy dru2112.trb drucker.trb
goto start
:4
drucker 27,64;27,82,0;27,33,1
copy dru2112.trb drucker.trb
goto start
:3
drucker 27,64;27,82,0;27,33,1;27,108,48
copy dru2212.trb drucker.trb
goto start
:2
drucker 27,64;27,82,0;27,33,1
copy dru2212.trb drucker.trb
goto start
:1
drucker 27,64;27,82,0
copy dru0000.trb drucker.trb
goto start
:start
3m
esc [0;71;0;71p
esc [0;17;0;17p
esc [0;25;0;25p
esc [0;35;0;35p
esc [0;34;0;34p
esc [0;30;0;30p
goto end
:end
cls
attr +r *.doc
attr +r *.lbl
attr +r *.txt
attr +r *.lis
cls
BEMERKUNGEN dazu:
[0] HT.BAT ist eine vorläufige Version und wurde bereits in einigen
Arbeitsschritten verbessert. Die Tastatur.Umdefinition kann leider
nicht auf die <Ctrl #>-Sequenzen erweitert werden, auch ist es un-
möglich, %n einzubeziehen.
[1] Obwohl in DRU??15.TRB Elite (27,33,1) mit 15 CPI (27,103) be-
reits definiert wurde, muß auch in HT.BAT zusätzlich 27,103 gesetzt
werden, wenn bei Rechtsspaltendruck mit 15 CPI durch 27,108,58 der
Druckerkopf korrekt positioniert werden soll. 27,108,48 bewirkt
dasselbe im 12-CPI-Modus bei Elite (27,33,1).
[2] Wichtig ist die automatische Um-Attribuierung der Textdokumente
im HT-Zugriffspfad; denn, obwohl es den Anschein hat (Festplatten-
geräusche!), überschreibt HT keine R/O-Dateien, so daß in diesem
Falle deren Um-Edition "für die Katz" wäre.
Da HT glücklicherweise keine Steuerzeichen unter ASCII 32 verwen-
det, können die druckfertigen HT-Texte komplett mit allen "Dollar-
Sequenzen" außerhalb von HT als ASCII-Texte gedruckt werden, quasi
als Layout-Entwurfsprotokolle.
Die HT-Druckertreiber dürfen nicht mit zusätzlichen (d.h. weitere
Zeilen belegenden) Optionen %. ergänzt werden. Diese werden von HT
ignoriert und können das Abtasten des Treibers sabotieren. Möglich
ist es, eine vorhandene Funktion wie %h 'halbfett ein'= 27,71 umzu-
codieren in 'doppelthoch ein'= 28,86,1, sofern auch die Ausschalt-
funktion (-h) bedacht und mit entsprechendem Code (hier = 28086000)
belegt wird.
WN110890pm RB