Continous Command Recognition (CCR)¶
One of dragonfly’s most powerful features is continuous command recognition
(CCR), that is commands that can be spoken together without pausing. This is
done through use of a dragonfly.grammar.element_basic.Repetition
rule element. There is a mini-demo of continuous command recognition
on YouTube. There are also
a few projects using dragonfly which make writing CCR rules easier:
Caster (documentation) — Caster has out-of-the-box support for CCR, with commands for typing alphanumeric and common punctuation characters as well as some useful navigation commands. You can also add custom CCR rules using the
MergeRule
class. There is more information on how to do that in the documentation.dragonfluid (documentation) — dragonfluid has drop-in replacements for dragonfly’s element, grammar and rule classes that support CCR. The documentation has more information on this. You should be able to use dragonfluid with dragonfly2 by installing it without dependencies:
pip install --no-deps dragonfluid
dragonfly-scripts — The dragonfly-scripts project uses a
SeriesMappingRule
class in many grammar files to allow commands in aMappingRule
to be recognised continuously without pauses.