Geschrieben um 16:50 am 10.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 57 | Hallo, nach langer Zeit mal wieder eine Frage:
|
Geschrieben um 18:39 am 10.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 671 | liegt wahrscheinlich daran, dass die Aktionen "thinking" schon in inform7 und "thinking about it" in GerX implementiert sind. Schau mal im Actions-Index nach. Die dort aufgeführten Kommandos musst du dann mit "understand the command xxx as something new" abgreifen. Hoffe, das hilft weiter, gefährliches Halbwissen... |
Geschrieben um 21:04 am 10.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Stimmt, der stadtgorilla hat's richtig erkannt! So geht's in meinem Testspiel: blue Was mich wundert ist, dass es sogar mit dem "[f]" funktioniert, das ja eigentlich nur für Objekte gedacht ist. Sogar mit Endungen klappt es: "denk an frauen" wird ebenso verstanden wie "denk an frauer" oder "denk an fraus". Wo das "[f]" bei der ganzen Sache wohl bleibt ... ? EDIT: Das Topic wird als Consult-Grammar-Routine abgebildet, in der 'frau' und "[f]" getrennt behandelt werden. Das femininum-Token bleibt dabei allerdings ohne Effekt auf die weiblichen Pronomen, da es kein Objekt gibt, auf das sie verweisen könnten. Aber auch mit einem Objekt "Frau" im Spiel scheint es keine Probleme mit der Referenzierung der Pronomen zu geben, sodass das Genus-Token in einem Topic wohl ohne Probleme (aber auch ohne funktionalen Nutzen) verwendet werden kann. Wie schön ... |
Geschrieben um 14:55 am 11.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 57 | Vielen Dank! Wie unterscheidet Inform denn zwischen denk, denk nach und denk an? Reicht es, das so zu definieren wie in deinem Beispiel, oder muss ich, damit denk und denk nach normal funktionieren, noch irgendwas machen? Das mit dem [f] hab ich einfach nur ausprobiert, damit ich den Artikel benutzen kann. Als ich statt "frau[f]" nur "die Frau" geschrieben hatte, ging das nicht. |
Geschrieben um 15:19 am 11.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Mario:
Die Definition von "denk" und "denk nach" im Beispiel ist die Originaldefinition. Die muss man aber, nachdem man "denk" per "understand as something new" gelöscht hat, wieder anlegen. In German.i7x lauten die Definitionen für "denk":
|
Geschrieben um 21:05 am 11.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Prof Gumby Beiträge: 634 | ChristianB:
Vielleicht ist es in diesem Fall eh besser, wenn man keine neue Aktion einführt, sondern einfach die nimmt, die GerX schon mitbringt und sie um die Erinnerungs-Verben erweitert: 003399ChristianB:
Das ist klar: Bevor der Parser die Eingabe sieht, werden schon alle Endungen abgeschnitten. Die alte Lib hat das je nach Kontext gemacht, aber deform schneidet bei allen Wörtern so lange "e/n" oder "em/en/es/er" ab, bis das Wort im Wörterbuch vorhanden ist, was natürlich beim händischen Parsen Probleme machen kann. Dass das Gender-Token auch in Topics funktioniert, ist natürlich schön durchgängig. |
Geschrieben um 22:50 am 11.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Martin:
Mir war bis jetzt nicht klar, dass es für Topics mit den Consult-Grammar-Routinen so etwas wie eine parse_name gibt, mit der Topics als ganze Satzmuster und Verkettungen ("hans/grete/haensel/gretel") gebaut werden können. Ich bin zunächst fälschlich davon ausgegangen, dass I7 das Topic "Frau[f]" ganz stur nach I6 als 'frau[f]' übersetzt. Dann hätte "Frau" nach dem Abschneiden der Endungen nicht mehr geparst werden können. Das war der Grund für meine Verwunderung. So eine komplexe Grammatik für Topics gab's doch in I6 noch nicht, oder? |
Geschrieben um 07:51 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Prof Gumby Beiträge: 634 | ChristianB:
Nee. In Inform 6 lässt der Parser den Autor die Arbeit bei [topic]-Tokens machen. Er stellt nur die Indizes consult_from und consult_words zur Verfügung, die der Autor dann selbst beim Abfangen der jeweiligen Aktion interpretieren muss. Für Standard-Aktionen wie ##Ask, ##Tell oder ##Answer wird auch noch noun oder second mit dem ersten Wort des Topics belegt, das kein Descriptor ist. Das ist aber sehr krude: Es funktioniert nicht bei selbst definierten Verben, die das [topic]-Token nutzen. Die Tabelle zu Beginn von Abschnitt 18 im DM4 zeigt das ganze Elend der I6-Topics. Der Code für das Maya-Wörterbuch und für den Priester in den Abschnitten 16 und 17 zeigt, wie man die Topics in I6 mit einer riesigen switch-Anweisung umsetzt. Ich denke, es wird auch in I7 so gemacht, dass der Parser erst einmal klaglos alle Wörter als Topic akzeptiert und die Zuordnung erst bei der Ausführung geschieht. Die zusätzliche parse_name war nötig, um die Topic-Spalte in Tabellen allgemeingültig zu implementieren. Der Parser selbst ruft sie nie auf - es ist ja auch keine parse_name, sondern eine consult_grammar, die es in I6 so noch nicht gab. |
Geschrieben um 11:02 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 57 | Martin: Vielleicht ist es in diesem Fall eh besser, wenn man keine neue Aktion einführt, sondern einfach die nimmt, die GerX schon mitbringt und sie um die Erinnerungs-Verben erweitert: 003399Aber dann würde doch nur "erinnern" funktionieren, oder nicht? Mein Ziel: "denk an ...", "denk über ... nach", "denk nach über ...", "erinnere (dich) an ...", "erinnere ..." --> In Tabelle nachgucken und Text anzeigen. "denk" --> allgemeinen situationsbezogenen Hinweis ausgeben. D.h. die erste Form soll über ein konkretes Thema sein, die zweite Form allgemein. |
Geschrieben um 11:02 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Martin:
Ja, ich erinnere mich an Switch-Blöcke, die sich über mehrere hundert Zeilen erstrecken, in denen ich second befragt habe. Sehr unübersichtlich und starr. Martin:
Ich habe immer schon nach einer Möglichkeit gesucht, Vokabeln per Tabelle ins Wörterbuch zu schreiben. Eine Tabelle mit einer Topic-Spalte tut ja genau dies, wenn dazu auch für jede Vokabel eine Consult-Grammar-Routine erstellt wird. Immerhin gelangt das Wort so ins Wörterbuch. Ich denke da beispielsweise an eine einfache Möglichkeit für den Autor, die bestehenden (Language)Synonyms- und Twins-Tabellen fortzuführen, ohne Einbinden von I6-Code oder das Kommando per "After translating a command into informese" zu verbiegen. |
Geschrieben um 11:05 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Mario Donick:
Nur wenn Du per "Understand .... as something new." etwas gelöscht hast. Ansonsten wird eine neue Satzmuster-Definition den schon bestehenden hinzugefügt. |
Geschrieben um 11:08 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 57 | ChristianB:
Ach so, das heißt, wenn ich nicht "denk an" als Synonym für "erinnere" (also neues Verb "remembering") nehmen, sondern "erinnere" und "denk an" als Synonyme für (das bestehende?) "thinking about" nehmen würde, würde das auch gehen ... Hab ich das richtig verstanden? |
Geschrieben um 11:12 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Du brauchst nur, wie von Martin vorgeschlangen, das Satzmuster mit "erriner" hinzufügen und in der Regel dann die Aktion "thinking about" abfragen. Welche Kommandos die Aktion triggern, kannst Du im Actions-Index einsehen: Der Actions-Index:
"denk ueber [text] nach" "denk nach ueber [text]" "denk an [text]" "erinner [text]" "erinner dich an [text]" Das funktioniert aber nur korrekt mit einer aktuellen GerX-Version, vor Version 3/111222 hieß die Aktion noch "thinking about it", die mit Topics nicht lief. Am besten die derzeitige "Testversion" installieren. http://ifiction.pageturner.de/inform7/test/German_3-120407--TEST1.zip |
Geschrieben um 13:40 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Ich habe noch einmal die Aktion "thinking about" im Actions-Index nachgesehen und genauer gelesen, was wir da so geschrieben haben: Der Actions-Index:
This action fires when an actor tries to think of or remember a topic, e.g. DENKE AN DEN LETZTEN URLAUB. Da haben wir in die Beschreibung ja schon reingeschrieben, dass die Aktion auch fürs Erinnern da sein soll. Aber die entsprechenden Verben haben wir nicht implementiert; kein Wunder, dass Mario sie vermisst. Ich habe die Satzmuster mit "erinner" für die Aktion "thinking about" jetzt in GerX hineingeschrieben und eine neue Vorabversion hochgeladen: http://ifiction.pageturner.de/inform7/test/German_3-120412--TEST1.zip Die neuen Satzmuster sind:
|
Geschrieben um 14:27 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 57 | Mit der neuen Version muss ich dann schreiben:
? |
Geschrieben um 14:28 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Das sollte genau so klappen. |
Geschrieben um 14:31 am 12.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 57 | ChristianB:
Super, danke. Ich probier das heute abend aus, und falls es nicht geht, meld ich mich wieder. Damit wäre dann jedenfalls ein Problem gelöst, mit dem ich mich schon ewig quäle. |
Geschrieben um 16:58 am 15.04.2012 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 57 | So, das funktioniert mit der neuen GerX-Version ganz hervorragend! Nun kann mein Protagonist sowohl "denken" als auch "nachdenken über". |