lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Stop \lyricmode { \skip 1.*3 } from failing. (issue 13256053)


From: dak
Subject: Re: Stop \lyricmode { \skip 1.*3 } from failing. (issue 13256053)
Date: Mon, 23 Sep 2013 06:50:56 +0000

Reviewers: Vik Reykja,

Message:
On 2013/09/22 22:30:51, Vik Reykja wrote:
I think a patch like this requires at least one regression test.

Well, actually the original lexer.ll patch would more likely have called
for a regression test as it covers a lot more change.

Would you want to propose one?  A sole \lyricmode { \skip 1.*3 } seems a
bit flimsy.

Description:
Stop \lyricmode { \skip 1.*3 } from failing.

The problem was that the lexer preferred to match ".*" as a word since
the matched pattern was longer than the explicit pattern matching ".".
The word pattern is now amended so that it does not compete with the
single-character patterns.

Please review this at https://codereview.appspot.com/13256053/

Affected files (+1, -1 lines):
  M lily/lexer.ll


Index: lily/lexer.ll
diff --git a/lily/lexer.ll b/lily/lexer.ll
index cebbd19627190c2504fbe5b547f8be83435cd16f..e896de3d638bc14a34c20037d7f72dfa4a9fae89 100644
--- a/lily/lexer.ll
+++ b/lily/lexer.ll
@@ -585,7 +585,7 @@ BOM_UTF8    \357\273\277
                 yylval = SCM_UNSPECIFIED;
                return YYText ()[0];
        }
-       [^$#{}\"\\ \t\n\r\f0-9]+ {
+       [^|*.=$#{}\"\\ \t\n\r\f0-9][^$#{}\"\\ \t\n\r\f0-9]* {
                /* ugr. This sux. */
                string s (YYText_utf8 ());
                 yylval = SCM_UNSPECIFIED;





reply via email to

[Prev in Thread] Current Thread [Next in Thread]