summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThibault Saunier <tsaunier@gnome.org>2015-03-13 12:02:30 +0000
committerThibault Saunier <tsaunier@gnome.org>2015-03-23 12:41:00 +0100
commit663824d20f7ba583092bdb4e57c93de73f9cf28d (patch)
tree28f5bbdf7100fba8a4c6391c1f7c21068369c47f
parent20d94bea134330d7d3ce76b70b4e56b350d841b2 (diff)
ges-launch: Prefix clip, transition and effect instruction with a +
Slightly changing the CLI so that we have indicators of the timeline commands adding new objects.
-rw-r--r--data/completions/ges-launch-1.015
-rw-r--r--ges/ges-structure-parser.c2
-rw-r--r--ges/parse.l6
3 files changed, 12 insertions, 11 deletions
diff --git a/data/completions/ges-launch-1.0 b/data/completions/ges-launch-1.0
index e660a8a3..14b36557 100644
--- a/data/completions/ges-launch-1.0
+++ b/data/completions/ges-launch-1.0
@@ -75,7 +75,7 @@ _ges_effect () {
then
_mandatory__argument
else
- COMPREPLY=( $(compgen -W "duration= start= layer= $(ges-launch-1.0 help all | egrep '^ [a-zA-Z0-9]')" -- $cur) )
+ COMPREPLY=( $(compgen -W "duration= start= layer= $(ges-launch-1.0 help all | egrep '^ +')" -- $cur) )
fi
}
@@ -84,7 +84,7 @@ _ges_list_options () {
}
_ges_list_commands () {
- COMPREPLY=( $(compgen -W "$(ges-launch-1.0 help all | egrep '^ [a-zA-Z0-9]')" -- $cur) )
+ COMPREPLY=( $(compgen -W "$(ges-launch-1.0 help all | egrep '^ +')" -- $cur) )
}
_ges_list_properties () {
@@ -93,10 +93,10 @@ _ges_list_properties () {
if [[ "$real_command" == "" ]]
then
_mandatory__argument
- elif [[ "$real_command" == "clip" ]]
+ elif [[ "$real_command" == "+clip" ]]
then
COMPREPLY=( $(compgen -W "set-alpha set-posx set-posy set-width set-height set-volume set-mute" -- $cur) )
- elif [[ "$real_command" == "effect" ]]
+ elif [[ "$real_command" == "+effect" ]]
then
COMPREPLY=()
effect_bin_description="${effect_bin_description//\"/ }"
@@ -134,7 +134,7 @@ __ges_main ()
{
local i=1 c=1 command function_exists completion_func commands real_command effect_bin_description
- commands=($(ges-launch-1.0 help all | egrep '^ [a-zA-Z0-9]'))
+ commands=($(ges-launch-1.0 help all | egrep '^ +'))
real_command=""
effect_bin_description=""
@@ -154,7 +154,7 @@ __ges_main ()
then
real_command="$var"
command="$var"
- if [[ "$var" == "effect" ]]
+ if [[ "$var" == "+effect" ]]
then
effect_bin_description="${COMP_WORDS[i+1]}"
fi
@@ -165,7 +165,8 @@ __ges_main ()
if [[ "$command" == "--gst"* ]]; then
completion_func="_${command//-/_}"
else
- completion_func="_ges_${command//-/_}"
+ completion_func="_ges_${command//-|+/_}"
+ completion_func="${completion_func//+/}"
fi
declare -f $completion_func >/dev/null 2>&1
diff --git a/ges/ges-structure-parser.c b/ges/ges-structure-parser.c
index 3244d3ee..37b530fa 100644
--- a/ges/ges-structure-parser.c
+++ b/ges/ges-structure-parser.c
@@ -121,7 +121,7 @@ ges_structure_parser_parse_symbol (GESStructureParser * self,
{
_finish_structure (self);
- while (*symbol == ' ')
+ while (*symbol == ' ' || *symbol == '+')
symbol++;
self->add_comma = FALSE;
diff --git a/ges/parse.l b/ges/parse.l
index e09e9aa7..a7df14fc 100644
--- a/ges/parse.l
+++ b/ges/parse.l
@@ -10,9 +10,9 @@
%option never-interactive
%option noinput
-CLIP [ ]+clip[ ]+
-TRANSITION [ ]+transition[ ]+
-EFFECT [ ]+effect[ ]+
+CLIP [ ]+\+clip[ ]+
+TRANSITION [ ]+\+transition[ ]+
+EFFECT [ ]+\+effect[ ]+
SETTER [ ]+set-[^ ]+[ ]+