aboutsummaryrefslogtreecommitdiff
path: root/libstorycode
diff options
context:
space:
mode:
authorThomas White <taw@bitwiz.me.uk>2019-02-23 16:45:15 +0100
committerThomas White <taw@bitwiz.me.uk>2019-02-23 16:45:15 +0100
commit14c998b253489b88bc4da904409e32c86bbe92c0 (patch)
tree00bd246717eee5e5e8e1d612e9fbe58807f636e4 /libstorycode
parent77ef611a5a6ee3bf7456d0fb5f26f708b8433971 (diff)
Everything needed for demo doc
Diffstat (limited to 'libstorycode')
-rw-r--r--libstorycode/storycode.l3
-rw-r--r--libstorycode/storycode.y44
2 files changed, 31 insertions, 16 deletions
diff --git a/libstorycode/storycode.l b/libstorycode/storycode.l
index 98f8f6a..0406ee3 100644
--- a/libstorycode/storycode.l
+++ b/libstorycode/storycode.l
@@ -45,12 +45,13 @@ SLIDETITLE { return SC_SLIDETITLE; }
NARRATIVE { return SC_NARRATIVE; }
SLIDE { return SC_SLIDE; }
BP { return SC_BP; }
-TYPE { return SC_TYPE; }
+GEOMETRY { return SC_GEOMETRY; }
TEXT { return SC_TEXTFRAME; }
IMAGE { return SC_IMAGEFRAME; }
FOOTER { return SC_FOOTER; }
FONT { return SC_FONT; }
PAD { return SC_PAD; }
+PARASPACE { return SC_PARASPACE; }
ALIGN { return SC_ALIGN; }
FGCOL { return SC_FGCOL; }
BGCOL { return SC_BGCOL; }
diff --git a/libstorycode/storycode.y b/libstorycode/storycode.y
index b2b2afa..9d1e74f 100644
--- a/libstorycode/storycode.y
+++ b/libstorycode/storycode.y
@@ -65,14 +65,14 @@
%token IMAGEFRAME
%token BP
-%token FONT TYPE PAD ALIGN FGCOL BGCOL
+%token FONT GEOMETRY PAD ALIGN FGCOL BGCOL PARASPACE
%token LEFT CENTER RIGHT
%token STRING
%token OPENBRACE CLOSEBRACE
%token SQOPEN SQCLOSE
-%token PLUS TIMES
+%token PLUS TIMES COLON
%token UNIT VALUE SIZE
%type <p> presentation
@@ -267,27 +267,40 @@ style_narrative:
style_narrative_def:
%empty
-| style_narrative_def style_prestitle
+| style_narrative_def style_narrative_prestitle
| style_narrative_def styledef
;
+style_narrative_prestitle:
+ PRESTITLE OPENBRACE styledefs CLOSEBRACE { printf("narrative prestitle style\n"); }
+;
+
style_slide:
SLIDE OPENBRACE style_slide_def CLOSEBRACE { printf("slide style\n"); }
;
style_slide_def:
%empty
-| style_slide_def style_prestitle
-| style_slide_def style_slidesize
-| style_slide_def styledef
+| style_slide_def style_slide_prestitle { printf("slide prestitle\n"); }
+| style_slide_def style_slide_text { printf("slide text\n"); }
+| style_slide_def style_slide_title { printf("slide title\n"); }
+| style_slide_def style_slidesize { printf("slide size\n"); }
;
style_slidesize:
- SIZE length TIMES length { $$.w = $2; $$.h = $4; $$.x.len = 0.0; $$.y.len = 0.0; }
+ SIZE length TIMES length { $$.w = $2; $$.h = $4; $$.x.len = 0.0; $$.y.len = 0.0; printf("size\n");}
+;
+
+style_slide_prestitle:
+ PRESTITLE OPENBRACE styledefs CLOSEBRACE { printf("slide prestitle style\n"); }
+;
+
+style_slide_title:
+ SLIDETITLE OPENBRACE styledefs CLOSEBRACE { printf("slide title style\n"); }
;
-style_prestitle:
- PRESTITLE OPENBRACE styledefs CLOSEBRACE { printf("prestitle style\n"); }
+style_slide_text:
+ TEXTFRAME OPENBRACE styledefs CLOSEBRACE { printf("slide text style\n"); }
;
styledefs:
@@ -296,12 +309,13 @@ styledefs:
;
styledef:
- FONT STRING { printf("font def: '%s'\n", $2); }
-| TYPE STRING { printf("type def: '%s'\n", $2); }
-| PAD STRING { printf("pad def: '%s'\n", $2); }
-| FGCOL STRING { printf("fgcol def: '%s'\n", $2); }
-| BGCOL STRING { printf("bgcol def: '%s'\n", $2); }
-| ALIGN STRING { printf("align def: '%s'\n", $2); }
+ FONT STRING { printf("font def: '%s'\n", $2); }
+| GEOMETRY STRING { printf("type def: '%s'\n", $2); }
+| PAD STRING { printf("pad def: '%s'\n", $2); }
+| PARASPACE STRING { printf("align def: '%s'\n", $2); }
+| FGCOL STRING { printf("fgcol def: '%s'\n", $2); }
+| BGCOL STRING { printf("bgcol def: '%s'\n", $2); }
+| ALIGN STRING { printf("align def: '%s'\n", $2); }
;
%%