an id is necessary for each parameters to allow for true branching, the way it works now every subcommand can match the depth below itself if it has subcommands which is not desirable if you want to chain lots of different keywords together you can match on things that don't make sense
root turn
sub1 your
sub1 the
sub2 blender
sub2 house
sub3 on
sub3 off
sub3 lights
sub4 on
sub4 off
turn your house off == valid? I guess if you want to turn your whole house off
turn the blender lights on == maybe valid for some super fancy blender?
a parent/unique id pair would alleviate the problem I believe, the logic testing would be in the subcommand search section of _launchLogic()
an id is necessary for each parameters to allow for true branching, the way it works now every subcommand can match the depth below itself if it has subcommands which is not desirable if you want to chain lots of different keywords together you can match on things that don't make sense
root turn sub1 your sub1 the sub2 blender sub2 house sub3 on sub3 off sub3 lights sub4 on sub4 off
turn your house off == valid? I guess if you want to turn your whole house off turn the blender lights on == maybe valid for some super fancy blender?
a parent/unique id pair would alleviate the problem I believe, the logic testing would be in the subcommand search section of _launchLogic()