German

version 3/120621 by Team GerX

  • Home page
  • Beginning
  • Previous
  • Next



  • Chapter: Spezielles Parsen

    Section: Wortköpfe und -schwänze (Compound Heads und Compound Tails) von langen Wörtern abtrennen

    Inform verarbeitet im Z-Code-Format nur die ersten neun Zeichen einer Vokabel. Auch im Glulx-Format ist das der Standard, die Länge der Lexikoneinträge lässt sich aber per

        Use DICT_WORD_SIZE of <N>.

    ändern. Für Z-Code gibt es diese Möglichkeit leider nicht.

    Bei der Verwendung von Vokabeln, die länger als 9 Zeichen sind, kann es also vorkommen, dass sich Objekte nicht unterscheiden lassen.

        Understand "Streichholz" as the Streichholz.
        Understand "Streichhoelzer" as the Packung Streichhölzer.

    In dem Beispiel würden die Vokabeln für die zwei Objekte intern jeweils gleich lauten, nämlich 'streichho'. Der Parser kann das Streichholz deshalb nicht von den Streichhölzern unterscheiden. Um dieses etwas altertümliche Limit zu umgehen, kann man in GerX, wie in deform auch, Wortköpfe oder -schwänze von langen Wörtern abschneiden lassen, sodass der Parser mit zwei kürzeren Vokabeln arbeiten kann.

    Der Autor definiert folgende Tabelle

        Table of compound heads (continued)
      Head   n  
      "streich"   0  

    und aktiviert ihre Berücksichtigung beim Parsen mit der Use-Option "Use compound heads.".
    Jetzt lassen sich Streichholz und Streichhölzer folgendermaßen definieren:

        The pack of matches is a container. The printed name is "Packung[f] Streichhölzer" .Understand "streich-" and "hoelzer" as the pack.
        The match is a thing. The printed name is "Streichholz[-es][n]". Understand "streich-" and "holz" as the match.

    Wichtig ist der Trennstrich am Ende der Wortkopf-Vokabel. Analog zum Abschneiden der Köpfe kann man die Wörter auch vom Ende her abschneiden lassen.

        Table of compound tails (continued)
      Tail   n  
      "lampe"   0  

    Jetzt kann man für jede Lampe auch noch "messing-", "taschen-" oder sonst irgendwas angeben. Auch hier muss der erste Wortbestandteil mit einem Trennstrich abgeschlossen werden.

    Wichtig: Beide Tabellen benötigen pro Zeile zwei Einträge. Die Zahl n kann immer Null sein, da sie zurzeit noch keine Verwendung findet.