diff options
author | Thomas White <taw@bitwiz.me.uk> | 2019-09-16 23:13:26 +0200 |
---|---|---|
committer | Thomas White <taw@bitwiz.me.uk> | 2019-09-16 23:13:26 +0200 |
commit | 83a9bd9c33a5eb6e54053d0ec8ab1e5b1ddd7826 (patch) | |
tree | 76a6ec2dd8c04f71a76e0e62ff7cd4a68eca3799 /libstorycode/storycode.l | |
parent | c6abe4626c40d4925d6233cf0ca1c30cd49a22cd (diff) |
Parser fixes
Diffstat (limited to 'libstorycode/storycode.l')
-rw-r--r-- | libstorycode/storycode.l | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libstorycode/storycode.l b/libstorycode/storycode.l index b4dbb03..e0dd6f8 100644 --- a/libstorycode/storycode.l +++ b/libstorycode/storycode.l @@ -88,11 +88,12 @@ BGCOL { BEGIN(col); return SC_BGCOL; } <INITIAL>:[ ] { BEGIN(runtext); return SC_TEXT_START; } <runtext>[\\] { BEGIN(stringesc); } -<stringesc>[.] { sclval.str = strdup(yytext); BEGIN(runtext); return SC_RUN_TEXT; } +<stringesc>. { sclval.str = strdup(yytext); BEGIN(runtext); return SC_RUN_TEXT; } <runtext>[\*] { return '*'; } -<runtext>[^\*\n]* { sclval.str = strdup(yytext); +<runtext>[/] { return '/'; } +<runtext>[_] { return '_'; } +<runtext>[^\\\*/_\n]* { sclval.str = strdup(yytext); sclval.str[yyleng] = '\0'; - lineno++; return SC_RUN_TEXT; } <runtext>\n { BEGIN(0); lineno++; } |