home *** CD-ROM | disk | FTP | other *** search
/ Vectronix 2 / VECTRONIX2.iso / FILES_01 / CALGOLDD.LZH / CALGOLD1.MSA / PKSMAKRO / PKSMAKRO.TXT
Text File  |  1993-02-17  |  29KB  |  728 lines

  1.  
  2. ****************************************************************
  3.  
  4.      Konzept:            DMC, Walluf
  5.  
  6.      Programmierer:      Pahlen & Kraus Software, Berlin
  7.  
  8.      Text:               Bob Elbracht, DMC GmbH
  9.  
  10.      Übersetzung:        Karsten Risseeuw, Binova AG Schweitz
  11.  
  12. ****************************************************************
  13.  
  14. 6.1.4.2 Makroverwaltung im PKS-Write Texteditor
  15.  
  16. Seit der Einführung von Calamus╛S und Calamus╛SL wurde auf 
  17. vielfachen Wunsch dem Benutzer die mächtige Textverarbeitung PKS-
  18. Write als Standardmodul für Calamus╛ bereitgestellt. Für die 
  19. Benutzer von Calamus╛1.09(N) war PKS-Write lediglich als externes 
  20. Programm verfügbar, welches eventuell noch als Accessorie benützt
  21. werden konnte. Es stellte damals eine gute Ergänzung zum 
  22. beschränkten internen Texteditor von Calamus╛1.09(N) dar. Die 
  23. stark geänderte Textkonzepte in Calamus╛S und Calamus╛SL - die 
  24. Verwendung von Textstilen statt lediglich Textattributen - hat 
  25. auch zu Änderungen innerhalb vom PKS-Write-Modul geführt. Da 
  26. dieses Modul im Handbuch nur sehr beschränkt dokumentiert wurde, 
  27. sind sich nur wenige Anwender bewusst, welche mächtige Funktionen 
  28. ihnen zur Verfügung stehen. Deshalb benützen viele Anwender immer 
  29. noch externe Textverarbeitungsprogramme (wie WordPerfect┐, 
  30. Wordplus, usw.), um die Daten nachher in Calamus╛ zu importieren. 
  31. Der modulare Aufbau von Calamus╛ gestattet jedoch, eine solche 
  32. Textverarbeitung als Modul vollständig im Programm zu 
  33. integrieren. Dies hat einige bemerkenswerte Vorteile : Calamus╛ 
  34. muss nicht verlassen und erneut gestartet werden und der Anwender 
  35. arbeitet direkt im internen Calamus╛-Textformat.
  36.  
  37.  
  38. 6.1.4.3 Textverarbeitung und Desktop Publishing
  39.  
  40. Im allgemeinen lautet die Klage der professionellen Gestaltern, 
  41. dass die Möglichkeiten zum Korrigieren und Redigeren der vom 
  42. Kunden gelieferten Texte viel zu beschränkt sind. Viele DTP-
  43. Applikationen können nicht viel mehr als reinen ASCII-Text 
  44. importieren, wobei sämtliche Stilmerkmale verloren gehen. 
  45. Calamus╛ bietet hier eine einfache und wirksame Lösung an: nicht 
  46. den Export und Import von bestimmten Textformaten, sondern die 
  47. Integration einer vollwertigen Textverarbeitung. Der wichtigste 
  48. Unterschied zwischen traditioneller Textverarbeitung und solche 
  49. bei DTP-Anwendungen, liegt darin, dass die erste 
  50. Zeilenorientiert, die zweite Absatzorientiert arbeitet. Obwohl 
  51. das Modul PKS-Write gewissermassen eine ordentliche 
  52. zeilenorientierte Textverarbeitung ist, hat man jedoch auch 
  53. direkten Zugang zu den Absatzfunktionen des Textmoduls. So ist es 
  54. z.B. möglich, während dem Setzen unmittelbar ein «Erzwungener 
  55. Umbruch» zum nächsten Textrahmen einzugeben. Wenn der Text im 
  56. Layoutfenster übernommen wird, sind diese Einstellungen sofort in 
  57. das Layout wirksam. Dasselbe gilt für die Plazierung von 
  58. Textstilen, Linealen, Kommentaren, Indexeinträgen und Fussnoten. 
  59. Vor allem bei den letztgenannten Beispielen ist die richtige 
  60. Übernahme aus traditionellen Textverarbeitungen nicht unbedingt 
  61. gewährleistet.
  62.  
  63.  
  64. 6.1.4.4 Eine erste Bekanntmachung
  65.  
  66. Im Ordner «MODULE» befindet sich nebst dem PKS-Write 
  67. Texteditormodul auch ein Ordner mit der Bezeichnung «MACROS». 
  68. Unter anderem gibt es dort die Dateien «COMPILE.TTP» und 
  69. «MACROS». Mit Hilfe dieser Dateien lassen sich viele Funktionen 
  70. für PKS-Write frei programmieren.
  71.  
  72. Die «MAKRO»-Datei wurde als reiner ASCII-Text verfasst und kann 
  73. mit jeder Textverarbeitung bearbeitet werden (z.B. mit PKS-
  74. Write). In diesem Text sind einige Instruktionscodes aufgeführt, 
  75. welche für die Ausführung bestimmter Befehle frei auf 
  76. irgendwelche Tastenkombinationen abgelegt werden können. Manchmal 
  77. können die Befehle aus dem PKS-Write-Menü ausgewählt werden, 
  78. manchmal jedoch auch nicht, so dass die Benützung der Makros eine 
  79. tatsächliche Erweiterung der Möglichkeiten für das PKS-Write-
  80. Modul bedeutet. Der Anfang eines Textblocks kann z.B. im Menü mit 
  81. der Maus markiert werden. Das ist jedoch zeitaufwendiger als mit 
  82. einer Tastenkombination. Das automatische Auswechseln von falsch 
  83. eingetippten Buchstaben oder Wörtern oder das Ändern von 
  84. Versalien (Grossbuchstaben) in Gemeinen (Kleinbuchstaben) und 
  85. umgekehrt, sind in dem PKS-Write-Menü gar nicht als Möglichkeiten 
  86. vorhanden. Diese Optionen können dagegen sehr gut in einem Makro 
  87. beschrieben werden. Diese Ergänzung zum Handbuch von Calamus╛S / 
  88. SL ist ein kurzer Lehrgang in der Handhabung dieser Makros und 
  89. zeigt Ihnen, wie Sie selber auf einfache Art Makros 
  90. «programmieren» können. «Programmieren» steht bewusst zwischen 
  91. An- und Abführungszeichen, denn es betrifft eigentlich nur die 
  92. Zusammenstellung der gewünschten Instruktionen. Diese 
  93. Instruktionen stehen, wie oben bereits erwähnt, in der Datei 
  94. «MACROS». Weil PKS-Write mit dieser Datei als solches noch keine 
  95. Makros herstellt, muss der Text mit dem beiliegenden Programm 
  96. «COMPILE.TTP» kompiliert werden. Die Bedienung ist äusserst 
  97. einfach : die Computerbesitzer mit einer TOS 2.06-Version (oder 
  98. höher) ziehen auf dem Desktop die Datei «MACROS» einfach auf 
  99. «COMPILE.TTP». Das wäre schon alles. Für ältere TOS-Versionen 
  100. (1.0, 1.2 und 1.4) gilt, dass «COMPILE.TTP» mit einem Doppelklick 
  101. ausgeführt werden muss. In dem erscheinenden Fenster wird 
  102. «MACROS» als Parameter eingegeben. Mit beiden Methoden generiert 
  103. das Programm eine Datei mit dem Namen «PKSWRITE.MAC», welches in 
  104. dem Ordner (oder Verzeichnis) kopiert werden muss, worin sich das 
  105. Modul PKS-Write befindet. Wenn die Textverarbeitung in Calamus╛S 
  106. / SL aufgerufen wird, liest das Modul diese Makrodatei und die 
  107. Makros stehen dem Anwender zur Verfügung.
  108.  
  109. Wenn Sie Calamus╛ gestartet und ein Text in einem Rahmen zur 
  110. Verfügung haben, können Sie auf gewohnte Art den Texteditor PKS-
  111. Write aktivieren. Es erscheint das Editorfenster. Wählen Sie 
  112. jetzt die Tastenkombination <Shift><Help>, womit Sie die 
  113. Makroübersicht auf den Bildschirm bringen. Auch diese Übersicht 
  114. steht in einem eigenen Fenster. In dieser Übersicht werden die 
  115. verschiedenen Funktionen pro Zeile aufgeführt. Zu Anfang steht 
  116. jeweils die dazugehörende Tastenkombination. In dieser Liste 
  117. finden Sie z.B. die folgenden Möglichkeiten:
  118.  
  119. [S]ClrHome          Zum Ende der Datei
  120. [S]Up               Bildschirm oben
  121. [S]Down             Bildschirm unten
  122. [C]Up               Seite hoch
  123. [C]Down             Seite runter
  124. [S]Left             zum Zeilenanfang
  125. [S]Right            zum Zeilenende
  126.  
  127. Probieren Sie diese Funktionen ruhig einmal aus ; 
  128. selbstverständlich funktionieren sie auch in der Makroübersicht.
  129.  
  130.  
  131. 6.1.4.5 Die Makrotabelle : «MACROS»
  132.  
  133. Zurück zu der Makrotabelle «MACROS», die sich im vorher genannten 
  134. Ordner im Modul-Verzeichnis befindet. Laden Sie diese Datei in 
  135. irgendeine Textverarbeitung, wie 1stWord, Tempus oder ähnliche :
  136.  
  137.  ************************************************************
  138.  
  139.  Makrodatei für PKS-WRITE     DATE: 17/02/93 TIME: 19:30:12
  140.  
  141.  
  142.  Kommentarzeilen beginnen mit einem Leerzeichen oder einem Tabulator
  143.  
  144.  Tabelle mit der Tastenbelegung für die Menus
  145.  --------------------------------------------
  146.  
  147.     Achtung: Bei einer Änderung der Menus müssen leider die 
  148.     Menunummern angepa₧t werden.
  149.  
  150.  Die 1. Spalte dieser Tabelle beginnt mit dem Buchstaben 'm'
  151.  und wird gefolgt von der Menunummer. 
  152.  In der 2. Spalte wird der Scancode angegeben
  153.  In der 3. Spalte steht ein Kommentar (wird dieser in " eingeschlossen)
  154.  ist er als Hilfstext im Programm verfügbar
  155.  
  156.  
  157.      Tastenbelegungen für Makros 
  158.  
  159.      allgemeine Form:
  160.  
  161.           SCANCODE Funktion(Parameter)[Funktion(Parameter)] <"Bezeichnung">
  162.  
  163. [C]B           wisize(20,10,80,90)     "Fenster Maximal, Menues frei (14 Zoll)"
  164. [CS]H          wisize(0,50,100,50)     "Fenster unten"
  165. [CS]F          full()                  "Fenster Maximal"
  166. [C]Q           wiclose()               "Fenster schliessen"
  167.  
  168. [S]ClrHome     cgoto(%,0)              "Zum Ende der Datei"
  169. ClrHome        cgoto(0,0)              "Zum Anfang der Datei"
  170. [S]Up          cgoto(T,0)              "Bildschirm oben"
  171. [S]Down        cgoto(t,0)              "Bildschirm unten"
  172. [C]Up          cupdown(-f)             "Seite hoch"
  173. [C]Down        cupdown(f)              "Seite runter"
  174. [S]Left        cgoto(z,0)              "Zum Zeilenanfang"
  175. [S]Right       cgoto(z,$)              "Zum Zeilenende"
  176.  
  177. [AS]O          mode(0,0)               "Anzeige ohne Satzinfos"
  178. [AS]A          mode(1,1)               "Textattribute an/aus"
  179. [AS]Space      mode(2,1)               "Anzeige optionale Leerzeigen ein/aus"
  180. [AS]S          mode(4,1)               "Satzinfos ein/aus"
  181. [AS]T          mode(8,1)               "Zeilenende und Tabulatoren an/aus"
  182. Help           mode(64,1)              "Statuszeile an/aus"
  183. [S]Help        showmac()               "Anzeige PKS Makros"
  184.  
  185. [C]I           changecase(2)           "Block Erste Buchstabe Versal"
  186. [C]G           changecase(0)           "Block VERSAL"
  187. [C]O           changecase(1)           "block in gemeinen"
  188. [C]J           sort()                  "Blockzeile alfabetisch sortieren"
  189.  
  190. [S]Space       insc([fs])              "Festes Leerzeichen"
  191. [CS]~          insc(3)                 "Optiale Trennung"
  192. [AC#]-         insc(27)                "Onsichtbare Trennung einfügen"
  193. [C]U           inslay(28)              "Lockmarkerung"
  194. [C]S           inslay([la])            "Füge letzten Stil ein"
  195. [C]L           inslay([ru])            "Füge letzten Lineal ein"
  196. [C]K           inslay(26)              "Füge Bemerkung ein"
  197. [#]-           insc(45)                "Füge Minus ein"
  198. -              insc(252)               "Füge Divis ein"
  199. [A]-           insc(253)               "N-Strich einfügen"
  200. [AC]-          insc(254)               "M-Strich einfügen"
  201. [C]A           insagain()              "Letzte einfügung wiederholen"
  202. Return         insc(10)                "Absatzende"
  203. [#]Enter       insc(10)                "Absatzende"
  204. [C]Return      insc(29)                "Variabeles Absatzende"
  205. [S]Return      insc(23)                "Festes Zeilenende"
  206. [A]Return      insc(13)                "Weiches Zeilenende"
  207.  
  208. Insert         option(4)               "Einfügen/überschreiben (Moduswechsel)"
  209. [AC]F          bmark(A,0,a,$)format()  "Format Absatz"
  210. Backspace      delc(-1)                "Buchstabe links löschen"
  211. Delete         delc(1)                 "Buchstabe löschen"
  212. [C]Delete      bstart()cword(1)\
  213.                bend()bdel()            "Wort löschen"
  214. [C]Backspace   bend()cword(-1)\
  215.                bstart()bdel()          "Wort nach links löschen"
  216. [CS]Delete     bmark(z,s,z,$)bdel()    "Zum Zeilenende löschen"
  217. [CS]Backspace  bmark(z,0,z,s)\
  218.                bdel()                  "Zum Zeilenanfang löschen"
  219. [S]Delete      bmark(z,0,z,$)bdel()\
  220.                delc(1)                 "Zeile löschen"
  221. [AC]T          bstart()cword(1)\
  222.                bend()bdel()\
  223.                cword(1)undo()          "Tausche Wort"
  224. [AC]Z          bstart()cleftright(1)\
  225.                bend()bdel()\
  226.                cleftright(1)undo()     "Tausche Zeichen"
  227. Undo           undo()                  "Undo löschen"
  228. [AC]S          Restyle()               "Tekststijl wijzigen"
  229.  
  230. [C#]Enter      bmark(A,0,a,$)          "Absatz markieren"
  231. [C]C           bcopy()                 "Block kopieren"
  232. [C]H           bhide()                 "Blockmarkiering verstecken"
  233. [C]P           bpaste()                "Block einfügen"
  234. [CS]X          bdel()                  "Block löschen"
  235. [C]Y           cutblock()              "Block ausschneiden"
  236.  
  237. [C]V           find(1)                 "Erneut vorwärts suchen"
  238. [C]R           find(-1)                "Erneut rückwärts suchen"
  239. [LA#]1         findlay([la],-1)        "Stilinfo rückwärts suchen"
  240. [LA#]2         findlay([ru],-1)        "Lineal rückwärts suchen"
  241. [LA#]6         findlay([ch],-1)        "Kapitel rückwärts suchen"
  242. [LA#]7         findlay([pb],-1)        "Umbruch rückwärts suchen"
  243.  
  244. [C]Z           Fontlist()              "Fontliste editieren"
  245. [C]E           Modlay()                "Satzinfo editieren"
  246. [LC]Z          Option(0)               "Setup speichern"
  247.  
  248.    Dateiende
  249.  
  250.  ****************************************************
  251.  
  252. Die Gebrauchsanleitung ist mit dieser Liste schon fast gegeben : 
  253. sowohl die Bedeutungen der  verschiedenen Tasten wie auch der 
  254. Syntax für den Aufbau eines Makros. Formell sieht der Aufbau so 
  255. aus:
  256.  
  257.  
  258. Tastenkombination Funktion (Parameter) [Funktion (Parameter)] "<Beschreibung>"
  259.  
  260.  
  261. Vergleichen Sie diesen Aufbau einmal mit der Liste; zuerst wird 
  262. die Tastenkombination eingegeben, dann die Funktion und zum 
  263. Schluss zwischen An- und Abführungszeichen die Beschreibung 
  264. dieser Funktion. Wenn eine Zeile mit einem Leerzeichen oder einem 
  265. Tabulator anfängt, handelt es sich um ein Kommentar.
  266.  
  267.  
  268. Beispiel 1
  269.  
  270. Die Tastenkombination [C]H, also <Control> zusammen mit der Taste 
  271. <H>, sollte dazu führen, dass die Markierung eines Textblocks 
  272. aufgehoben wird. Die Definition ist folgendermassen :
  273.  
  274.  [C]H           bhide()         "Block verstecken"
  275.  
  276. Die Code "bhide()" ist festgelegt und bedeutet, dass in einer 
  277. Makrodefinition die Markierung eines Textblocks aufgehoben wird. 
  278. Auf dieselbe Weise gibt es für sämtliche andere Textfunktionen 
  279. bestimmte Codes. Eine ausführliche Liste dieser Codes finden Sie 
  280. weiter hinten in dieser Anleitung. Noch ein Beispiel :
  281.  
  282.  
  283.  [S]Space       insc([fs])      "Festes Leerzeichen"
  284.  
  285.  
  286. Die Code "insc" fügt ein willkürliches Zeichen ein. Welches 
  287. Zeichen eingefügt werden soll, muss natürlich definiert werden. 
  288. Dazu wird ein Parameter benötigt. Die Buchstabencode "FS" ist die 
  289. Code für ein festes Leerzeichen. Eine komplette Liste aller 
  290. Buchstabencodes finden Sie selbstverständlich ebenfalls in dieser 
  291. Anleitung.
  292.  
  293.  
  294. Beispiel 2
  295.  
  296. Jetzt wollen wir eine etwas komplexere Funktion, nämlich «Ein 
  297. Wort links vom Cursor löschen», definieren. Dazu müssen die 
  298. folgenden Schritte unternommen
  299. werden :
  300.  
  301. - Die aktuelle Cursorposition wird als Blockende definiert
  302. - Mit dem Cursor wird ein Wort nach links gesprungen
  303. - Der Anfang des Textblocks wird markiert
  304. - Der markierte Textblock wird gelöscht
  305.  
  306. Die Makrodefinition sieht nach diesen Schritten folgendermassen aus :
  307.  
  308.  
  309.  [C]Backspace   bend()cword(-1)\
  310.                 bstart()bdel()  "Wort nach links löschen"
  311.  
  312.  
  313. An diesem Beispiel wird deutlich wie die verschiedenen Funktionen 
  314. definiert werden können. Weil das ganze Makro nicht mehr auf 
  315. einer Zeile definiert werden kann, gibt es die Möglichkeit mit 
  316. dem sogenannten Backslash «\» auf die nächste Zeile 
  317. weiterzugehen. Achten Sie darauf, dass der Kommentar am Schluss 
  318. der letzten Zeile erfolgt. Ansonsten fehlt die Beschreibung, wenn 
  319. die Makroübersicht in PKS-Write mit <Shift><Help> auf den 
  320. Bildschirm gebracht wird. Dies ist auch der Fall bei einigen 
  321. Beschreibungen der standard Makroliste ; wenn die Makroliste in 
  322. PKS-Write abgerufen wird, erscheint nur die Tastenkombination, 
  323. nicht jedoch die dazugehörende Beschreibung, weil sie nicht auf 
  324. der letzten Zeile der Definition angehängt wurde.
  325.  
  326.  
  327. 6.1.4.6 Besonderheiten bei der Makrodefinition
  328.  
  329. Für die Tastenkombinationen gilt die folgende Tabelle :
  330.  
  331.  TABELLE 1 : Tastenkombinationen
  332.  
  333.  [L]    Shift links
  334.  [R]    Shift rechts
  335.  [S]    willkürliche Shifttaste
  336.  [C]    Control
  337.  [A]    Alternate
  338.  [#]    Ziffernblock
  339.  
  340. Als Ausnahmen gelten :
  341.  
  342. -  Alle Kombinationen von Funktionstasten mit [L] werden nicht 
  343.    mit F1-F10, sondern mit F11-F20 angegeben.
  344.  
  345. -  Alle Kombinationen von den Tasten 0-9 mit der <Alternate>-
  346.    Taste als A0-A9 angedeutet.
  347.  
  348. -  Tastenkombinationen mit der linken und rechten Cursortaste 
  349.    werden zusammen mit der <Control>-Taste als CLEFT und CRIGHT 
  350.    angedeutet. Die einzelnen Cursortasten werden mit RIGHT,
  351.    LEFT, UP und DOWN bezeichnet.
  352.  
  353.    Beispiele : [A]F1, [L]F11, [C]1, [A]A2, [C]UP, [C]CRIGHT.
  354.  
  355. Alle Funktionen, welche normalerweise via Menü erreichbar sind, 
  356. können mit Makro's abgerufen werden. Dazu müssen diese in der 
  357. Makrodefinition klein geschrieben werden. Es werden dann die 
  358. Werte und Einstellungen der letzten Menübearbeitung übernommen. 
  359. In den nachfolgenden Listen mit einem * angegeben.
  360.  
  361. Für die Definition der Cursorposition stehen die folgenden 
  362. Symbole zur Verfügung:
  363.  
  364.  TABELLE 2 : Cursorparameter
  365.  
  366.  $      Zeilenende
  367.  %      Letzte Zeile der Datei
  368.  z      Aktuelle Zeile
  369.  s      Aktuelle Spalte
  370.  Z      Zeile vor der letzten Suchaktion
  371.  S      Spalte vor der letzten Suchaktion
  372.  A      Erste Zeile des aktuellen Absatzes
  373.  a      Letzte Zeile des aktuellen Absatzes
  374.  T      Oberste Zeile des Bildschirms
  375.  t      Unterste Zeile des Bildschirms
  376.  f      Anzahl Zeilen des aktuellen Fensters
  377.  F      Anzahl Spalten des aktuellen Fensters
  378.  
  379. Die Funktionen cupdown(), goto() und bmark(), welche mit 
  380. obenstehendem Parameter versehen werden können, sind in den 
  381. nachfolgenden Listen mit einem ** vermerkt.
  382.  
  383.  
  384. 6.1.4.7 Funktionen für die Positionierung des Textcursors
  385.  
  386. "updown(r)"* ** Cursor über r Zeilen auf- (-) oder abwärts (+) 
  387.                 bewegen. r kann auch ein Cursorparameter der 
  388.                 Tabelle 1 sein.
  389.  
  390. "leftright(c)"  Cursor über c (Anzahl) Spalten nach rechts (+) 
  391.                 oder links (-) bewegen.
  392.  
  393. "cword(x)"      Cursor pro Wort nach rechts (1) oder nach links 
  394.                 (-1) bewegen.
  395.  
  396. "goto(az,as)"* **       Gehe zu Zeile az, Spalte as. az,as können 
  397.                         auch Cursorparameter der Tabelle 2 sein.
  398.  
  399. "smark(n)"      Setze Marke Nummer n. Es sind die 
  400.                 Markierungsnummern 1-4 gestattet.
  401.  
  402. "gmark(n)"      Gehe zu Marke n (1-4)
  403.  
  404.  
  405.  
  406. Beispiel :
  407.  
  408.  [C]    smark(1)cword(1)smark(2)
  409.  
  410. Bedeutung : Mit der Tastenkombination <Control><m> wird die 
  411. Textmarke Nr. 1 gesetzt, dann springt der Cursor ein Wort nach 
  412. rechts und setzt Marke Nr. 2.
  413.  
  414.  
  415. 6.1.4.8 Funktionen für die Manipulation von Textblöcken
  416.  
  417. "bstart()"                    Blockanfang setzen
  418.  
  419. "bend()"                      Blockende setzen
  420.  
  421. "bmark(az,as,ez,es)"**        Blockanfang mit Zeilenanfang az,
  422.                               Spaltenanfang as und Blockende mit
  423.                               Schlusszeile es markieren
  424.  
  425. "bhide()"                     Blockmarkierung aufheben
  426.  
  427. "cutblock()"    Textblock ausschneiden. Ein bereits                 
  428.                 im Puffer vorhandener Textblock
  429.                 wird dabei überschrieben.
  430.  
  431. "bcopy()"       Markierter Textblock in den Puffer kopieren.
  432.                 Der Block wird an einem
  433.                 eventuell vorhandenen Puffer angehängt.
  434.  
  435. "bpaste()"      Einfügen des zuletzt ausgeschnittenen Textblocks
  436.  
  437. "bdel()"        Markierter Textblock löschen
  438.  
  439. "undo()"        Der zuletzt gelöschte Textblock einfügen
  440.  
  441. "cgoto()"       Markierter Textblock an die Cursorposition 
  442.                 versetzen
  443.  
  444. "format()"      Automatischer Umbruch des aktuellen Textblocks
  445.                 in Übereinstimmung mit
  446.                 der geltenden Zeilenlänge (PKS-Textfenster)
  447.  
  448. "restyle()"*    Aktueller Block mit neuem Stil versehen. Es wird 
  449.                 die letzte Einstellung des Stilmenüs berücksichtigt
  450.  
  451. "changecase(x)" Buchstabenwechsel VERSAL (x=0), gemeinen (x=1) 
  452.                 und Erste Buchstabe Versal (x=2). Die Funktion 
  453.                 bezieht sich auf den selektierten Block. 
  454.                 Parameter x= 0,1 oder 2.
  455.  
  456. "sort()"        Zeilen des aktuellen Blocks alphabetisch 
  457.                 sortieren
  458.  
  459.  
  460.  
  461. Beispiel :
  462.  
  463.  [C]Delete      bstart()cword(1)\
  464.                 bend()bdel()    "Wort löschen"
  465.  
  466. Bedeutung : Mit der Tastenkombination <Control><Delete> wird der 
  467. Textbereich von der Cursorposition bis zum nächsten Wort gelöscht.
  468.  
  469.  
  470. 6.1.4.9 Fensterfunktionen
  471.  
  472. "wisize(x,y,b,h)"       Aktuelles Fenster auf die Position x,y 
  473.                         die Breite b, und Höhe
  474.                         h setzen.
  475.  
  476. "full()"                Umschaltfunktion zwischen der aktuellen 
  477.                         und der maximalen bildschirmfüllenden 
  478.                         Fenstergrösse. Diese Funktion gleicht
  479.                         der GEM-Funktion, wenn in der oberen 
  480.                         rechten Ecke des Fensters
  481.                         geklickt wird.
  482.  
  483. "winum(x)"              Aktivieren des mit Nummer x vermerkten 
  484.                         Fensters. Bei negativen Zahlen werden
  485.                         unten liegende Fenster oben plaziert.
  486.  
  487. "wiclose()"             Aktuelles Fenster schliessen.
  488.  
  489.  
  490.  
  491. Bemerkung : Obschon Calamus╛ maximal sieben Dokumente 
  492. gleichzeitig öffnen kann, gestattet PKS-Write nur ein offenes 
  493. Texteditorfenster. Die Funktionen "winum(x)" und "wiclose()" sind 
  494. für zukünftige Versionen des Editors reserviert.
  495.  
  496. Beispiel :
  497.  
  498. F9     wsize(0,50,100,50)      "Fenster füllt untere 
  499.                                 Bildschirmhälfte aus"
  500.  
  501. Bedeutung: Mit der F9-Taste füllt das Textfenster die untere 
  502. Hälfte des Bildschirms aus.
  503.  
  504.  
  505. 6.1.4.10 Suchfunktionen
  506.  
  507. "find()"*       Text suchen. Bei Aufruf ohne Dialogbox wird der 
  508.                 zuletzt eingegebene Text nochmals gesucht
  509.  
  510. "repl()"*       Text ersetzen. Bei Aufruf ohne Dialogbox werden 
  511.                 die letzten Einstellungen des «Suchen / Ersetzen» 
  512.                 berücksichtigt
  513.  
  514. "findlay(i,x)"  Satzinformation in Richtung x (1 = vorwärts, -1 = 
  515.                 rückwärts) suchen. Satzinformationen werden als 
  516.                 Abkürzungen wiedergegeben:
  517.  
  518.         [RU]    Lineal
  519.         [LA]    Textstil
  520.         [SE]    Seitennummer
  521.         [FS]    Verweis auf folgende Seite
  522.         [K]     Kapitelnummer
  523.         [KE]    Kerning
  524.         [EU]    Erzwungener Umbruch zum nächsten Rahmen
  525.         [F]     Fussnote
  526.         [I1]    Index 1
  527.  
  528.  
  529. Beispiel :
  530.  
  531. F10    findlay([RU],1) "Lineal vorwärts suchen"
  532.  
  533. Bedeutung : Mit F10 wird vorwärts nach dem nächsten Lineal gesucht.
  534.  
  535.  
  536.  
  537. 6.1.4.11 Editfunktionen
  538.  
  539. "insc(x)"       Zeichen x einfügen. Das Zeichen wird mit der 
  540.                 ASCII-Code wiedergegeben. Erlaubt sind alle 
  541.                 Zeichen mit einer ASCII-Wert von 32 oder höher. 
  542.                 Zusätzlich können folgende Befehle eingegeben 
  543.                 werden:
  544.  
  545. [RETURN]        Absatzende
  546.  
  547. [FS]            Festes Leerzeichen
  548.  
  549. [OHYPH]         Optionale Trennung [HHYPH] plus Zeilenvorschub
  550.  
  551. "delc(x)"       Selektiertes Zeichen (Parameter x = 1) oder nach links
  552.                 (Parameter x =1) löschen
  553.  
  554. "insagain()"    Die zuletzt eingegebene Zeichenfolge erneut 
  555.                 einfügen (maximal 128 Zeichen)
  556.  
  557. "inslay(i)"*    Satzinfo i einfügen. Beim Aufruf ohne Dialogbox 
  558.                 werden die letzten Einstellungen der 
  559.                 dazugehörenden Dialogboxe zugepasst.
  560.  
  561. "Restyle()"*    Satzinfo unter dem Cursor ändern. Diese Funktion 
  562.                 lässt sich nur
  563.                 aktivieren, wenn die Satzinstruktionen sichtbar 
  564.                 sind. Beim Aufruf ohne Dialogbox, werden die 
  565.                 letzten Einstellungen des dazugehörenden
  566.                 Menüs übernommen
  567.  
  568. "delllay(i)"    Satzinformation i im selektierten Textblock löschen
  569.  
  570.  
  571.  
  572. Beispiel :
  573.  
  574. [S]Space insc([fs])    "Festes Leerzeichen"
  575.  
  576. Bedeutung : Bei der Tastenkombination <Shift><Leerzeichen> wird 
  577. ein festes Leerzeichen eingefügt.
  578.  
  579.  
  580. 6.1.4.12 Datei-Funktionen
  581.  
  582. "save(0)"*      Speichern der aktuellen Textdatei. Beim Aufruf 
  583.                 der Funktion «Speichern» mit dem Dialogbox 
  584.                 erscheint die Auswahlbox, worin ein Name 
  585.                 eingegeben werden kann.
  586.  
  587. "save(1)"*      Speichern des selektierten Textblocks
  588.  
  589. "save(4)"*      Exportieren der aktuellen Textdatei
  590.  
  591. "save(2+...)"   Wenn bei dem aktuellen Parameter die Zahl 2 
  592.                 aufgezählt wird,
  593.                 erscheint beim Aufruf der Auswahlbox die Name des 
  594.                 aktuellen Dokuments.
  595.  
  596. Bemerkung: In Calamus╛ kommuniziert PKS-Write mit dem Textmodul. 
  597. In der Praxis heisst dies, dass bei den Dateifunktionen der Text 
  598. zum Textmodul transferiert wird. Der Dialogbox von PKS-Write 
  599. erscheint mit der Frage ob der Text ersetzt / hinzugefügt werden 
  600. soll. Die Datei wird also vom einen in das andere Modul 
  601. übertragen. Übrigens ist es sehr wohl möglich, dass einige 
  602. Befehle anderer Funktionen angepasst oder ergänzt werden müssen, 
  603. bevor sie richtig zugepasst werden können.
  604.  
  605.  
  606. 6.1.4.13 Übrige Befehle
  607.  
  608. "mode(m,x)"     Wiedergabe-Modus umschalten;
  609.                 x = 0 oder ändern x = 1.
  610.  
  611. Als Moduswerte für m dienen die folgenden Angaben :
  612.  
  613.         1       Textstile anzeigen
  614.         2       Optionale Trennungen anzeigen
  615.         4       Satzinformationen anzeigen
  616.         8       Zeilen-, resp. Absatzenden anzeigen
  617.         16      Kurzform der Satzformationen anzeigen
  618.         32      «Frei»
  619.         64      Statusbalken anzeigen
  620.  
  621. Durch Addierung der Werte (in der Reihe 128, 256, usw.) sind 
  622. willkürliche Kombinationen der Wiedergabe-Optionen möglich.
  623.  
  624.  
  625.  
  626. Beispiel :
  627.  
  628. [AS]S  mode(4,1)       "Satzinformationen an / aus"
  629.  
  630. Bedeutung : Textstile und Satzinformationen werden mit der 
  631. Tastenkombination <Alternate><Shift><S> angezeigt.
  632.  
  633.  
  634.  
  635. "option(0)"3    Die angegebenen Optionen o können geändert werden:
  636.  
  637.         0       Makro's speichern
  638.         2       Makro-Hilfe
  639.         4       Schreibmodus wechseln
  640.         8       Automatische Zeilennummerierung
  641.         32      Backup erstellen
  642.         64      Warnmeldungen anschalten
  643.  
  644.  
  645. Beispiel :
  646.  
  647. Insert option(4)       "Einfügen / überschreiben (Moduswechsel)"
  648.  
  649. Bedeutung : Mit der Inserttaste wird zwischen dem Einfügen- und
  650. Überschreibenmodus gewechselt.
  651.  
  652.  
  653.  
  654. "Showmac()"     Makro's anzeigen
  655.  
  656. "Fontlist()"    Editieren des benützten Systemfonts. In Calamus╛ 
  657.                 ist dies möglich, wenn (FSM)GDOS geladen ist. 
  658.                 Dieser Systemfont wird dann für die ganze 
  659.                 Benutzeroberfläche von Calamus╛ verwendet, also 
  660.                 auch im Calamus╛-Auswahlbox usw.
  661.  
  662.  
  663. 6.1.4.14 Die Erstellung einer Makrodatei
  664.  
  665. Reine ASCII-Dateien mit Makrodefinitionen, wie diese vorher 
  666. beschrieben wurden, müssen mit dem mitgelieferten Programm 
  667. COMPILE.TTP umgewandelt werden, so, dass PKS-Write diese 
  668. auswerten kann. Setzen Sie Ihre Makro-Datei in demselben 
  669. Verzeichnis wie COMPILE.TTP und starten Sie das Programm mit 
  670. Doppelklick. Als Parameter füllen Sie dann den Namen der von 
  671. Ihnen erstellten Textdatei mit Makrodefinitionen ein und 
  672. bestätigen die Eingabe mit «OK». Besitzen Sie eine TOS-Version 
  673. 2.06 oder höher, dann genügt es, die Textdatei auf das Programm 
  674. COMPILE.TTP zu ziehen. Das Programm COMPILE.TTP kompiliert darauf 
  675. eine Datei mit dem Namen «PKSWRITE.MAC», welche Sie in den 
  676. Modulordner hinüberkopieren müssen. Beim Öffnen des Texteditors 
  677. in Calamus╛ S / SL, wird diese Makrodatei automatisch geladen. 
  678. Die bereits standard mitgelieferten Makro's können Sie in PKS-
  679. Write mit der Tastenkombination <Shift><Help> als Liste auf dem 
  680. Bildschirm betrachten. Die Tastenkombinationen können Sie 
  681. selbstverständlich selber ändern. 
  682.  
  683. ACHTUNG
  684.  
  685. Beachten Sie, dass die gewählten Tastenkombinationen für PKS-
  686. Write nicht dieselben sein dürfen wie für den Tastenrekorder von 
  687. Calamus╛! Weil diese letztgenannten als erstes geladen werden, 
  688. haben sie Vorrang vor den PKS-Makro's. Die PKS-Makro's werden in 
  689. diesem Fall nicht ausgeführt.
  690.  
  691.  
  692.  
  693. Fehlermeldungen beim Kompilieren
  694.  
  695. Beim Kompilieren der Datei «PKSWRITE.MAC» können die folgenden 
  696. Fehlermeldungen
  697. auftreten :
  698.  
  699. -    «Taste . . . bereits definiert»
  700.  
  701.      Die Taste . . . wird in der Textdatei mit Makro-Definitionen 
  702.      mehrfach benützt. Die Meldung ist eine reine Warnung - die 
  703.      Datei «PKSWRITE.MAC» wird trotzdem generiert.
  704.  
  705. -    «Zuviele Makro's definiert»
  706.  
  707.      Es können maximal 128 Makro's benützt werden.
  708.  
  709. -    «Falsche Zeichenfolge»
  710.  
  711.      Ein Hilfstext wurde falsch definiert
  712.  
  713. -    «Unvollständige Makrodefinition»
  714.  
  715.      Es wurde ein unbekannter Befehl für Textfunktionen gefunden
  716.  
  717. -    «Falsche Tastenkombination»
  718.  
  719.      Es wurde eine falsche Tastenkombination benützt. Siehe
  720.      ▌ 6.1.4.5 Die Makrotabelle «Makro's» für eine Übersicht der 
  721.      erlaubten falschen Tastenkombinationen
  722.  
  723. Wenn diese letzte Fehlermeldung erscheint, wird keine Makrodatei 
  724. generiert. Sämtliche Fehlermeldungen und Warnungen erscheinen mit 
  725. der Zeilennummer, worin sie gefunden wurden.
  726.  
  727. eof
  728.