Geschrieben um 16:50 am 11.02.2011 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 47 | Und wieder ich ...
Zitat:
Ich kenne das Wort "dfma" nicht.
Ich verstehe das Wort "spock" in diesem Zusammenhang nicht. Die erste Antwort ist m. E. viel besser, als wenn explicit error messages ausgeschaltet ist. Nur die zweite verwirrt mich irgendwie. Wäre in so einem Fall: "So etwas kannst du hier nicht sehen?" nicht wesentlich klarer? Gruß, T. R. Z. |
Geschrieben um 17:05 am 11.02.2011 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Tim Z.:
Die zweite Antwort wird bei Vokabeln, die dem Spiel bekannt sind, ausgegeben. Der Parser "kennt" das Wort, es macht aber in diesem Zusammenhang keinen Sinn. "So etwas kannst du hier nicht sehen" ist weniger explizit, und explizit sollen die expliziten Fehlermeldungen ja sein. Wenn Du die Meldung abändern möchtest, kannst Du die Erweiterung German Default Messages einbinden und folgende Tabelle mit einer geänderten Meldung definieren:
|
Geschrieben um 18:54 am 11.02.2011 | Zitat | Editieren | Löschen | |
Mitglied Bachelor Gumby Beiträge: 47 | <td valign="top"><div class="post"><p><strong>Zitat:</strong></p> <blockquote> <p>"So etwas kannst du hier nicht sehen" ist weniger explizit, und explizit sollen die expliziten Fehlermeldungen ja sein.</p> </blockquote> <p>Ok, ich finde die Fehlermeldung mit dem Zusammenhang eher verwirrend, aber ist wohl Ansichtssache.</p> <p><strong>Zitat:</strong></p> <blockquote> <pre><code class="language-Table"></code></pre> </blockquote> <p>library-action library-message-id library-message-text</p> <p>-- 98 "Du siehst '[original word]' hier nicht."```</p> <p>Ach so! Das ist ja mal wirklich genial!</p> <p>Gruß,</p> <p>T. R. Z.</p></div></td> |
Geschrieben um 19:12 am 11.02.2011 | Zitat | Editieren | Löschen | |
Mitglied Retired Gumby Beiträge: 1062 | Bei den geänderten Library Messages muss man nur aufpassen, dass im Spiel nicht nach der Meldung eine zusätzliche Leerzeile eingefügt wird. Sollte das passieren, müsstest Du die geänderte Meldung nach dem Satzende, aber vor den schließenden Anführungszeichen, folgendermaßen ergänzen: blue |
Geschrieben um 20:55 am 12.02.2011 | Zitat | Editieren | Löschen | |
Mitglied Prof Gumby Beiträge: 634 | Tim Z.:
Der Satz mit dem Zusamenhang ist zugegebenermaßen nicht sehr schön, hat aber den Vorteil, dass er das nicht verstandene Wort erwähnt und allgemein gültig ist. Natürlich wäre es in Deinem Beispiel schöner, wenn es hieße "Du siehst hier keinen Spock", oder noch besser "Du siehst Spock hier nicht", aber das ist mit dem Parser von I6, der mit deform ja auch die Satzanalyse für I7 und GerX macht, nicht ohne weiteres möglich: Der Parser untersucht immer nur die Objekte, die momentan sichtbar (bzw. im Inform-Jargon "in scope") sind. Ob Spock sich also auf ein Objekt außerhalb des Sichtfelds des Spielers bezieht, ist dem Parser nicht bekannt. Daher die generische Fehlermeldung. Inform überprüft nur das Vokabular der sichtbaren Objekte, damit es schneller geht. Wenn man immer alle Objekte untersuchte, würde der Parser gewiss schon bei einem mittelgroßen Spiel länger brauchen, was am wenig effizienten Prüf-Algorithmus liegt: In einer Schleife über alle sichtbaren Objekte wird zu jedem Objekt das Vokabular geprüft. Das ist ein wenig so, als ob das Telefonbuch nach Nummern, nicht nach Namen sortiert wäre. Man könnte natürlich, wenn die explizite Fehlermeldung ausgegeben wird, prüfen, ob das nicht erkannte Wort die Vokabel irgendeines Objekts ist und nicht etwa ein Artikel, eine Präposition oder ein Verb. Aber auch da bekommt man Probleme, zum Beispiel mit Adjektiven, wenn es dann hieße "Du siehst hier kein Groß." oder so. Von der Fehlermeldung "Du siehst so etwas hier nicht" halte ich nicht so viel, weil sie bei zwei (oder mittlerweile ja drei!) Objekten oder bei einem Objekt, das mit mehreren Wörtern beschrieben wird, nicht genau sagt, wo der Fehler ist. Der I6-Parser, und damit auch deform, ist gewiss nicht ideal. Aber es war mein Ziel, als ich die Übersetzung der 6/11 zu deform gemacht habe, möglichst nahe am englischen Original-Parser zu sein. Und der erlaubt es immerhin, Fehlermeldungen zu ersetzen, wenn sie einem nicht gefallen. :-) |