Ok, guys. For as long as I can remember, we (we being this group) have been wanting to be able to capture speech as text to use as we see fit. I've been reluctant to do this for a long time for various reasons, but now I'm starting to implement this feature since the demand is getting high. Just want to do a brain dump to let you know what's up, so forgive the stream of crap ahead... lol
To start, what I have so far is an action to stuff a text value (including tokens) into the clipboard. This opens up the ability to paste text values wherever you need to. I'm not a fan of the, 'Quick Input' feature that was implemented in VA a long time back (replaced by the Recorder), which would type out individual key presses from a string of characters (I know it sounds and seems simple, but there's a lot to consider under the covers... mostly due to languages). So, I think the ability to paste text will be faster and more reliable than individual character processing, and simplifies the user interface somewhat.
The clipboard feature was probably the easiest thing implemented in a while (of course). However, as the user interface for VoiceAttack becomes more and more bloated, I have tended to shy away from making specific interfaces for stuff and focusing more on making building blocks that can be used for whatever they can be used (you'll notice and lament over the whole idea that there is no specific interface for adding random sounds... that will probably come later, but the point is that I could spend all my time building and maintaining an interface for one thing or make simple building blocks to support it... now you can randomize anything (not just sounds)). The clipboard set feature is just that... a building block to stuff a value into the clipboard and that is all (also there is a new token, '{CLIP}' that will allow you to access what is in the clipboard).
In keeping with the building block idea, I've decided to take that route with, 'dictation'. There are currently three new actions, all considered, 'advanced' since there will be no other user interface to support them, and anything in the dictation buffer must be accessed via token. The actions are start dictation, stop dictation and clear dictation. The start and stop dictation actions have the option to clear what is in the dictation buffer. The clear dictation action has the option to just remove the last thing that was said. As mentioned, there is a dictation buffer that gets filled with each phrase you speak. There is the usual pause that indicates the end of your statement, and whatever was said will be added to the buffer. Nothing special here... you'll have to add your own punctuation as you normally do with the Windows speech engine. Multiple entries in the buffer are just appended to one another when you access the values from the {DICTATION} token. Recognized commands will be omitted from the dictation buffer if you speak them on their own (that is what I am testing now... the ability to be able to keep dictation going and still say, 'power to shields' and then resume dictation). Since they are blocks, you can incorporate them in your own commands with whatever spoken value you want ('open quote', 'quote', 'begin dictation'... or all of those... lol). You can incorporate your own stop and start sounds and initialize whatever variables you want to or even call a plugin. New users to VA will probably hate this approach, but I apologize.
The ugly side of this is now you will experience the joy of what is the dictation ability of the Windows speech engine. It is not Dragon. Not even close. You will say things clearly and it will miss a lot. It's kind of what has deterred me from implementing, 'dictation' in VA. I can see this becoming somewhat of a support sore spot, since VA gets hit all over the web for not working right, even when it comes down to the speech engine (properly configured system or not). I guess this would be a good time to say that I'm sorry, but it *is* eight dollar software, and this is definitely not the domain or even a main feature of VA... might not even stay if beta testing runs afoul.
Ok... enough rambling. Hope you are having a great day :)
Gary