/Caster

Dragonfly-Based Voice Programming Toolkit

Primary LanguagePythonOtherNOASSERTION

Caster

Caster is a collection of tools aimed at enabling programming and accessibility entirely by voice built upon the Dragonfly API.

  • Videos by the Caster Community.
  • Instructions for installing
  • Documentation on Caster [ReadTheDocs] [YouTube] and Dragonfly [ReadTheDocs]
  • Caster Command Reference Guides
    • Caster - Universal navigation and editing - These commands are active all the time, and provide input commands for letters, numbers and punctuation, as well as the ability to easily manipulate windows and text.
      • window right moves the active window to the right-hand side of the screen.
      • prekris inserts a pair of brackets () and moves the cursor inside them.
      • shackle selects the current line.
    • Applications - Application specific control - These commands are only activated when a particular program is the active window, and they provide support for text editors, IDEs, web browsers etc. For example, while the Sublime text editor is the active window, saying
      • find will execute a ctrl-f keystroke, bringing up the find and replace prompt,
      • open file will execute a ctrl-o keystroke,
      • edit next <n> - ctrl-d n times, selecting the next n instances of the currently selected word.
    • Program Languages - Language specific coding - These modules are activated and deactivated with the enable/disable <language> voice command. For example, saying enable python.
      • for loop which will insert for i in range(0, ):
      • print to console - print()
      • open file - open('filename', 'r') as f:
  • Contributing / How can I help?
  • Need support or just curious? Join our community at Join the chat at https://gitter.im/synkarius/caster or Discord for voice chat.
  • The Voice Index is a curated source of information: Videos, Blogs, Repositories, Presentations, etc related to Dragonfly, voice programming, and accessibility.

Feature List

  • Configurable Settings in caster\bin\data\settings.toml

  • Customize Commands aka Specs and their actions via simplified filter rules and filter rules(code).

  • Compatible Speech Recognition Engines

  • Supported Programming Languages - Enhanced by Caster's Continues Command Recognition - Demo

    • Python, Java, Bash, C++, C#, Rust, Go, HTML, CSS, JavaScript, SQL, Dart, Latex , Matlab, R, Prolog, VHDL, and Haxe
  • Supported Software

    • IDEs/Editors: Microsoft Visual C++, Visual Studio, Eclipse, Jetbrains IDEs, Emacs, Sublime, Atom, Visual Studio Code, Notepad++, FlashDevelop, Sql Developer, and SQL Server Management Studio
    • Development Tools: Command Prompt, GitBash, KDiff3
    • Statistics: RStudio and lyx
    • Browsers: Firefox, Chrome and Internet Explorer
    • Applications: Foxit Reader, Gitter, Microsoft Word, fman and Total Commander
  • Editing and Navigation

    • Four additional mouse navigation modes: curse, douglas, legion, and rainbow - Demo
    • Text/line navigation commands, text formatting commands
    • Alphabet, numbers, punctuation input commands
    • Commands to interact with generic File Dialogues.
  • Utilize Powerful Commands

    • "Alias" Commands - on-the-fly commands created by highlighting stuff
    • "Record From History" - turn previously spoken commands into a voice macro
  • Third-party Integrations

    • Sikulix - v1.1.2: Automates anything you see on the screen of your desktop computer. - Demo
    • Aenea - A client-server library for using voice macros from Dragon NaturallySpeaking and Dragonfly on remote/non-windows hosts.
  • Caster extends the Dragonfly API for even more powerful commands.