#start(5.0,1.5)##pagenr("%",1)##setcount(1)##block##pageblock##count per page# #headeven# #lpos(0.0)##cpos(5.5)##rpos(11.0)# #table# EUMEL-Benutzerhandbuch #fillchar(" ")# #on("u")# #off("u")# #table end##clear pos# #end# #headodd# #lpos(0.0)##cpos(5.5)##rpos(11.0)##fillchar(" ")# #table# Teil 6: Spezialitäten #fillchar(" ")# #on("u")# #off("u")# #table end##clear pos# #end# #bottomeven# #lpos(0.0)##cpos(5.5)##rpos(11.0)# #table# #fillchar(" ")# #on("u")# #off("u")# #fillchar(" ")# 6 - % GMD #tableend##clearpos# #end# #bottomodd# #lpos(0.0)##cpos(5.5)##rpos(11.0)# #table# #fillchar(" ")# #on("u")# #off("u")# #fillchar(" ")# GMD 6 - % #tableend##clearpos# #end# #kap("TEIL 6: Spezialitäten")# #free(1.0)# 6.1. Notizbuch #free(1.0)# Das Notizbuch erlaubt es u.a., Fehlermeldungen zwischenzeitig zu speichern und am Ende einer Verarbeitung die Fehlermeldungen zusammen mit dem bearbeiteten Text im Fenstereditor anzuzeigen. #free(1.0)# Das #ib#Notizbuch#ie# wird von den Programmen 'lineform' und 'pageform' zum Sammeln von Warnungen und Fehlermeldungen verwendet. Wenn das Fenster des Notizbuches an Bildschirm eröffnet ist, können Sie es handhaben wie das gewohnte Editorfenster. Falls Sie das Notizbuch selbst beim Editieren für Notizen verwenden möchten, drük­ ken Sie statt für den Fenstereditor die Tasten an beliebiger Stelle des Bildschirms. Durch dieses Kommando wird das Notizbuch statt einer Datei gezeigt. Sie sparen somit die Eingabe eines Dateinamens und können direkt mit allen vorgestellten Editorfunktionen im Notizbuch arbeiten. #page# ____________________________________________________________________________ ................ handbuch teil6 .............. Zeile 56 \#kap("6.2. EUMEL-Zeichensatz")\# \#free(1.0)\# \#zus\# \#corner1("-5.0")\# Das EUMEL-System definiert einen Zeichensatz, der gewähr­ auf allen Maschinen überall gleich codiert werden. Dadurch ist Dateien und Programme ohne Konvertierungen zwischen EUMEL-Syst unterschiedlicher Hersteller zu übertragen. Der \#ib\#EUMEL- dem ASCII-Zeichensatz (DIN 66 003) mit Erweiterungen. \#box3("T","2","115.0")\# ................. notebook ................... Zeile 1 FEHLER Zeile 55: Modifikation nicht angeschaltet bei off: b >>> Anweisung in angegebener Zeilennummer überprüfen WARNUNG Zeile 55: Umschaltung auf gleichen Schrifttyp: trium8 >>> Schrifttyp wurde darum nicht verändert! WARNUNG Zeile 75: Überschreibung nach >\#ib(9)\#6.2.< Fehlende >>> Bitte fehlende Leerzeichen einfügen ____________________________________________________________________________ #page# 6.2. EUMEL-Zeichensatz #free(1.0)# Das EUMEL-System definiert einen Zeichensatz, der gewährleistet, daß Zeichen auf allen Geräten gleich codiert werden. Dadurch ist es z.B. möglich, Dateien und Programme ohne Konvertierungen zwischen EUMEL-Systemen unterschiedlicher Hersteller zu übertragen. Der #ib#EUMEL-Zeichensatz#ie# beruht auf dem ASCII- Zeichensatz (DIN 66 003) mit Erweiterungen. #free(1.0)# Die Darstellung der einzelnen Zeichen hängt vom Endgerät ab. Die hier aufgeführten Zeichen sind i.A. auf allen Geräten vorhanden. Ein erweiterter Zeichensatz (mit ma­ thematischen, diakritischen und griechischen Zeichen) ist nur auf Spezialgeräten verfügbar und wird deshalb hier nicht angegeben. #page# Beispiele zum Lesen der Tabelle: code (" ") -> 32 code ("m") -> 109 | 0 1 2 3 4 5 6 7 8 9 --+---------------------------------------- 3 | SP ! " \# $ % & ' | 4 | ( ) * + , - . / 0 1 | 5 | 2 3 4 5 6 7 8 9 : ; | 6 | < = > ? § A B C D E | 7 | F G H I J K L M N O | 8 | P Q R S T U V W X Y | 9 | Z [ ��\� ] ^ _ ` a b c | 10| d e f g h i j k l m | 11| n o p q r s t u v w | 12| x y z | } ~ | 13| . . . 20| | 21| Ä Ö Ü ä ö ü | 22| k ­ \# SP | 23| | 24| | 25| ß #page# Anmerkungen: 1) SP bedeutet Leerzeichen ("blank"). 2) Die Zeichen 'k', '-' und 'SP' mit den Codes 220, 221, 223 werden für die Zwecke der Textkosmetik benötigt (Trenn-'k' bei der Umwandlung von 'ck' in 'kk'; Trenn­ zeichen; geschütztes Leerzeichen). 3) Das Zeichen '\#' (Code 222) ist druckbar, während das Zeichen '\#' (Code 35) nicht druckbar ist (Einleitungszeichen für Anweisungen der Textkosmetik und Drucker). 4) Das Zeichen SP (Code 223) wird zur besseren Identifizierung invers oder als Unterstreichungsstrich auf dem Terminal dargestellt. In einem Ausdruck erscheint es als ein Leerzeichen. Falls Sie Zeichen ausgeben möchten, die nicht auf der Tastatur sind, müssen Sie den Code der gewünschten Zeichen zu Hilfe nehmen. Bewegen Sie den Cursor dazu an die Stelle der Datei, an die das Sonderzeichen geschrieben werden soll und geben Sie nach ein: ____________________________________________________________________________ ................. dateiname .................. Zeile 123 TABELLE 1 _____________________ | | gib kommando : type(code(124)) ____________________________________________________________________________ #page# 6.3. Sortier-Programme #free(1.0)# Es stehen zwei verschiedene Sortier-Programme zur Verfügung: 'sort' (Sortierung nach ASCII-Reihenfolge) und 'lex sort' (Sortierung nach deutschem Alphabet). #free(1.0)# Die Sortierprogramme sortieren eine Datei zeilenweise. Beispiel: ____________________________________________________________________________ ................. dateiname ................. Zeile 1 Berta ist eine Frau. Adam ist ein Mann. ... ____________________________________________________________________________ ____________________________________________________________________________ gib kommando : #ib#sort#ie# ("dateiname") ____________________________________________________________________________ ____________________________________________________________________________ ................. dateiname ................. Zeile 1 Adam ist ein Mann. Berta ist eine Frau. ... ____________________________________________________________________________ Dabei werden die Zeilen-Anfänge solange zeichenweise miteinander verglichen, bis ein Unterschied auftritt und dann ggf. umgeordnet. Werden zwei ungleich lange Zeilen (Anzahl Zeichen/Zeile) miteinander verglichen, dann kann man sich die kürzere Zeile mit Leerzeichen auf die Länge der längeren Zeile verlängert denken. Die Reihenfolge, in der die Zeilen sortiert werden, erfolgt nach dem ASCII- Zeichensatz in aufsteigender Reihenfolge (vergl EUMEL-Zeichencode): das Leerzeichen einige Sonderzeichen die Ziffern einige Sonderzeichen große Buchstaben einige Sonderzeichen kleine Buchstaben einige Sonderzeichen die Umlaute und ß Das bedeutet, daß z.B. folgendermaßen sortiert wird: ____________________________________________________________________________ ................. dateiname ................. Zeile 1 Adam Ball Zuruf aber das ist ein Satz niemals Überlauf ____________________________________________________________________________ Um zu erreichen, daß große und kleine Buchstaben gleichwertig behandelt werden, kann man das Kommando ____________________________________________________________________________ gib kommando : #ib#lex sort#ie# ("dateiname") ____________________________________________________________________________ geben. In diesem Fall würde die sortierte Datei folgendermaßen aussehen: ____________________________________________________________________________ ................. dateiname ................. Zeile 1 aber das ist ein Satz Adam Ball niemals Überlauf Zuruf ____________________________________________________________________________ Man beachte, daß der Umlaut 'Ü' wie 'Ue' behandelt wird (für die restlichen Umlaute gilt eine analoge Behandlung; ebenso wird 'ß' wie 'ss' behandelt). Weiterhin werden alle Sonderzeichen bei der Sortierreihenfolge ignoriert. 6.4 Fonttabellen #free(1.0)# Eine Fonttabelle enthält Angaben zu den druckbaren Zeichen. #free(1.0)# Die Einstellung einer Fonttabelle#u#1)#e# erfolgt automatisch beim Einrichten der Drucker- Task (siehe Anhang). Um den Namen der in der Task eingestellten Fonttabelle zu erhalten geben Sie ein: #foot# 1) Fonttabelle: Beschreibung der druckbaren Schrifttypen. #end# ____________________________________________________________________________ gib kommando: put(fonttable) ____________________________________________________________________________ Die Ausgabe liefert den Namen der in der Task eingestellten Fonttabelle. ____________________________________________________________________________ gib kommando: put(fonttable) agfa9 gib kommando: ____________________________________________________________________________ Um eine neue oder andere Fonttabelle einzustellen, etwa weil verschiedene Drucker benutzt werden können, geben Sie das 'fonttable' Kommando mit dem Namen der gewünschten Fonttabelle als Parameter an: ____________________________________________________________________________ gib kommando: fonttable("name der fonttabelle") ____________________________________________________________________________ Eine weitergehende Beschreibung der eingestellten Fonttabelle erhalten Sie durch das Kommando 'list fonts': ____________________________________________________________________________ gib kommando: list fonts ____________________________________________________________________________ Durch dieses Kommando erhalten Sie in das Notizbuch eine Aufstellung der Schrift­ typen mit Angaben zu Namen der verfügbaren Schrifttypen in der Fonttabelle, Größenangaben zu den Schriftttypen etc. ____________________________________________________________________________ ................. notebook .................. Zeile 1 FONTTABELLE : "agfa9"; x einheit = 160.0; y einheit = 160.0; FONT : "micro", "elanlist", "bulletin22"; einrueckbreite = 20; durchschuss = 7; fonthoehe = 30; fonttiefe = 8; groesserer font = ""; kleinerer font = ""; FONT : "trium10"; einrueckbreite = 31; durchschuss = 6; fonthoehe = 54; fonttiefe = 15; groesserer font = "trium12"; kleinerer font = "trium8"; ____________________________________________________________________________ Anmerkung: - Falls mehrere Namen für einen Schrifttyp angegeben sind, können Sie einen beliebigen dieser Namen in der \#type\#-Anweisung benutzen. - Größenangaben sind in 'Mikroschritten', d.h. den kleinstmöglichen Schritten des jeweiligen Druckers angegeben und nicht etwa in mm. - Weitere Informationen entnehmen Sie ggf. dem Systemhandbuch. #page# 6.5 Syntax der Kommandos #free(1.0)# code TEXT PROC code (INT CONST zahl) Wandelt 'zahl' in ein Zeichen um. Falls die Zahl kleiner als 32 oder größer als 254 ist, (siehe Codetabelle) muß mit unerwarteten Ergebnissen gerechnet werden. type(code(92)) INT PROC code (TEXT CONST zeichen) Wandelt 'zeichen' in die zugehörige EUMEL-Codierung um. Falls mehr als ein Zeichen angegeben wird, ist das Resultat '-1'. put(code(92)) list fonts PROC list fonts Listet die Fonts der eingestellten Tabelle ins #on("i")#notebook#off("i")#. PROC list fonts (TEXT CONST fonttable name) Listet die Fonts der angegebenen Fonttabelle ins #on("i")#notebook#off("i")#. Die vorher eingestellte Fonttabelle bleibt jedoch weiter eingestellt. list fonts ("fonttab.alternativ") lex sort PROC lex sort (TEXT CONST datei) Zeilenweise Sortierung nach (deutscher) lexikographischer Reihenfolge nach DIN 5007. lex sort ("telephonliste") PROC lex sort (TEXT CONST datei, INT CONST anfang) Wie 'lex sort', jedoch wird bei der Sortierung bei 'anfang' jeder Zeile begonnen. lex sort ("liste",20) sort PROC sort (TEXT CONST datei) Die Prozedur 'sort' sortiert die Datei 'datei' zeilenweise. Die Sortierung erfolgt nach der Ordnung, die der EUMEL-Zeichencode vorschreibt. Beispielsweise werden Zeilen ("Sätze"), die mit Ziffern beginnen, vor Sätzen, die mit Buchstaben anfangen, eingeordnet. Sätze, die mit großen Buchstaben beginnen, werden vor Sätzen mit kleinen Buchstaben einsortiert. Weiterhin werden die Umlaute und das "ß" nach allen anderen Buchstaben eingeordnet. sort ("liste") PROC sort (TEXT CONST datei, INT CONST anfang) Sortiert eine Datei wie obige Prozedur, jedoch wird bei der Sortierung nicht der Anfang eines Satzes beachtet, sondern die Position 'anfang'. sort ("liste",10) type PROC type (TEXT CONST zeichenkette) Fügt 'zeichenkette' in die aktuelle Position der editierten Datei ein. Besonders nützlich in Verbindung mit der Prozedur 'code', um nicht auf der Tastatur enthal­ tene Zeichen in den Text zu bringen. type(code(200))