Chances are you do not work in exactly the same way as I do. I use Vim (find my .vimrc here) as my primary editor, and generally program in either Go or Python. The commands and grammars that are shared in this repository reflect that and are designed to work in my workflow.
That said, the grammars found here should be a good starting point either as examples or templates to help you write your own. It takes a while, but if they are built up over time I have found they can be very powerful.
Want to help make getting started with voice coding easier? Send me a pull request!
I would love to add more languages and more features. There are plenty of commands that are missing, and even more that not work as well as they could. Any help is welcome.
And of course if you have a friend who struggles with RSI or carpal tunnel syndrome please tell them there is a better way.
These steps are meant to be performed on a Windows machine with an attached microphone. I suggest using a virtual machine as it will allow you to save snapshots as you progress through the steps.
The machine should have about 2GB of ram and two processors.
- Install Dragon NaturallySpeaking 13.0 to default location
- Take a snapshot of the VM
- Download and install Python 2.7.8 for x32
- Run get-pip.py to install pip
- Install the latest release of pywin32 for Python 2.7
- Install the latest release of NatLink
- Install other dependencies (
python -m pip install dragonfly jsonrpclib pyparsing
) - Take another snapshot of the VM
- Start a cmd window as administrator
- Navigate to
C:\NatLink\NatLink\confignatlinkvocolaunimacro
- Run
start_natlinkconfigfunctions.py
then use thee
option to enable - If problems are encountered, take a look at this Github issue for help
- Copy
aenea/aenea.json.example
toC:\NatLink\NatLink\MacroSystem
and edit the ip to the ip of the host - Copy the dictation client from the client directory to the NatLink directory
- Disable the dictation window in Dragon so you can use the dictation client
These instructions were written for an machine running ubuntu 14.04 LTS.
- Go to the server (linux machine) and navigate in the aenea dir to
server/linux_x11
- Copy
config.py.example
toconfig.py
and edit, setting the ip to 0.0.0.0 - Install pip on the host machine (
sudo apt-get install python-pip
) - Install xsel and xdotool (
sudo apt-get install xsel xdotool
) - Use pip to install jsonrpclib, and yapsy (
sudo pip install jsonrpclib yapsy
)
- On the server, start
aenea/server/linux_x11/server_x11.py
- On the client, start Dragon Naturally Speaking
- On the client, start
aenea_client.py
- Give the dictation window focus so it captures anything not covered by a grammar
I am using the Yeti by Blue and have found it to perform very well in quiet environments, but it does have some trouble as the noise level increases or others start speaking. The on-mic mute button is a very nice feature.