home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 336.lha / GMC / german.docs / GMC.doc < prev    next >
Text File  |  1989-12-27  |  11KB  |  329 lines

  1.  
  2.  
  3.  
  4.  
  5.                                  -- GMC V4.0 --
  6.  
  7.  
  8.                 Console-Handler mit Kommandozeileneditierung und
  9.                           Funktionstastenunterstützung
  10.  
  11.  
  12.  
  13.          GMC  stellt  eine  Erweiterung  des CON- bzw. NEWCON-Handlers dar.
  14.          Gegenüber NEWCON bietet GMC die folgenden zusätzlichen Merkmale:
  15.  
  16.  
  17.  
  18.             -  Erweiterte Kommandozeileneditierung
  19.  
  20.             -  Vierfache, wahlfreie Belegung der Funktionstasten
  21.  
  22.             -  Erweiterte Kommandozeilenspeicherung
  23.  
  24.             -  Online-Hilfe zu Funktionen des Handlers
  25.  
  26.             -  Iconify-Funktion
  27.  
  28.  
  29.  
  30.          Diese zusätzlichen Merkmale sowie weitere Unterschiede werden nun
  31.          kurz beschrieben.
  32.  
  33.  
  34.  
  35.  
  36.  
  37.             Erweiterte Kommandozeileneditierung
  38.  
  39.  
  40.  
  41.          Die Kommandozeileneditierung stützt sich auf folgende Funktionen:
  42.  
  43.  
  44.             1. Lösch-Funktionen
  45.  
  46.                -  Zeichen vor Cursor löschen (1)
  47.                   Backspace
  48.  
  49.                -  Zeichen unter Cursor löschen (2)
  50.                   Del
  51.  
  52.                -  Löschen ab Cursorposition bis Wortanfang (3)
  53.                   Ctrl-Backspace
  54.  
  55.                -  Löschen ab Cursorposition bis Wortende (4)
  56.                   Ctrl-Del
  57.  
  58.                -  Löschen ab Cursorposition bis Zeilenanfang (5)
  59.                   Shift-Backspace
  60.  
  61.                -  Löschen ab Cursorposition bis Zeilenende (6)
  62.                   Shift-Del
  63.  
  64.                -  Löschen der ganzen Zeile (7)
  65.                   Alt-Backspace,Alt-Del
  66.  
  67.  
  68.  
  69.             2. Cursor-Bewegung
  70.  
  71.                -  Zeichen links/rechts (1/2)
  72.                   "Cursor links/rechts" (auch mit Alt-Taste)
  73.  
  74.                -  Wort links/rechts (3/4)
  75.                   Ctrl-"Cursor links/rechts"
  76.  
  77.                -  Zeilenanfang/-ende (5/6)
  78.                   Shift-"Cursor links/rechts"
  79.  
  80.  
  81.  
  82.             3. Einfüge-/Überschreibe-Modus
  83.  
  84.                Der voreingestellte Modus (einfügen) kann wahlweise nur
  85.                für die  aktuelle Zeile oder  auch dauerhaft gewechselt
  86.                werden.  Der Wechsel  nur für die aktuelle  Zeile  wird
  87.                durch Ctrl-A vorgenommen.  Nach  Betätigung der RETURN-
  88.                Taste ist  wieder der  alte Modus  aktiv.  Um den Modus
  89.                dauerhaft zu wechseln muB "set ins:<n>" eingegeben wer-
  90.                den.  Dabei wird für <n> = 1 der  Einfüge-Modus und für
  91.                <n> = 0 der Überschreibe-Modus aktiviert.
  92.  
  93.  
  94.  
  95.          Bei wortweiser Bewegung bzw. wortweisem Löschen werden Wörter
  96.          nicht nur durch Leerzeichen getrennt,  sondern auch durch ':'
  97.          '/' und '.'. Damit wird es  möglich längere Pfadnamen schnell
  98.          und einfach zu editieren. Wenn der Cursor auf einem  der vier
  99.          Trennzeichen steht, wird nur das Trennzeichen gelöscht.
  100.  
  101.          Die oben  aufgeführten Editierungsfunktionen  können auch be-
  102.          liebig anders  verteilt werden. Die  oben genannte  Liste ist
  103.          nur die Vorbelegung, die Zahlen in Klammern stellen die zuge-
  104.          hörigen Funktionen dar.
  105.  
  106.          Die Backspace- (bs) und die Del-Taste (del) sowie die Cursor-
  107.          Tasten (cu_left/cu_right) werden folgendermaßen belegt:
  108.  
  109.  
  110.             set <k><x>:<n>
  111.  
  112.  
  113.          <k> ist die Abkürzung  der Taste, <x>  die Taste, die gleich-
  114.          zeitig mit ihr gedrückt werden muß:
  115.  
  116.  
  117.             keine Taste:   <x> = ''
  118.             Shift-Taste:   <x> = 's'
  119.             Ctrl-Taste:    <x> = 'c'
  120.             Alt-Taste:     <x> = 'a'
  121.  
  122.  
  123.          <n> ist die Nummer der Funktion, die ausgeführt werden soll.
  124.  
  125.  
  126.          Weitere Beschreibung  des  Zuweisungsvorgangs  siehe nächstes
  127.          Kapitel Funktionstasten.
  128.  
  129.  
  130.             Funktionstastenbelegung
  131.  
  132.  
  133.  
  134.          Alle  Funktionstasten können  vierfach belegt  werden  (Funk-
  135.          tionstaste  allein, mit  gedrückter  Shift-, Ctrl-  oder Alt-
  136.          Taste).  Die Funktionstasten  können direkt über die Tastatur
  137.          oder durch  Schreibbefehle in das Fenster belegt werden.  Die
  138.          Syntax ist für beide Methoden gleich:
  139.  
  140.  
  141.             set <x>f<n>:<string>
  142.  
  143.  
  144.          <x> ist die Taste,  die gleichzeitig  mit der  Funktionstaste
  145.          gedrückt werden muB, um die Belegung <string> abzurufen.  <n>
  146.          ist die Nummer der Funktionstaste.  <string> ist die Belegung
  147.          der  Funktionstaste.  Wenn  die  beiden  letzten  Zeichen  in
  148.          <string>  "\n" sind, wird die  Belegung sofort  bei Druck der
  149.          Funktionstaste ausgeführt. Ansonsten wird <string> nur in die
  150.          aktuelle  Kommandozeile eingefügt  (unabhängig vom  Einfüge-/
  151.          Überschreibe-Modus).  Ein ';' als letztes Zeichen in <string>
  152.          wird  beim  Setzen der  Funktionstasten  ignoriert. Die Funk-
  153.          tionstasten können  auf einfache  Weise belegt  werden, indem
  154.          entweder  mit "Echo" die Funktionstasten  einzeln belegt wer-
  155.          den, oder mit "Type" eine Datei ausgegeben wird, die die ent-
  156.          sprechenden  Belegungen enthält.  Die Befehle  werden aus dem
  157.          Eingabe-  bzw. Ausgabestrom  gefiltert.  Die  Funktionstasten
  158.          können mit  "set fkeys:1" ein- und  mit "set fkeys:0"  ausge-
  159.          schaltet werden.  Die Belegungen  werden davon nicht berührt,
  160.          d.h. sie bleiben beim Ausschalten erhalten und sind beim Ein-
  161.          schalten  wieder verfügbar.  Durch die  Belegung einer  Funk-
  162.          tionstaste werden die Funktionstasten automatisch eingeschal-
  163.          tet.
  164.  
  165.  
  166.  
  167.  
  168.  
  169.             Kommandozeilenspeicherung
  170.  
  171.  
  172.  
  173.          Alle  eingegebenen Kommandos  werden gespeichert  (maximal 63
  174.          Zeilen) und  können auf  verschiedene Arten  wieder abgerufen
  175.          werden. Die zuletzt eingegebene Zeile wird am  Ende der Liste
  176.          eingefÜgt. Gegebenenfalls die erste Zeile am Anfang der Liste
  177.          hinausgeschoben.
  178.  
  179.  
  180.  
  181.             -  Mit  den Tasten  "Cursor auf-/abwärts"  kann die  Liste
  182.                zeilenweise in Richtung Anfang/Ende angezeigt werden.
  183.  
  184.             -  Mit Shift-"Cursor aufwärts" wird die Liste nach der bis
  185.                zu diesem Zeitpunkt  eingegebenen Teilzeile  als Muster
  186.                zeilenweise durchsucht.
  187.  
  188.             -  Mit Shift-"Cursor  abwärts" wird zum Ende der Liste ge-
  189.                sprungen.
  190.  
  191.             -  Mit !<n> wird  das <n>-te Kommando  seit dem  Start des
  192.                Handlers (Öffnen des CLI- oder Shell-Fenster) angezeigt.
  193.  
  194.  
  195.  
  196.  
  197.  
  198.             Online-Hilfsfunktionen
  199.  
  200.  
  201.          Die Help-Taste  zeigt alleine  oder zusammen  mit der Shift-,
  202.          Ctrl- oder Alt-Taste vier verschiedene Hilfen an:
  203.  
  204.  
  205.             -  Help:
  206.  
  207.                Ausgabe der Funktionen der Cursortasten, der Backspace-
  208.                und der Del-Taste,  des Kommandozeilenrückruf über eine
  209.                Nummer sowie der weiteren Funktionen der Help-Taste.
  210.  
  211.             -  Shift-Help:
  212.                Ausgabe der ersten Belegungen der Funktionstasten.
  213.  
  214.             -  Ctrl-Help:
  215.                Ausgabe weiterer  Information zum Setzen der Funktions-
  216.                tasten und des EinfÜge-/Überschreibe-Modus.
  217.  
  218.             -  Alt-Help:
  219.                Ausgabe der Liste der  früher eingegebenen Kommandozei-
  220.                len mit Numerierung.  Die Ausgabe kann durch  Druck auf
  221.                eine beliebige Taste angehalten  und wieder fortgesetzt
  222.                werden.  Durch Druck auf die RETURN-Taste wird die Aus-
  223.                gabe abgebrochen.
  224.  
  225.  
  226.          Die Helptaste  kann ebenso wie  die Funktionstasten  ein- und
  227.          ausgeschaltet werden:
  228.  
  229.  
  230.             "set help:1"     Helptaste einschalten
  231.  
  232.             "set help:0"     Helptaste ausschalten
  233.  
  234.  
  235.  
  236.  
  237.  
  238.             Iconify-Funktion
  239.  
  240.  
  241.          Die Iconify-Funktion  kann auf jede  beliebige Funktionstaste
  242.          gelegt werden:
  243.  
  244.  
  245.             set <x>f<n>:ICONIFY     <x> und <n> siehe Funktionstasten
  246.  
  247.  
  248.          Die Iconify-Funktion  löscht die  aktuelle  Befehlszeile  und
  249.          wird dann sofort  ausgeführt.  Das dabei entstehende  Fenster
  250.          läst sich beliebig verschieben und wird mit einem Doppelklick
  251.          wieder auf die ursprüngliche Größe gebracht. Während das Fen-
  252.          ster im verkleinerten  Modus ist, sind  natürlich  keine Ein-
  253.          oder Ausgaben über dieses Fenster möglich.  Das Schlüsselwort
  254.          ICONIFY muß in Großbuchstaben angegeben werden.
  255.  
  256.          Die Iconify-Funktion  wird abgeschaltet, nachdem  der Handler
  257.          ein DiskInfo-Packet erhalten hat. Da bei diesem Packet Zeiger
  258.          auf das  ConsoleDevice  und das Fenster übergeben  wird, aber
  259.          nach dem Schließen  und Wiederöffnen  diese Zeiger mit großer
  260.          Wahrscheinlichkeit nicht die gleichen Werte haben, würde dies
  261.          mit ziemlich Wahrscheinlichkeit zu einem Absturz führen.
  262.  
  263.  
  264.  
  265.  
  266.  
  267.             Sonstiges
  268.  
  269.  
  270.          Die Tabulator-Taste, die ESCAPE-Taste sowie alle Control-Tas-
  271.          ten außer  Ctrl-A, Ctrl-C..F,  Ctrl-M und  Ctrl-\ haben keine
  272.          Funktion und werden auch nicht ans CLI oder die Shell weiter-
  273.          gegeben.
  274.  
  275.          Im RAW-Modus werden alle  Tastendrücke ohne Auswertung (außer
  276.          Ctrl-C..F)  weitergeleitet.  Ebenso werden  im CON-Modus  die
  277.          vier "Report"-Meldungen des console.device  (Cursor Position,
  278.          Window Bounds, Special Keys und Raw Events) durchgereicht.
  279.  
  280.  
  281.  
  282.  
  283.  
  284.             Installation
  285.  
  286.  
  287.  
  288.          GMC wird  durch  "Mount GMC:"  installiert.  Die MountList im
  289.          DEVS:-Verzeichnis muß dazu  den unten  stehenden Eintrag ent-
  290.          halten. Außerdem muß GMC-Handler im  L:-Verzeichnis enthalten
  291.          sein. "Mount GMC:" sollte in die Startup-Sequence aufgenommen
  292.          werden.  Damit beim Aufruf eines  neuen CLI- oder  Shell-Fen-
  293.          sters GMC verwendet  wird, muß entweder NewCLI, NewShell oder
  294.          Ashell gepatcht werden oder GMC muß  beim Aufruf mitangegeben
  295.          werden (NewShell  GMC:xxx). Eine weitere  Möglichkeit besteht
  296.          darin, in der MountList statt GMC: NEWCON: zu  schreiben  und
  297.          dann GMC als NEWCON mit "Mount NEWCON:" zu installieren. Dann
  298.          entfällt das Patchen  von NEWShell  oder die  Angabe der Fen-
  299.          sterspezifikation.  Die letzte  Methode wäre mittels des ARP-
  300.          Kommandos  "Assign CON: remove" und des PD-Programms "Assign-
  301.          Dev CON: GMC:"  das Standard-Device CON: zuerst  zu entfernen
  302.          und dann  GMC: als CON: zu  installieren.  Bei dieser Methode
  303.          muß GMC: schon gemounted sein.
  304.  
  305.  
  306.  
  307.  
  308.  
  309.             MountList-Eintrag
  310.  
  311.  
  312.  
  313.          GMC:
  314.                  Handler = L:GMC-Handler
  315.                  Stacksize = 1500
  316.                  Priority = 5
  317.                  GlobVec = -1
  318.          #
  319.  
  320.  
  321.  
  322.  
  323.  
  324.             Danksagung
  325.  
  326.  
  327.          Mein Dank gebührt Volker Rudolph für Tests und Verbesserungs-
  328.          vorschläge.
  329.