![]() |
KnowBrainer Speech Recognition | ![]() |
Topic Title: Individual numbers being recognized as commands Topic Summary: Dragon thinks 5 is a command Created On: 09/02/2019 12:34 PM Status: Post and Reply |
|
![]() |
![]() |
- Matt_Chambers | - 09/02/2019 12:34 PM |
![]() |
![]() |
- Alan Cantor | - 09/02/2019 12:48 PM |
![]() |
![]() |
- Matt_Chambers | - 09/02/2019 01:34 PM |
![]() |
![]() |
- Matt_Chambers | - 09/02/2019 03:48 PM |
![]() |
![]() |
- Matt_Chambers | - 09/02/2019 04:17 PM |
![]() |
![]() |
- Lunis Orcutt | - 09/02/2019 09:14 PM |
![]() |
![]() |
- Alan Cantor | - 09/02/2019 11:03 PM |
![]() |
![]() |
- Stephan Kuepper | - 09/03/2019 03:07 AM |
![]() |
![]() |
- Matt_Chambers | - 09/03/2019 08:57 AM |
![]() |
![]() |
- PG LTU | - 09/03/2019 12:16 PM |
![]() |
![]() |
- Matt_Chambers | - 09/03/2019 03:21 PM |
![]() |
![]() |
- PG LTU | - 09/03/2019 04:38 PM |
![]() |
![]() |
- Matt_Chambers | - 09/03/2019 04:53 PM |
![]() |
![]() |
- PG LTU | - 09/04/2019 01:12 AM |
![]() |
![]() |
- Matt_Chambers | - 09/04/2019 07:24 AM |
![]() |
![]() |
- Matt_Chambers | - 09/04/2019 09:51 AM |
![]() |
![]() |
- PG LTU | - 09/04/2019 12:19 PM |
![]() |
![]() |
- Matt_Chambers | - 09/04/2019 12:42 PM |
![]() |
![]() |
- Matt_Chambers | - 09/04/2019 02:14 PM |
![]() |
![]() |
- Matt_Chambers | - 09/04/2019 04:45 PM |
![]() |
![]() |
- Alan Cantor | - 09/04/2019 06:04 PM |
![]() |
![]() |
- Matt_Chambers | - 09/04/2019 06:58 PM |
![]() |
![]() |
- Stephan Kuepper | - 09/05/2019 08:44 AM |
![]() |
![]() |
- Matt_Chambers | - 09/05/2019 09:45 AM |
![]() |
![]() |
- PG LTU | - 09/05/2019 10:25 AM |
![]() |
![]() |
- Matt_Chambers | - 09/05/2019 10:41 AM |
![]() |
![]() |
- Alan Cantor | - 09/05/2019 12:01 PM |
![]() |
![]() |
- PG LTU | - 09/05/2019 12:31 PM |
![]() |
![]() |
- Matt_Chambers | - 09/05/2019 01:41 PM |
![]() |
![]() |
- Matt_Chambers | - 10/02/2020 09:14 AM |
![]() |
![]() |
- PG LTU | - 10/02/2020 10:59 AM |
![]() |
![]() |
- Matt_Chambers | - 10/02/2020 11:06 AM |
![]() |
![]() |
- Matt_Chambers | - 10/10/2020 05:05 PM |
![]() |
![]() |
- Matt_Chambers | - 07/08/2021 11:07 AM |
![]() |
![]() |
- Lunis Orcutt | - 07/08/2021 12:34 PM |
![]() |
![]() |
- Matt_Chambers | - 07/08/2021 03:09 PM |
![]() |
![]() |
- monkey8 | - 07/15/2021 10:23 AM |
![]() |
![]() |
- Lunis Orcutt | - 07/15/2021 11:44 AM |
![]() |
![]() |
- Matt_Chambers | - 07/15/2021 12:19 PM |
![]() |
![]() |
- Matt_Chambers | - 07/16/2021 03:05 PM |
![]() |
|||||
I'm having a strange problem that recurs intermittently. When I dictate a number, such as "four" or "three", occasionally the cursor will move down or to the right, and Dragon will not insert "four" or "three" in the text. This doesn't happen all the time. I've noticed it mostly in DragonPad, but it is possible that it occurs in other applications. |
|||||
|
|||||
![]() |
|||||
The behaviour you are seeing is what I would expect had you previously activated the MouseGrid.
But if you have a bunch of old Vocola scripts, I would look there first. |
|||||
|
|||||
![]() |
|||||
Thanks for the suggestions. I don't use the MouseGrid, and I'm not using Vocola with DPI 15. I think I have found the offending Advanced Scripting command. I have a command that moves the cursor left, right, up, or down up to 100 spaces. (I don't like having to say "move" or "go" – I just want to say, for example, "down 12". Very surprising. |
|||||
|
|||||
![]() |
|||||
Spoke too soon. The problem just reoccurred.
I will delete this command and see if the problem continues. Very strange. |
|||||
|
|||||
![]() |
|||||
Interestingly, I can't seem to make the problem go away.
I rewrote the command as a DVC command, but the problem recurs. Seems there is some sort of bug where the program recognizes the blank line in the list as one of the entries for the variable. I suppose if I got really fancy I could put some sort of If statement or Case statement in for all situations where the first variable is blank, it would type the spoken form of the second variable. Very strange. I really don't remember having this in NaturallySpeaking before version 13. |
|||||
|
|||||
![]() |
|||||
Nuance isn't exactly famous for conducting extensive beta testing. We suspect that they are simply unaware that enabling auto-gain can increase Dragon mis-recognitions that may be interpreted as commands. Since we began using DPI 15, DPG 15 and DMPE 4, we have noted more accidental KnowBrainer misfires. We recently dealt with this problem by removing around 50% of our commands. For example you might say “ to write” and Dragon might interpret your dictation as as move 2 right; a Dragon command. We like auto-gain but this is 1 of the disadvantages. If this becomes too much of an issue for you, consider disabling auto-gain and rerunning the Microphone Check. ------------------------- Change "No" to "Know" w/KnowBrainer 2020 |
|||||
|
|||||
![]() |
|||||
This is an interesting finding. I use lots of list commands and have never noticed this before.
However, I was not able to replicate the problem. When I made this custom Advanced Scripting command: Test test <fruit> The list consists of the following three items, with a blank line at the end... Apples Bananas Oranges [Blank line] When I tested this command, it worked as expected. It was only triggered when I said one of the three list items. When I substituted another word or phrase, e.g., "test test five," Dragon didn't recognize it as a command. |
|||||
|
|||||
![]() |
|||||
Alan,
I wouldn't expect this test scenario to replicate the issue. What if you reverse the order of the words to " Matt, it sounds like you didn't remove the blank line from your list when you created the DVC script? You definitely should. Hope that helps, Stephan ------------------------- |
|||||
|
|||||
![]() |
|||||
Thanks, Stephan, but I definitely removed the blank line, at least as much as you can in the Command Browser. (There always seems to be a hard return at the end of a list.) |
|||||
|
|||||
![]() |
|||||
Blank lines in lists have nothing to do with it. What exactly is the Recognition History showing? Just the word "Five" or is it "five" (case matters) by itself, with the x as a command?
You needn't look in the command name, but rather your lists. Export your commands as XML and towards the bottom of the file, you will find the listing commands list contents. Search for the term that triggers the problem. If you have any command add-on sets, you'll have to look there (KB could be a culprit if you use it). Hth, -------------------------
|
|||||
|
|||||
![]() |
|||||
It's showing 5 x. There is no command that has only a single number, hence my bewilderment. The command that I think is causing the problem has two lists, the first containing four items: left, right, up, and down; the second containing numbers, such as 1 through 100. One should be able to trigger the command only by saying something like "up 30". Over the last few days, I have tried the command with simple number lists, containing only numbers, and lists with written and spoken forms, like "five\5". These changes did not resolve the problem. Yesterday, I added a new version of the first list to my commands, with a different name, but the same elements (left, right, up, and down). So far, this seems to have resolved the problem, but it may recur. |
|||||
|
|||||
![]() |
|||||
"5" is not in the Dragon vocabulary. It comes from a command name list or a custom word entry. When you say "five," Dragon recognizes "five" but uses its internal rules (and your setting in Options) to format it as a numeral or a word. If the recognition history shows the number itself, it comes either from a custom word you added or a command name (from a list, probably). Look in custom words, look in the xml file of exported commands. Let us know. -------------------------
|
|||||
|
|||||
![]() |
|||||
Thank you. |
|||||
|
|||||
![]() |
|||||
You know, try taking just "5" out of that list in that command (or all the number numerals below your option setting). Save, close and reopen your profile and see if the recognition of "five" becomes "five" again . . . or did you do that already?
-------------------------
|
|||||
|
|||||
![]() |
|||||
I could do that, but I would have to remove some key numbers. It's not just "five" that is being misrecognized as a command. I have tried to attach a screenshot of the recognition history. |
|||||
|
|||||
![]() |
|||||
This is getting even stranger. I deleted the command that I thought was the source of the problem, but I'm still finding that the word "five" is is sometimes recognized as "5" and as a command. It seems to insert a hard return.
|
|||||
|
|||||
![]() |
|||||
Yes, at this point you should export your commands into an xml file, open that file in notepad (or another simple text editor) and search for "5" to find that number inexplicably and unintentionally added to another list (and where that list is the only "word" in a command name).
-------------------------
|
|||||
|
|||||
![]() |
|||||
But why wouldn't that have showed up when using a filter of "5" in the Command Browser? Anyway, I've now pruned my mycmds.dat file to remove or replace all commands that have "5" (or other single digit numbers) with a complex list, then added your suggested way to extract the numbers in the command text, a la:
So far, I'm not having the problem of "five" being recognized as a mysterious "5" command. But the problem has been intermittent, so I'm not declaring victory yet. |
|||||
|
|||||
![]() |
|||||
But why wouldn't that have showed up when using a filter of "5" in the Command Browser?
Anyway, I've now pruned my mycmds.dat file to remove or replace all commands that have "5" (or other single digit numbers) with a complex list, then added your suggested way to extract the numbers in the command text, a la:
So far, I'm not having the problem of "five" being recognized as a mysterious "5" command. But the problem has been intermittent, so I'm not declaring victory yet.
Problem just recurred, after removing or replacing all commands that have single-digit numbers in a list, with complex lists using the written form/spoken form for numerals 1 to 9. I continue to be baffled. I think I will create yet another user to see what happens. |
|||||
|
|||||
![]() |
|||||
At this point, I am still having the problem. It does seem to go away if I remove some custom commands I have written for the Spelling Window and the Correction Menu. Most of those commands use numbered lists, which I have rewritten along the lines suggested by PG. That doesn't seem to fix the problem, surprisingly. |
|||||
|
|||||
![]() |
|||||
This is a long shot, but under Tools --> AutoFormatting Options, what are your settings for "Numbers, if greater than or equal to"?
|
|||||
|
|||||
![]() |
|||||
Ten, so my numbers are now written in complex lists, with written/spoken forms for numbers 1-9, as PG recommended. If I use the filter on the Command Browser, it shows no command using "5". And I can't find any entry of "5" reviewing the xml export of the mycmds.dat file. Totally mystifying. But I appreciate the question\suggestion. |
|||||
|
|||||
![]() |
|||||
I haven't really followed the thread, but are you aware that there is a buit-in list 1-10 that contains the numerals 1-10? This wouldn't be visible in the mycommands.dat.
Just my 2 ct, Stephan ------------------------- |
|||||
|
|||||
![]() |
|||||
I was dimly aware of that. But what is the relevance? Why would that list and any other built-in list be causing my problem? |
|||||
|
|||||
![]() |
|||||
Those two lists, from the system.dvc file? They are comprised of the words, not numerals. Perhaps some 3P add-on is giving that result, but it isn't Dragon (in modern editions). Unless you tell it to, by adding it as a command name or custom word, Dragon will only ever recognize the spoken words. You just won't see the numeral "5" as a recognized word in the Recognition History. -------------------------
|
|||||
|
|||||
![]() |
|||||
Those two lists, from the system.dvc file? They are comprised of the words, not numerals. Perhaps some 3P add-on is giving that result, but it isn't Dragon (in modern editions). Unless you tell it to, by adding it as a command name or custom word, Dragon will only ever recognize the spoken words. You just won't see the numeral "5" as a recognized word in the Recognition History.
Right. Raising squarely the question of what is causing Dragon at times to recognize single-digit numbers as commands. |
|||||
|
|||||
![]() |
|||||
There is a type of Dragon command that does not appear in the Command Browser. These are commands Dragon generates on-the-fly based on objects that appear in an application's user interface.
For example, you won't find "click File" in the command database, but Dragon recognizes it in virtually every application that has a File menu. In web browsers, the command to activate a hypertext link is "click [any part of the link text]." For example, to activate a link that reads "Contact us now," you can say one of six things: "click Contact us now" "click Contact us" "click us now" "click Contact" "click us" "click now" All are commands that Dragon generates as needed. The prefix "click" is required by default for this class of commands but the requirement can be toggled off. Could "five" refer to an object in the UI? What happens when you press Alt + 5? This hotkey is the equivalent of saying "choose five" in the Spelling Window. But not many applications use this key combination, although Microsoft Office products use Alt + 1, Alt + 2, etc. to activate items on the Quick Access toolbar. |
|||||
|
|||||
![]() |
|||||
+1 Alan. Say-What-You-See commands are generated on the fly. I have an app with buttons just called by number numerals ("1" "2" "3" etc) and they do get recognized as number numerals, but they are application specific. -------------------------
|
|||||
|
|||||
![]() |
|||||
OP here. Thanks for your suggestions, Alan. As I've said in an earlier post or two, I've seen this behavior in several applications, including DragonPad, Microsoft Word, SayWhatPro, and ProgramEdit. I could see it happening in Microsoft Word because of commands generated on the fly, with all the buttons and doodads across the top of the screen on the so-called ribbon. I don't really know why would happen in DragonPad or SayWhatPro. |
|||||
|
|||||
![]() |
|||||
The problem with individual numerals being recognized as commands has never really gone away from me, but I think today I have found the command that is causing it and a solution. The command that is causing it is a List command, with two Lists, one consisting of items like "left", "up", and "backspace" and the other a complex List consisting of numerals from 1 to 100, such as "3/3" and "31\thirty-one". The command first extracts the written form of the 2nd list and then combines the two variables in a SendKeys instruction, so that you get things like
SendKeys "{right 31}" The command works perfectly and is quicker than the built-in command "go [direction] [number]", but for some reason it triggers the problem with a single being recognized as a command. I have modified the command so that the List of numerals is a simple list of numerals, such as "3" and "31" and the problem has gone away. I don't know how to explain this. |
|||||
|
|||||
![]() |
|||||
This is helpful. Couple of things jump out. The handling of numbers has always been weird. The complex or mixed-complex solution may have been a mistake, or rather only a partial fix (although for me, the problem has not recurred since I started doing that and I use my 1-200 mixed list a lot). As Stephan noted high above, the built-in lists ARE numerals (at least in the international versions - the US version is still words unless you "fixed" the mousegrid problem with my soln) and so that can't really be the problem, can it (besides, the command vocab is different from the words vocab). Certainly, so far, if an all-numeral list is working than that should be fine in the general case.
To be certain, with that info in mind, I would start a brand new profile and hopefully eliminate any confusion with recognizing those commands coming from Dragon internalizing all the testing and trying it out different ways, etc. you may have done (which I implicate in my problem with it arising in the first place). -------------------------
|
|||||
|
|||||
![]() |
|||||
Yes, the handling of numbers has always been very strange.
I've tested this previously with a brand-new profile, both with and without the triggering command. Whenever I imported the command, the issue recurred. Unfortunately, I really like and use the triggering command. Now that I have WinWrap Basic through DPI 15.6, I've been cleaning up some of my commands and writing new ones, so I turned back to this issue. Brainstorming about it, it finally occurred to me to use a numerical digit-only list and see what happened. Now, in the past, I had thought that I had fixed the problem, only to see it recur, so maybe I am declaring victory too soon here, but I really think I have a solution. |
|||||
|
|||||
![]() |
|||||
Apparently, I spoke too soon. The problem has recurred using the same command with a simple list. I have deleted that command and the problem has gone away. Strange how the problem is intermittent. Perhaps it has something to do with the way custom commands are compiled?
|
|||||
|
|||||
![]() |
|||||
This past weekend, I think I resolved this mysterious and nagging problem. I have narrowed it down to one command that causes the problem. Interestingly, the problem occurs using the command either in the mycmds.dat file, as an Advanced Scripting command, or as a Vocola command. The command name is comprised of two lists, the first one whose entries are left, right, up, and down, and the second whose entries are numbers between 1 and 100. The idea is that I can move the cursor by saying something like "right 20", rather than using the built-in command "go right 20".
For some reason, Dragon sometimes hears a command when I simply say a single number, such as five. I can go into the recognition history and see that Dragon has recognized 5, and as a command, even though there is absolutely no command that you can find in the Command Browser that consists of a single number. Of course, I could just stick with the built-in command, or I could use Kim Patch's Utter Command structure and say "20 left", but the built-in command requires a silly extra syllable and is not as fast as my command and Kim's structure is simply counter to the way I think. I think first direction and second the number of spaces I need to move. I really don't like commands that are counter to the way I think, because I think they increase the cognitive load of using speech recognition. I seemingly have resolved the problem by breaking the command into four separate commands, in Vocola. That is, the command is no longer comprised of two lists, but only one list, <1to100>, and the four commands are "right <1to100>", "left <1to100>", "up <1to100>", and "down <1to100>". Somehow, having the first part of the command consist of a list creates the problem. I used Vocola in part because it is far easier to deactivate a command in Vocola than in Advanced Scripting. I say seemingly, because I've only been using the new approach for a few days. It is possible that the problem will mysteriously recur. I've had that happen before. Out of an abundance of caution, I have added Dragon bar messages to each of the commands, in case the error recurs. That way, if saying "5" triggers the problem, I can look at the Dragon bar and see which command was recognized. (To do this, I created Advanced Scripting commands that simply do the Dragon bar message, and then used HeardWord in the Vocola commands to call the appropriate Advanced Scripting command that does the Dragon bar message.) I'm posting this here mostly because I want to show off! Also, this might help somebody else. |
|||||
|
|||||
![]() |
|||||
KnowBrainer 2017 includes your <direction> <1to100> command which we haven't had a problem with but Dragon 15 seems to be more inclined to trigger a command instead of dictation. You might try moving the Pause required before command slider a little further to the right. We find the default setting to be slightly off. You will find this option in the DragonBar Options/Commands tab ------------------------- Change "No" to "Know" w/KnowBrainer 2020 |
|||||
|
|||||
![]() |
|||||
Thanks, Lunis. I don't know why I have this problem, but it's interesting that Knowbrainer has the same command and doesn't have the same problem. I'm not sure why we dictation/command slider should affect this, but if the problem recurs I will give it a try. |
|||||
|
|||||
![]() |
|||||
It doesn't make sense to me that the double list commands or commands like edit<1to10> are causing the issue of single digit commands being recognised but then it depends what it says on the recognition history?
My guess is that the single digit commands are being generated by UIA or MSAA for particular user interfaces or possibly by a dragon web extension if the application is a browser. The next time it happens check the recognition history again and take a note of what application you are using and the particular window. Dragon does auto generate and remove commands for various user interfaces on the fly all the time so it could be that.
The other possibility is that if you use KnowBrainer there is an older command/command set with lists of letters that could cause this problem e.g. an example would be:
<Letters> <Letters><Letters> …
Check the global commands tab on the KB sidebar for these commands.
------------------------- |
|||||
|
|||||
![]() |
|||||
We had to remove the <Letters> ect commands because we were asking for trouble and Dragon already handles lowercase letters better than KnowBrainer. We use the KnowBrainer Code <AllCapAlphabet> etc. commands for dictating capital letters and numbers. The Dragon spell <All Caps> <letters> is simply not reliable. ------------------------- Change "No" to "Know" w/KnowBrainer 2020 |
|||||
|
|||||
![]() |
|||||
It doesn't make sense to me that the double list commands or commands like edit<1to10> are causing the issue of single digit commands being recognised but then it depends what it says on the recognition history?
My guess is that the single digit commands are being generated by UIA or MSAA for particular user interfaces or possibly by a dragon web extension if the application is a browser. The next time it happens check the recognition history again and take a note of what application you are using and the particular window. Dragon does auto generate and remove commands for various user interfaces on the fly all the time so it could be that.
The other possibility is that if you use KnowBrainer there is an older command/command set with lists of letters that could cause this problem e.g. an example would be:
…
Check the global commands tab on the KB sidebar for these commands.
I'm really not sure, Lindsay. Thanks for asking. Right now, the problem is not occurring, but it can be strangely intermittent. I have deleted almost all of my global commands, at which point the problem goes away. I have moved some of the commands to Vocola, without problem. (Whenever a Vocola command is triggered, I use a combination of a HeardWord instruction and a one line Advanced Scripting command to show a message in the DragonBar, so I would know if Vocola is causing the problem.) It seems that the problem now is somehow caused by having a list of numbers in a global command in Advanced Scripting. I am open to suggestions on how to test this. I have been slowly adding back in global commands that do not use numbers, particularly ones that are very difficult or impossible to re-create in Vocola, and seeing if the problem rears its ugly head. This morning, I added back in a command I use with the Spelling Window, named "edit <1to10>”, and the problem recurred. I deleted the command, and the problem did not recur. Normally, I would take this to mean that this particular command somehow caused the problem, but the problem is so intermittent that I am not confident of this. Accordingly, I re-created that command, but added a specific DragonBar message to the command, so if that triggers the problem, I will know. This is, however, a tedious way to identify the problem. If there were a way to identify exactly which command was being triggered, it would be easy to solve the problem. As far as I know, however, this is not possible. Saying "show recognition history" simply enables you to determine if in fact the problem was caused by a command, but not which command. The Dragon.log doesn't seem to show the information I need. I think I will continue to add back in various Advanced Scripting commands that don't use lists of numbers and make sure the problem doesn't recur. If that works for couple of days, maybe I will add in commands that use lists of numbers, or maybe I will just move those commands to Vocola, which handles things like that very well. Your suggestion about the single digit commands being generated by Dragon for particular interfaces is interesting, but this problem has occurred in DragonPad, Jarte, and Notepad++, and I really don't think Dragon could be doing that for all of those programs. I am not using Knowbrainer. It's a wonderful product, but there was no way I could've gotten my former employer to install it, and, now that I am retired, I am too used to my own custom commands to add in the Knowbrainer commands. |
|||||
|
|||||
![]() |
|||||
A very smart member of the forum here was nice enough to look at my mycmds.dat file and my global vocola file (_vocola.vcl) and agrees that there is absolutely nothing in those files that should cause this problem. He suggested that it might be Dragon on-the-fly commands, as Alan Cantor had suggested nearly two years ago. But, since this problem occurs in DragonPad, Jarte, and Notepad++, that doesn't really seem possible.
It's also quite strange that it is intermittent. I'm just going to ignore it and write commands in both mycmds.dat and Vocola without thinking about it. And, yes, I have created new users, and the issue remains. |
|||||
|
FuseTalk Standard Edition v4.0 - © 1999-2022 FuseTalk™ Inc. All rights reserved.