diff options
-rw-r--r-- | libstorycode/storycode.l | 7 | ||||
-rw-r--r-- | libstorycode/storycode.y | 2 |
2 files changed, 6 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++; } diff --git a/libstorycode/storycode.y b/libstorycode/storycode.y index daf2504..19d9b1f 100644 --- a/libstorycode/storycode.y +++ b/libstorycode/storycode.y @@ -243,6 +243,8 @@ text_line: text_run: RUN_TEXT { $$.text = $1; $$.type = NARRATIVE_RUN_NORMAL; } | '*' RUN_TEXT '*' { $$.text = $2; $$.type = NARRATIVE_RUN_BOLD; } +| '/' RUN_TEXT '/' { $$.text = $2; $$.type = NARRATIVE_RUN_ITALIC; } +| '_' RUN_TEXT '_' { $$.text = $2; $$.type = NARRATIVE_RUN_UNDERLINE; } /* -------- Slide -------- */ |