Vocola Versions

This page lists the released versions of Vocola 2 and the changes they included, with the most recent version first. To download Vocola 2, click on the link next to the version you want.

Version 2.8.7 -- December 28, 2021 (Vocola-2-8-7.zip)

  • By default, Vocola now uses SendInput instead of SendDragonKeys to send keystrokes. This should work better in most cases: SendInput is immune to the character doubling/dropping bug, for example. SendInput, however, does not work with UAC-elevated windows and may have issues with some foreign-language keyboard settings.
  • Accordingly, you may now temporarily switch back to SendDragonKeys via a voice command, add code in the the DragonProxy extension (see below) to further translate keystrokes as needed, or simply delete the DragonProxy extension to permanently switch back to using SendDragonKeys.
  • More information on the different ways of sending keystrokes may be found on the Vocola 2 website at /v2/SendingKeystrokes.
  • The following unofficial Vocola extensions have been made official, and are now included in the Vocola 2 release: Clipboard, Date, Env, Keys, Subprocess, Variable, and Vocola
  • Python version 2.6 is no longer supported
  • Vocola now supports a Dragon proxy, which is a special Vocola extension that can intercept and change or redirect Vocola's calls to Dragon. A starter version of the proxy is provided which can switch back and forth between SendDragonKeys and SendInput for default keystrokes as well as print out Dragon actions when verbose mode is turned on.
  • Vocola now prints an error if the user redefines an extension function
  • A great deal of portability work has been done under the covers to make Vocola 2 work with Python 3. Hopefully the next version will support Python 3.
  • Vocola 2 is being refactored to be more flexible. As part of this, it is now possible to choose a backend dynamically at "compile time". This is intended to be used for "cross-compilation" -- e.g., compiling to Dragonfly or Advanced Scripting instead of NatLink directly. Currently only NatLink and trivial echo backends are available.
  • For more details, see these release notes

Version 2.8.6 -- July 2, 2016 (Vocola-2-8-6.zip)

  • Grammar rules are now [de]activated as infrequently as possible; this improves performance with DNS 13/DPI 14, which take a long time to deactivate grammars.
  • Executables whose names contain underscores are now properly handled. For example, a Vocola file named xyz_inc_edit__routines.vcl now contains commands that work only with executables named xyz_inc_edit__routines, xyz_inc_edit, xyz_inc, and xyz.
  • As of DNS 13, <_anything> can no longer match nothing. Accordingly, [<_anything>], [[with] <_anything>], and the like are now permitted.
  • For more details, see these release notes

Version 2.8.5 -- January 8, 2016 (Vocola-2-8-5.zip)

  • Workaround for the doubling/dropping bug: key sequences are now preceded by the current-language-appropriate version of {shift}; doubling or dropping of the initial shift key down event does not affect later keystrokes.
  • Updating to a different version of Vocola is now much easier; just:
    • unzip it to a temporary location, say T
    • run (e.g., double click) T/install.bat
    • (re)start Dragon
    Updating from source code is similar but you instead run R/src/install.bat where R is the Vocola 2 repository root.
  • New exception, VocolaRuntimeAbort, that Vocola extensions may raise to abort the current utterance without error.
  • If the user's command folder C contains a subdirectory matching the current language's short name (e.g., enx for English), use that subdirectory (e.g., C/enx) as their command folder instead. This allows multilingual users to have separate commands for each language they use.

Version 2.8.2 -- April 18, 2015 (Vocola-2-8-2.zip)

  • This is a minor bug fix release; for more details, see these release notes

Version 2.8.1 -- December 29, 2013 (Vocola-2-8-1.zip)

  • Any series of one or more terms at least one of which is not optional or <_anything> can now be optional.
  • New built-ins, If and When.
  • For more details, see these release notes

Version 2.8 -- April 15, 2013 (Vocola-2-8.zip)

  • The Vocola 2 compiler has been ported from Perl to Python, mostly line by line except for the parser.
  • The parser has been replaced with a new one that produces better error messages, describing what was found versus what was expected and visually pointing to the error.
  • Non-backward compatible parsing changes:
    • unquoted words may no longer end with ':' if they are not followed by whitespace.
    • whitespace may no longer be omitted between variables (e.g., <list><list>); the fact that this ever worked was a bug.
  • Versions of Python earlier than 2.5 are no longer supported.
  • For more details, see these release notes

Version 2.7.3 -- September 30, 2012 (Vocola-2-7-3.zip)

  • Primarily a maintenance release; new version of samples/string.vch with additional functions: Mid[3], Lower, and Upper.
  • For more details, see these release notes

Version 2.7.2 -- May 15, 2011 (Vocola-2-7-2.zip)

  • Workarounds for some Dragon bugs, including the DNS 11 bug where using <_anything> prevents recognition of 0 to 9.

Version 2.7.1 -- December 19, 2010 (Vocola-2-7-1.zip)

  • Vocola can now be extended with extensions written in Python.

Version 2.7 -- July 17, 2010 (Vocola-2-7.zip)

  • Code generation for actions completely rewritten
  • Runtime errors are now caught and displayed in a more user-friendly manner. (No incomprehensible Python stack traces anymore.)
  • New built-in EvalTemplate, which provides a more powerful version of Eval.
  • User functions are now implemented by unrolling; this allows passing instructions like SendDragonKeys(-), not just string-valued expressions, to user functions.
  • How underscores in keystroke strings (e.g., "hello{enter_2}") are handled has changed slightly.
  • For more details, see these release notes

Version 2.6.5 -- January 16, 2010 (Vocola-2-6-5.zip)

  • Python 2.6 is now supported
  • Fixed some minor bugs with SendDragonKeys and variable names containing digits.
  • For more details, see these release notes

Version 2.6.4 -- September 7, 2009 (Vocola-2-6-4.zip)

  • Command sequences work again for DNS 7.0 and later; complicated grammars may require limiting the maximum number of commands per utterance, however, with these versions of DNS.
  • Command sequences can be turned on/off/limited on a per .vcl file basis.
  • For more details, see these release notes

Version 2.6.3 -- April 15, 2009 (Vocola-2-6-3.zip)

  • Unimacro actions can now be called from Vocola commands if Unimacro has been installed
  • Commands are recognized faster because the Vocola compiler is run during recognition only if at least one file in a Vocola command folder has been changed/added
  • Python 2.5 is now supported
  • For more details, see these release notes

Version 2.6 -- January 27, 2008 (Vocola-2-6.zip)

  • Many, many minor bugs have been fixed
  • Context statement ":" now clears any existing context
  • A small library of string functions has been provided (NatLink\Vocola\Samples\string.vch)
  • Toggling the microphone should no longer be necessary to ensure that (new) commands are loaded.
  • The Dragon WaitForWindow and HTMLHelp calls are now supported.
  • The behavior of Eval has changed slightly; in particular, it no longer assumes that values of the form +digits are integers.
  • For more details, see these release notes

Version 2.5 -- January 10, 2005 (Vocola-2-5.zip)

  • Commands can incorporate arbitrary dictation. See Capturing Dictation.
  • Allow disabling/enabling the command sequences feature (and disable it by default), to avoid performance problems caused by bugs in NaturallySpeaking 7.0 and 8.0

Version 2.4 -- September 28, 2003 (Vocola-2-4.zip)

  • Fixed problem with some installations where vcl2py.exe failed to run, and perpetually raised a blank message window.
  • Fixed problem where "Edit Voice Commands" (with some editors) did not allow editing commands by voice.

Version 2.0 -- June 7, 2003

  • Speak continuous command sequences
  • Automatic loading of changed files, with error messages to NatLink window
  • User-defined functions
  • include statement
  • Eval built-in function
  • Repeat built-in function
  • Context statements can contain '|'
  • Function arguments can be built from several actions
  • Numeric arguments now work correctly in all built-in functions
  • Improved generated Python code (using VocolaUtils.py)
  • Case insensitive window title comparisons
  • Obscure name for generated python file ("outlook_vcl.py") to avoid clobbering existing NatLink files

Version 1.1 -- May 11, 2002 (Vocola-1-1.zip)

  • First public release.
  • Installing Perl is no longer required.
  • Commands containing backslash sequences like  \;  or  \"  or  \'   are now parsed correctly.
  • Application-specific commands are now recognized for applications whose name contains an underscore character.
 
Copyright © 2002-2023 Rick Mohr