Re: Mathematic equations and NVDA
Hello Goly,toggle quoted messageShow quoted text
I have sent the comments below to Mick and Jaime.
I have some observations and some thoughts about the way punctuation is
handled in NVDA.
Mathematical symbols are intersperced with the other symbols in the
Punctuation/Symbols Pronunciation dictionary.There does not seem to be any
With a few exceptions the mathematical symbols are muted. That is, within
each of these symbols the "Punctuation Level" is set to "None" and the "Send
Actual Character To The Synthesizer" is set to "never".
With respect to observation 1, since most NVDA users are not reading
mathematical articles, the look up time for symbols other than mathematical
symbols should be given higher priority. This can be done in either of two
ways. One way would be to group all the mathematical symbols at the bottom
of the Punctuation/Symbols Pronunciation dictionary. Another way would be to
move all the mathematical symbols into a separate pronunciation dictionary and
subordinate it to the one without the mathematical symbols.
IN the first method, when reading a non-mathematical text, a punctuation
lookup will never reach the bottom section of the punctuation dictionary
where the mathematical symbols reside.
In the second way, when reading a non-mathematical text, a punctuation lookup
always ends in the primary punctuation dictionary, that is the one without the
mathematical symbols in it.
The possible advantage to method 2 is that when a user adds a mathematical
or scientific symbol, it were never preceed a non-mathematical punctuation
With respect to observation 2, it is not reasonable that any mathematical
symbol should be muted as described in that observation. Why are any of them
there at all if they are muted? I spent considerable time unmuting symbols
for both applied mathematics and pure mathematics. In particular, the symbols
for "empty set"and "for all" were muted.
When I updated to NVDA2017.2, although some symbols such as the integral
symbols had been added (and they were not muted), , the mathematical symbols
which I had unmuted were again muted. So, I had to
repeat all my work to unmute the symbols needed to read mathematical articles.
Will I be forced to repeat this effort whenever an update occurs?
This raises the following question. The Punctuation/Symbol Pronunciation
dictionary session has an ADD button. When a user adds a symbols, he considers
addition important and probably does not want to lose it in a future update.
How can NVDA ensure that he does not lose his addition?
There is a difficulty in adding symbols to the Punctuation/Symbols
Pronunciation dictionary. Below is a description of the steps I took in order
to add mathematical symbols.
NVDA's Punctuation And Symbols Pronunciation dictionary contains many
mathematical symbols. Unfortunately, NVDA will not voice them, because the
"punctuation level" setting and "Send Actual Character To The Synthesizer"
settings are respectively "none" and "never". The result is that when any of
these mathematical symbols is encountered, while either reading a Microsoft
document or reading an article on the internet, NVDA remains silent. The
user who wants NVDA to announce these symbols when encountered must change the
setting that is in effect muting the symbols in question. Do the following.
STEP 1: Activate the NVDA menu.
INSERT + n
STEP 2: Activate the Punctuation and Symbols Pronunciation dictionary.
Arrow duwn to PREFERENCES and press ENTER.
STEP 3: Arrow down to Punctuations/Symbols Pronunciation and press ENTER.
STEP 4: Select a symbol that is not currently being spoken.
The last entry in this dictionary is the one for the symbol representing the
fraction seven eighths. I will use it as an example. To jump to it
immediately press the END key on the six pack keys above the cursor keys.
NVDA announces that focus is now on the seven eighths symbol.
STEP 5: Alter the punctuation level.
Tab once and focus will be on the Punctuation Level combo box.
NVDA will say "Change symbol grouping". That is the name of the section that
contains two combo boxes. Focus is now on the first of these combo boxes,
Punctuation Level. Arrow down to the ALWAYS option.
STEP 6: Alter the "Send Actual Character To The Synthesizer" option.
Tab once and focus will be on the "Send Actual Character To The Synthesizer"
Arrow down to the ALWAYS option.
STEP 7: Save and exit.
Tab to the OK button and press ENTER.
This saves the changes, but it also exits the Punctuation/Symbol Pronunciation
dictionary. Changing another symbol requires starting over with step 1.
Some important mathematical symbols are missing from the
Punctuation/Symbols Pronunciation dictionary. If the user wants to read pure
matheamatics , he must add the following symbols to the Punctuation/Symbol
Pronunciation dictionary. Some of them are "there exists", "there does not
exist", "empty set", "for all", "end of proof", etc.
There is quite a bit of effort in creating these symbols and then adding
them. To create one, the user needs to know it hex code. The symbol is
created from the hex code as follows. I use the integral symbol as an
example. Its hex code is 222b. In a document, such as a Microsoft word
document, type 222b, hold down the ALT key, and press the letter x. The
characters "222b" will be replaced by the symbol. If the user cursors to it,
he won't hear anything because , as already mentioned, it isn't in the speech
dictionary or in the Punctuation/Symbols Pronunciation dictionary.
To save the user from having to make this effort, I have created some of
these symbols with descriptive comments.
In the lines below the reader will notice two commas with a single character
between them. NVDA will not speak this character because it is not yet in the
Punctuation/Symbols Pronunciation dictionary. I have provided it with the
guarantee that it is the symbol indicated by the words preceeding the commas.
The user can cursor to the unspoken character between these two commas, select
it, and put it on the clipboard.
Remembering what it represents, the user can activate the Punctuation/Symbols
Pronunciation dictionary, select the Add button, and paste the contents of
the clipboard into the edit box for the new symbol being added.
WARNING: In my attempts to add symbols to the Punctuation/Symbols
Pronunciation dictionary, I found it very helpful to have first added the
symbol to the NVDA speech dictionary. The reason is the Punctuation/Symbols
Pronunciation dictionary seems to require two attempts to add a new symbol.
On the first attempt, the actual symbol edit box is available, but the
replacement pattern is not available. After pressing the OK button to ad the
new symbol, the session is exited. On reactivating the Punctuation/Symbols
Pronunciation dictionary, Although the new symbol is there, the user can't
find it because it isn't in the speech dictionary. Also, the
Punctuation/Symbols Pronunciation dictionary doesn't yet have a replacement
However, if the symbol in question has already been added to the speech
dictionary, as the user arrows down through the punctuations and symbols,
the new symbol will be spoken.
Once the user has found it, he can fill in the replacement pattern edit box.
Also, on this second pass through the Punctuation/Symbols Pronunciation
dictionary, the user can set the options in the "Punctuation Level" and the
"Send Actual Character To The Synthesizer" combo boxes which he wasn't given
the opportunity to do on his initial session in the Punctuation/Symbols
Pronunciation dictionary session.
Here are six symbols that are needed for calculus.
integral,?, hex code 222b
double integral,?, hex code 222c
tripple integral,?, hex code 222d
?Volume integral,?, hex code 2230 ?
Surface integral,?, hex code 222F ?
? line Integral,?, hex code 222E
NOTE: NVDA2017.2 has indeed added these symbols and they are not muted.
I didn't addd the next three symbols because I don't see them very often.
However, the user
might want to add them in case he happens to encounter one in an article.
Clockwise integral 2231
Clockwise contour integral 2232
Anticlockwise contour integral 2233? ? × ÷ ? ? ? ? ? ? ?