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