=========================================================================== INFORM TRANSLATION REPORT FOR GERMAN Mainly Adaption to library 6/8 Toni Arnold, 1999 --------------------------------------------------------------------------- ========== german.h ========== Library 68 neu ueberschrieben mit den deutschen Teilen Neue Library Messages --------------------- ScriptOn, ScriptOff, 3: der Versuch.. scheiterte EmptyT, 4: das wird kaum... Probleme -------- ? NO1__WD: kann das als "n//" definiert werden ohne Kollision mit Nord? ? "frag x über y" VS "frag x nach y": im Englischen eindeutig. Im Deutschen sollte jedoch irgendwie disamgiguiert werden (languagetoinformese.....:-( ? WriteListFrom funktioniert natürlich immer noch ungenau. Currently Nominativ, wird jedoch zu ergänzen sein früher oder später. Problem: the, a etc. lassen sich nicht mit Replace ersetzen, d.h. die ganze Routine muss ersetzt werden. Ausserordentlich blöd, falls Graham sie verbessert. behobene Bugs ------------- # "b bücher" ging nicht (VS "b buecher" ging) -> tokenize-Problem, behoben in Z. 285 & 334 # Schalte ein/aus bei nicht schaltbarem Objekt ergab Quatsch-Sätze. # GEristSiesind funktionierte nicht (?! wieso nicht früher gesehen ?!) # Punktestand ... um einEN Punkt. =========== germang.h =========== Library 68 neu ueberschreiben mit den deutschen Teilen Ergaenzung mit der Library von Ralf Herrmann (Feb 99) ============================================ Einzelne Kompassrichtungen angepasst; Library selbst stellte sich als zu kompliziert heraus fuer meine Ansprueche. -------------------------------------------------------------- Ergaenzung mit der Library von Max Kalus (April 99) ================================================================ April 99 forts. =============== v.a. Detailergaenzungen und BUGS. =========== tgerman.h: =========== - Wenn short_name ein String ist, funktioniert's. Ist's eine Routine, stuerzte alles ab. -> behoben, allerdings funktioniert die 'e'-Elision nicht bei einer Routine, da die Endung des von der Routine geschriebenen Stamms nicht bekannt ist. Damit die 'e'-Elision funktioniert, MUSS der Name des Objekts als short_name gegeben werden. - proper-Property: definite Artikel werden jetzt auch nicht mehr gedruckt bei Eigennamen. Sind Adjektive vorhanden, wird statt anstatt dem Indefiniten der definite Artikel gedruckt. - Adjektive geändert, so dass Adj ein Array ist. - Nulldeklinationsklasse (mit dekl 0) hinzugefügt - am 7.4. Debug-Fehler (einen) wieder entfernt :-( - 9.4.: Überarbeitung Adjektive und Namen etc. etc., dauerte Stunden, sollte jetzt aber besser sein (siehe html-Doku). - 14.4.: obj.&name VS obj.short_name überprüft. Bleibt ein Rätsel. obj.short_name ist eine Zahl; print (string) obj.short_name; -> geht obj.&name-->0 ist eine Zahl; print (string) obj.&name-->0; -> geht NICHT zweites Beispiel: x = fernseher.&adj-->0; x.print_to_array(buf); print "#";ta_PrintArrayBuf(buf); print "#^"; --> FUNKTIONIERT statt dessen: x = fernseher.&name-->0; --> 6.15 Run-time error: [Hit any key to exit.] :-( 6.20 ** Programming errof: [Hit.... :-( -> Ergebnis: das name-Array ist kein echtes Array könnte damit zu tun haben, dass "name" überladen ist; das "name"-Array ist ja AUCH ein Dictionary-Array (-> Parser). (name) obj hingegen sollte obj ohne Artikel drucken; im Deutschen ein wenig ein schwieriges Unterfangen, ist doch die Adjektivdeklination auch dann völlig unklar, wenn es 4 (name)-Objekte für 4 Kasus gibt. - 14.4.: "Kugel" -> "Kugelen" -> -el + en = eln ------------------------------------------------------------------------------ ========= german.h ========= - 14.4.: score verbessert ("1 em Zug" weggemacht) ------------------------------------------------------------------------------ ================ verblibm.h (?!) ================ Unverständlicher bug, "Nimm den Hammer" produzierte plötzlich Fehler. -> Z 112 geändert auf L__M(##Take,1,noun); ! @ta -> 7.4.: inzwischen verstanden: hatte unbesehen die LibraryMessage von Max Kalus übernommen. ------------------------------------------------------------------------------ ============ verblib.h ============ - Überarbeitung generell - ListMiscellany in german.h könnte evtl. jetzt funktionieren (7.4.) - leuchtend durch "Licht spendend" ersetzt - WHOM_TX und IST_TX = "" - IS2__TX und ARE2__TX = "siehst du " ------------------------------------------------------------------------------ ================================= Sonntag 19.9. Standardisierung von germang.h und german.h Dank an die Leute von if-de.org ... to be continued ... ================================= Folgendes habe ich hinzugefügt: - "gehe nach draussen" - date/datum & diagnose & time: gibt es nicht in der Inform-Library; (diagnose z.B. in Trinity schon...) -> Spiel-Spezifisch - "leg obj ab" - "Besitz" für Inventar - "wieder" durch "wiederhole" ersetzt; die drei Synonyme sind jetzt "nochmals", "wiederhole" und "g" - "skript an" - "herab" - "verlier obj" für "lass obj fallen" Kontrollbefehle (meta-Verben in Informesisch) sind nun bilingual, d.h. werden auch auf englisch verstanden. 26.9.: "e", "se" und "ne" funktionierten nicht wegen "e"-Elision im Deutschen -> behoben, indem "e" nur noch bei "Verben" mit Länge > 2 gelöscht wird. - "u" als äquivalente Abkürzung für "b" und "schau Objekt an" -> Konsequenz: "u" gilt nicht abk. für engl. "up" ====================================================== Dezember 1999: Update auf Version 6/10 ====================================================== Änderungem in der Library 6/10 ------------------------------ Da ich die dt. Übersetzungen nicht komplett übernehmen kann, hier die Änderungenvon 6/9 zu 6/10: English.h entspricht German.h ----------------------------- -Titel -Enter: Reaktion geändert (d.h. nach Verb separiert) Grammar.h --------- -Titel (ansonsten identisch) Verblibm.h ---------- Um sciherzugehen, schreibe ich die Differenzen zwischen Original und dt. Version: 9-12: zusätzlich ! Anpassungen fuers Deutsche 1999 by Toni Arnold ! Serial No 991216; ! WriteList neu mit Kasus (siehe tgerman.h) ! Angepasst an GLK-Inform 178: (na ja, ist eh auskommentiert....) ! print (den) x, " no: ", x, " lt: ", x.list_together, "^"; 372ff: <<< { if (c_style & NOARTICLE_BIT ~= 0) print (name) j; else { if (c_style & DEFART_BIT ~= 0) print (the) j; else print (a) j; } >>> { if (c_style & NOARTICLE_BIT ~= 0) { !*ger switch(WriteListCase) { !*ger Nom: print (_er) j; !*ger Akk: print (_en) j; !*ger Dat: print (_em) j; !*ger Gen: print (_es) j; !*ger } !*ger } !*ger else { switch(WriteListCase) { !*ger Nom: if (j has proper) print (_er) j; else !*ger if (c_style & DEFART_BIT ~= 0) print (der) j; else print (ein) j; !*ger Akk: if (j has proper) print (_en) j; else !*ger if (c_style & DEFART_BIT ~= 0) print (den) j; else print (einen) j; !*ger Dat: if (j has proper) print (_em) j; else !*ger if (c_style & DEFART_BIT ~= 0) print (dem) j; else print (einem) j; !*ger Gen: if (j has proper) print (_es) j; else !*ger if (c_style & DEFART_BIT ~= 0) print (des) j; else print (eines) j; !*ger } !*ger } 484ff: <<< if (c_style & NOARTICLE_BIT ~= 0) print (name) j; else { if (c_style & DEFART_BIT ~= 0) print (the) j; else print (a) j; } >>> if (c_style & NOARTICLE_BIT ~= 0) { !*ger switch(WriteListCase) { !*ger Nom: print (_er) j; !*ger Akk: print (_en) j; !*ger Dat: print (_em) j; !*ger Gen: print (_es) j; !*ger } !*ger } !*ger else { switch(WriteListCase) { !*ger Nom: if (j has proper) print (_er) j; else !*ger if (c_style & DEFART_BIT ~= 0) print (der) j; else print (ein) j; !*ger Akk: if (j has proper) print (_en) j; else !*ger if (c_style & DEFART_BIT ~= 0) print (den) j; else print (einen) j; !*ger Dat: if (j has proper) print (_em) j; else !*ger if (c_style & DEFART_BIT ~= 0) print (dem) j; else print (einem) j; !*ger Gen: if (j has proper) print (_es) j; else !*ger if (c_style & DEFART_BIT ~= 0) print (des) j; else print (eines) j; !*ger } !*ger } !*ger 1125: < { f=1; print (the) i; j=parent(i); > { f=1; print (der) i; j=parent(i); 1467: < L__M(##Take,1); > L__M(##Take,1,noun); ! @ta 1902: < { if (visibility_ceiling ~= location) print (The) visibility_ceiling > { if (visibility_ceiling ~= location) print (Gder) visibility_ceiling; 2383: < if (parent(obj) == 0) print (name) obj; else print (a) obj; > if (parent(obj) == 0) print (_er) obj; else print (ein) obj; 2407: < [ Print_ScL obj; print_ret ++x_scope_count, ": ", (a) obj, " (", obj, ")"; ]; > [ Print_ScL obj; print_ret ++x_scope_count, ": ", (ein) obj, " (", obj, ")"; ];