diff --git a/ges/ges-structure-parser.c b/ges/ges-structure-parser.c index e0dfa1fc22..3244d3eefe 100644 --- a/ges/ges-structure-parser.c +++ b/ges/ges-structure-parser.c @@ -121,10 +121,16 @@ ges_structure_parser_parse_symbol (GESStructureParser * self, { _finish_structure (self); - while (*symbol == '-' || *symbol == ' ') + while (*symbol == ' ') symbol++; - ges_structure_parser_parse_string (self, symbol, TRUE); - self->add_comma = TRUE; + + self->add_comma = FALSE; + if (!g_ascii_strncasecmp (symbol, "clip", 4)) + ges_structure_parser_parse_string (self, "clip, uri=", TRUE); + else if (!g_ascii_strncasecmp (symbol, "effect", 6)) + ges_structure_parser_parse_string (self, "effect, bin-description=", TRUE); + else if (!g_ascii_strncasecmp (symbol, "transition", 10)) + ges_structure_parser_parse_string (self, "transition, type=", TRUE); } void diff --git a/ges/parse.l b/ges/parse.l index ab6bb50a36..e09e9aa787 100644 --- a/ges/parse.l +++ b/ges/parse.l @@ -10,11 +10,11 @@ %option never-interactive %option noinput -CLIP [ ]+--clip[ ]+|[ ]+-c[ ]+ -TRANSITION [ ]+--transition[ ]+|[ ]+-t[ ]+ -EFFECT [ ]+--effect[ ]+|[ ]+-e[ ]+ +CLIP [ ]+clip[ ]+ +TRANSITION [ ]+transition[ ]+ +EFFECT [ ]+effect[ ]+ -SETTER [ ]+--set-[^ ]+[ ]+ +SETTER [ ]+set-[^ ]+[ ]+ %%