![]() |
KnowBrainer Speech Recognition | ![]() |
Topic Title: MyKBCommands_withAmendedCommands.xml Topic Summary: Why/when is MyKBCommands_withAmendedCommands.xml created? Created On: 11/05/2020 07:24 PM Status: Post and Reply |
|
![]() |
![]() |
- Ag | - 11/05/2020 07:24 PM |
![]() |
![]() |
- Edgar | - 11/06/2020 11:12 AM |
![]() |
![]() |
- Ag | - 11/06/2020 12:06 PM |
![]() |
![]() |
- Lunis Orcutt | - 11/06/2020 04:15 PM |
![]() |
![]() |
- monkey8 | - 11/08/2020 08:42 AM |
![]() |
![]() |
- Ag | - 12/15/2020 11:54 PM |
![]() |
![]() |
- monkey8 | - 12/17/2020 04:02 AM |
![]() |
![]() |
- Edgar | - 12/17/2020 12:17 PM |
![]() |
![]() |
- Ag | - 12/17/2020 04:18 PM |
![]() |
|
I do quite a bit of coding of KnowBrainer commands. Mostly adding and editing new commands of my own.
As is standard software engineering practice, I keep track of changes to my KnowBrainer commands using a version control system. In this case, I copy MyKBCommands.xml from where KnowBrainer keeps it , and then check it in using git.
This has worked fine for more than a year. Changes I make to KnowBrainer commands using KBCE (the KnowBrainer Command Editor) can be seen in MyKBCommands.xml, git diffed, etc.
However, once in a while, and recently the last 3 or 4 times in a row, my changes have NOT been reflected in MyKBCommands.xml.
Instead, I find my changes in MyKBCommands_withAmendedCommands.xml
I often can recover any such changes from the AmendedCommands file, recreate the missing KnowBrainer commands, and then take care to find MyKBCommands.xml. (often by doing a complertely fresh PC restart.)
But... this wastes time. It's better than starting from scratch, but I would still prefer not to have to do it.
---+ So, my questions are:
Q: what is happening that changes are reflected in MyKBCommands_withAmendedCommands.xml but not MyKBCommands.xml?
Q: am I doing something, like "Close Dragon and KnowBrainer" via SpeechStart+, that is causing this problem?
Q: when is it safe for me to copy MyKBCommands.xml? I.e. when is it consistent on diskI always try to wait until I can run KniowBrainer commands again, and I often do "SpeechStart+ Close Dragon and KnowBrainer" -- or, when SpeechStart+ has failed, I kill Dragon and KnowBrainer, and/or restarty my PC.
Q: is KnowBrainer saving to MyKBCommands.xml whenever a command is changing? Or is there some buffering/delay? Over and above the usual windows buffering.
Q: when I restore MyKBCommands.xml from git/backup, is it sufficient to overwrite just MyKNCommands.xml, or both that and MyKBCommands_withAmendedCommands.xml?
Q: isz MyKBCommands_withAmendedCommands.xml well formed? I.e. could I just copy it to overwrite MyKBCommands.xml? Or is occasionally in some transient state so that would not be safe?
BTW, I nearly always manually inspect the MyKBCommands.xml, and have never observed any corruption. Either my new commands and edits are all there, or not at all. Never partway. I also run MyKBCommands.xml through xmllint with no problems.
---
Perhaps relevant: recently I have been seeing even more KnowBrainer related stalls than usual. I am fairly sure that KnowBrainer is involved - I can go a day withiout any stalls, using Dragon and my existing KnowBrainer commands, but frequently when I open the KnowBrainer Command Editor just to see what a command does, and then close without saving - i.e. I have just used KBCE to view the command, not edit - I get a stall. Plus the usual painful stall after using KBCE to edit a command. If just the latter I would suspect problems rewriting the XML file and/or uninstalling and reinstalling a grammar (command vocabulary) in the running Dragon instance. That should not be happening if I exit KBCE without making any changes, but perhaps it is. (I suppose I could start looking at file timestamps...)_ ---+ Details
The full paths of the files involved are
C:\Users\XXX\AppData\Roaming\KnowBrainer\KnowBrainerCommands\MyKBCommands.xml C:\Users\XXX\AppData\Roaming\KnowBrainer\KnowBrainerCommands\StatusChanges\MyKBCommands_withAmendedCommands.xml ------------------------- DPG15.6 (also DPI 15.3) + KB, Sennheiser MB Pro 1 UC ML, BTD 800 dongle, Windows 10 Pro, MS Surface Book 3, Intel Core i7-1065G7 CPU @ 1.3/1.5GHz (4 cores, 8 logical, GPU=NVIDIA Quadro RTX 3000 with Max-Q Design. |
|
|
|
FuseTalk Standard Edition v4.0 - © 1999-2021 FuseTalk™ Inc. All rights reserved.