Add handle for translator acknowledgement
[xboard.git] / parser.l
index 48b94ff..e78c23c 100644 (file)
--- a/parser.l
+++ b/parser.l
@@ -823,6 +823,9 @@ extern void CopyBoard P((Board to, Board from));
 }
 
 [A-Za-z][@*][a-l][0-9] {
+
+    if (yyskipmoves) return (int) AmbiguousMove; /* not disambiguated */
+
     /* Bughouse piece drop. */
     currentMoveString[1] = '@';
     currentMoveString[2] = yytext[2];
@@ -899,19 +902,19 @@ extern void CopyBoard P((Board to, Board from));
     return (int) (ToUpper(yytext[0]) == 'W' ? BlackWins : WhiteWins);
 }
 
-("{"[^\}\n]*"} ")?(1-0|"1 - 0"|"1/0"|"1 / 0"|"1:0"|"1 : 0")(" (".*")"|" {".*"}")? { 
+("{"[^\}]*"}"[ \n])?(1-0|"1 - 0"|"1/0"|"1 / 0"|"1:0"|"1 : 0")(" (".*")"|" {".*"}")? { 
     return (int) WhiteWins;
 }
 
-("{"[^\}\n]*"} ")?(0-1|"0 - 1"|"0/1"|"0 / 1"|"0:1"|"0 : 1")(" (".*")"|" {".*"}")? { 
+("{"[^\}]*"}"[ \n])?(0-1|"0 - 1"|"0/1"|"0 / 1"|"0:1"|"0 : 1")(" (".*")"|" {".*"}")? { 
     return (int) BlackWins;
 }
 
-("{"[^\}\n]*"} ")?("1/2"|"1 / 2")(" "?[-:]" "?("1/2"|"1 / 2"))?(" (".*")"|" {".*"}")? {
+("{"[^\}]*"}"[ \n])?("1/2"|"1 / 2")(" "?[-:]" "?("1/2"|"1 / 2"))?(" (".*")"|" {".*"}")? {
     return (int) GameIsDrawn;
 }
 
-("{"[^\}\n]*"} ")?"*"(" (".*")"|" {".*"}")? {
+("{"[^\}]*"}"[ \n])?"*"(" (".*")"|" {".*"}")? {
     return (int) GameUnfinished;
 }