On Mon, Mar 29, 2021 at 11:50 AM, Gene wrote:
I had wondered if making a second entry with dot in both fields would override the first entry, but it doesn't, so if I have both entries in the dictionary, that doesn't solve the problem.-
This is a rehash of a question I asked months ago and that's now been answered two times, kindly, once by Quentin Christensen and once by Luke Davis. When Quentin and I were having a "deep dive" discussion about dictionary processing, he sent me the following, which, given the nature of the content and it's being non-private and about NVDA dictionary processing, I'll post below:
Dictionary entries are processed in order, and do continue, but based on the current, not original, text. So I just tried setting up the following entries:
change "dog" to "cat"
change "12345" to "54321"
change "432" to "dog"
Encountering the text 12345 now, the first rule is skipped, since there is no "dog" in this text.
The text includes 12345 so it becomes 54321.
The third rule is then evaluated and the 432 in the current text is changed to dog.
So NVDA reads:
If the text read "dog 12345", it would be read as:
I'm not sure if that's documented anywhere, and given that rule order is meaningful, there is no current way to reorder rules (I wrote the 12345 to 54321 and 432 to dog rules, and then thought to try adding dog to cat first, but had to delete the other two and write all three from scratch in the order I wanted them).
Hence the reason I object to the dictionary processing not dropping out upon first match. That result is insane, and it's something that no rational person would ever predict, and were something similar happening by accident rather than intent, be able to untangle. But that's not relevant to the specific issue here.
Brian - Windows 10 Pro, 64-Bit, Version 20H2, Build 19042
Always remember others may hate you but those who hate you don't win unless you hate them. And then you destroy yourself.
~ Richard M. Nixon