currently, most of xvoice own vocabulary handling is
done through grammars loaded at runtime, recompiled if
necessary. The most crucial parts of the grammars,
however, are currently hard coded.
This means that the words commanding the switch from
dictation mode to command mode and vice versa cannot be
changed. Those words cannot be recognized from at least
one language vocabulary (namely the French one).
Therefore, one cannot currently use xvoice without
recompiling it for his or her target language.
There are two solutions for this problem: one can fork
the project for each possible target language (there
are currently eight languages supported by the IBM
ViaVoice system), or one can define those "magic words"
in in a configuration file loaded at runtime. This
second solution is probably much better.
Since any non-English- speaking user of xvoice will
probably have to redefine the xml grammars anyway (most
of the English words used in the English xvoice
commands cannot be spoken in other languages),
unifying " magic words" handling and regular X M L
parsing would, in fact, simplify things ...
I haven't had much time to skim through the source
code. I will try to submit a patch, but I would like
to hear first the current maintainers' opinion.
So what are your thoughs about this?