Voice input in emacs
My work on voice input in emacs is based on the code I picked up
from vr-mode.
There are several parts to this; some of them are shared with pedal input to emacs.
  -  Versor
  
 -  Versor maps various forms of navigation (expressions, words,
      phrases, functions, etc) onto the cursor keys, using the cursor
      keys themselves, with modifiers, to navigate around the space of
      navigation spaces. It also works well with voice, allowing the
      dimension to be assigned by speaking its name.
  
 -  Flexible choose
  
 -  This is like completing-read, but divides the list into a tree
      structure, with a convenient number of choices at each level.
      They can then be reached quickly by cursor keys (or pedals) or by speaking the number of the
      choice at that level. You can also say a word or words occurring
      in one or more of the choices, and have the choices filtered to
      those containing the words spoken. When the list is narrowed
      down to one ``choice'' (i.e. no choice at all!) that is taken as
      selected; this way, choices can be made without having to speak
      punctuation characters.
  
 -  Embedded-Commands
  
 -  In embedded-command mode, you dictate, in continuous speech, into an Emacs buffer which
      spots commands and executes them as you dictate them. When doing this,
      you can mix commands and text be entered -- the words forming the
      command phrases are removed as they are used. Embedded command mode is
      a minor mode, so that it can be used with other Emacs modes.
 
See also voice input for
links.