tsengwoody / access8math Goto Github PK
View Code? Open in Web Editor NEWAllows access math content written by MathML ; Assist writing math content by LaTeX
License: GNU General Public License v2.0
Allows access math content written by MathML ; Assist writing math content by LaTeX
License: GNU General Public License v2.0
Hi,
Imagine if there is such a file as "d:\document.txt", then the line shutil.copytree(data_folder, review_folder)
will copy all files under "D:" to review_folder.
You may be doing this because you want to load external resource files such as "data_folder\images",
however, could we have a better way? Is it even possible to ditch the workspace?
For example, is it possible to save the documentation and required js modules to a separate directory when doing the export?
Thanks
Just run NVDA from source with usual user config having Access8Math installed:
runnvda.bat -c %appdata%\nvda
Error when the add-on is loaded upon NVDA start:
ERROR - external:globalPluginHandler.listPlugins (10:53:01.752) - MainThread (1788):
Error importing global plugin Access8Math
Traceback (most recent call last):
File "globalPluginHandler.py", line 23, in listPlugins
plugin = importlib.import_module("globalPlugins.%s" % name, package="globalPlugins").GlobalPlugin
File "C:\Users\Cyrille\AppData\Local\Programs\Python\Python37-32\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\__init__.py", line 99, in <module>
from editor import EditorFrame
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\editor.py", line 9, in <module>
from lib.viewHTML import raw2review
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\lib\viewHTML.py", line 19, in <module>
import html5lib
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\package\html5lib\__init__.py", line 25, in <module>
from .html5parser import HTMLParser, parse, parseFragment
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\package\html5lib\html5parser.py", line 6, in <module>
from . import _inputstream
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\package\html5lib\_inputstream.py", line 14, in <module>
from . import _utils
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\package\html5lib\_utils.py", line 13, in <module>
import xml.etree.ElementTree as default_etree
ImportError: cannot import name 'etree' from 'python.xml' (C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\python\xml\__init__.py)
No error
Hi,
I am designing new pdfs that contain MathML instead of just math images. I have been using your plugin with NVDA.
I have an issue where students gets confused as the NVDA starts dictating actual math content, and when we press space it disctates as Maths.
Can we modify the plugin, so NVDA automatically detects the Math and we dont have to press spacebar everytime.
Hi
I was wondering why there was no Braille output in LaTeX in the past.
Usually I always read LaTeX, and in German there were always problems with presenting mathematical content on my braille-display with access8math.
I have adjusted this behavior, should I just open a pr?
you can review the changes in my fork of this repo.
According to MathML, mfrac also can be used for binomials. If the attribute linetickness is set to 0, it should be interpreted that way. Mathjax and Math Player do this too.
hello.
when I open settings and switching reading language from English to Russian, it resets back to English after nvda restart.
nvda 2021.1 and access8math 3.0
Under the Access8math submenu, there are two menu titles "Write..." and "Localization..." which are not included in the translatable template("Access8math.pot"). Can you check?
Following NVDA tools menu > Access8Math > Editor, Access8Math Editor appeared.
Access8Math Editor has three menu items with submenus
If I press NVDA+alt+c, only hear "command gesture activated/command gesture deactivated".
Press alt+m, only hear "mark command window multi EX..", no thing appeared.
Press alt+l, only hear "multi EX command window short cut sub menu 1 of 9", no thing appeared.
Can any one help me?
Hello,
I run NVDA Alpha and get an import error for optparse when Access8Math is initialized:
File "C:\Users\Tage\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\__init__.py", line 99, in <module>
from .command.context import A8MFEVContextMenuView
File "C:\Users\Tage\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\command\context.py", line 11, in <module>
from ..editor import EditorFrame
File "C:\Users\Tage\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\editor.py", line 9, in <module>
from lib.viewHTML import Access8MathDocument
File "C:\Users\Tage\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\lib\viewHTML.py", line 25, in <module>
import markdown2
File "C:\Users\Tage\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\package\markdown2.py", line 110, in <module>
import optparse
ModuleNotFoundError: No module named 'optparse'
Since Access8Math isn't a command line application, I think it would be possible to get rid of that dependency, right?
And when this issue is fixed, how can I install this addon from source? It doesn't seem to be a dev-branch for Access8Math in the addon store.
Best regards,
Tage
There very well might be a good explanation for why this method is structured the way it is but it seems like it could be reduced to:
def symbol_translate(self, string):
return self.mathcontent.symbol.get(string, string)
It seems like the same could be done for the braille_symbol_translate method but there may be something that I'm missing there.
Hi dear access 8 math developers. Thank you for a great addon. There is still one small issue that annoys me - in the navigation mode moving to the next or previous item I always here before the actual math content the item number. Can you pleace add in the settings something like 'level of informativeness'. Users like me would always select the minimal informativeness. I am interested in the actual math content only. Otherwise you can just remove saying the item number. Probably, nobody is really interested in the item number. Thank you again. Artur.
When you add directories to sys.path to import them, they can be imported from other modules too, maybe creating collisions with other package names. So, after importing everything, the last items of sys.path should be removed with del sys.path[x]
.
Hello everybody!
I want to make a Russian translation of rules and symbols of Access8Math, but I found some problems with translation of some consts.
So how can I translate 'sin', 'cos', 'tan' and etc? I see that these consts aren't defined in the const section of unicode.dic. When I do, for example:
sin\ttranslation\tnone
I don't get any result.
$\lfloor 3.7 \rfloor = 3$
$\lceil 3.7 \rceil = 4$
For Chinese:
We can translate it to:
“左上取整”、“右上取整”、“左下取整”、“右下取整”。
For English, you can refer to VoiceOver in mac:
"left ceil" and "right ceil"
"left floor" and "right floor"
Please browse to following page and let NVDA+Access8Math read out.
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>fraction</title>
</head>
<body>
<p>Any fraction with numerator 1 cause Access8Math in trouble in language zh-TW or zh-CN.
For example,
<math><mfrac><mn>1</mn><mn>5</mn></mfrac></math>
will be read wrong.</p>
</body>
</html>
When the add-on is using in non-English language, it ignores
localization files which are in the right place in
"C:\Users\userfolder\AppData\Roaming\nvda\addons\Access8Math\locale "and
the formula or symbol is voicing in English.
Operating system - windows 11
Add-on version - 3.5
NVDA version - 2023.1
It is unclear if A8M settings are meant to be set by profile.
Clarify if A8M should use profile for its settings or not.
3.4
2022.4beta3
You might be able to test this with the pcKbBrl add-on.
The following error is occurring on the translation server, preventing translations from happening
Generating pot file Access8Math.pot
xgettext: Non-ASCII string at addon/globalPlugins/Access8Math/writer.py:775.
Please specify the source encoding through --from-code or through a comment
as specified in http://www.python.org/peps/pep-0263.html.
scons: *** [Access8Math.pot] Error 1
scons: building terminated because of errors.
mr addon2svn: command failed
Nothing happens, and the dialog box is not closed.If you cancel at this time, you cannot finish reopening the dialog box.
The settings should be applied, the dialog should be closed, and the dialog can be opened again.
installed
NVDA2020.4
Windows 10 20H2 (64Bit) build 19042.985
It seems that there are problems with the interaction of many settings dialogs, eg, it is currently not possible to change the display language of add-ons.
When trying to update A8M via Add-on Updater, I get an error message saying "Error while downloading Access8Math" (or similar).
The log contains the following debug message related to this error:
DEBUG - external:globalPlugins.addonUpdater.addonGuiEx.downloadAndInstallAddonUpdates (14:12:47.804) - Thread-18 (18496):
nvda3208: failed to download Access8Math
Traceback (most recent call last):
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\addonUpdater\globalPlugins\addonUpdater\addonGuiEx.py", line 236, in downloadAndInstallAddonUpdates
download.result()
File "concurrent\futures\_base.pyc", line 428, in result
File "concurrent\futures\_base.pyc", line 384, in __get_result
File "concurrent\futures\thread.pyc", line 57, in run
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\addonUpdater\globalPlugins\addonUpdater\addonUpdateProc.py", line 191, in downloadAddonUpdate
raise RuntimeError("Content has incorrect file hash")
RuntimeError: Content has incorrect file hash
Maybe you have modified the existing release, hence changing the hash?
the access8math, when interacting with the math object, says nothing when i press arrows, but it beeps when reached right and left ends. but when i finish interacting, arrow keys are not speaking letters and lines in the text fields till i restart nvda.
I have installed the addon and, either through the stable release or through the addon folder here, none of the writing gestures show up in the nvda gestures manager.
Moreover, alt+m in any sort of text field does not produce any effect and I cannot see any way to get to the write dialog. Having a quick look at global plugins init.py I see the write tool is imported, but i can't see any code that registers or uses it. I feel like I am missing something extremely basic, what is it?
my nvda version is 2021.3.1, I am running windows 11 Version 21H2 (OS build 22000.588)
Access8Math does not seem to recognize many use cases for over-script accent bars. While it will read common “line segment” constructions, it seems to ignore very common things like “x bar” for the sample mean, and the overbar used to denote a repeating decimal. See this page for examples.
Access8Math 3.0 is using Alt+S as a shortcut in any edit field.
Alt+letter are usually reserved to access menu items or dialog box items such as checkboxes, buttons, etc. Since edit field may be encountered everywhere, You should rather choose a gesture using the NVDA key to avoid conflicting with any windows or application native shortcut.
I have encountered this issue in the search dialog box of PoeEdit. There is an edit field where I type the text I want to find. Then I have pressed Alt+S to activate the "Suivant" button, i.e. "Next" in French localization. But instead of activating the button, the Access8Math feature has been toggled.
Thanks.
Hello!
I use the unicode.dic dictionary to translate operator-names, such as sin
, cos
, tan
and so on. But the problem is that when this name is the part of other name, it's spoken incorrectly.
For example, I have such rule:
tan тангенс none
And if the operator-name is tan
, it's OK. But if I, for example, see arctan
, I hear something like "arcтангенс" (two alphabets are merge into one word).
Of course, I can add rule arctan
befor tan
and it should solve the problem, but I cannot find all cases when one operator is the part of other one.
Can I do something to limit the operator-name? I need ignoring the range of symbols if it is not a separate word. For example, to translate tan
, but ignore this symbols in arctan
.
Thanks
When trying to go to the addon settings to make some changes using the following way NVDA menu\tools\access 8 Math\settings... the settings dialogue are not appeared. The screen reader is silent. Don't reacted on the keyboard commence apart going to the desktop.
Operating system – windows 11;
NVDA version - 2023.1;
Addon version - 3.5.
Access8Math has just been integrated in the translation framework. Thank you very much, this will be easier for translators.
Some translatable strings have translator comments. But for many other strings, the translator comments are missing.
Having translator comments explaining where this string is used would be really helpful for translators.
Could you add them?
Thanks in advance.
JAWS behaves the same way with respect to @mathvariant
. NVDA and MathPlayer produce the following results in the speech log:
normal clickable word
bold clickable bold word
italic clickable word
bold-italic clickable bold italic word
double-struck clickable double struck word
bold-fraktur clickable bold fraktur word
script clickable script word
bold-script clickable bold script word
fraktur clickable fracktur word
sans-serif clickable word
bold-sans-serif clickable word
sans-serif-italic clickable word
sans-serif-bold-italic clickable word
monospace clickable word
initial clickable math m l error word end math m l error
tailed clickable math m l error word end math m l error
looped clickable math m l error word end math m l error
stretched clickable math m l error word end math m l error
MathCAT modifies the announcement but for multi character mi
elements it breaks up the word into characters e.g. bold clickable bold wbold obold rbold d
It seems like the MathPlayer output would be best, excepting the math m l error for initial, tailed, looped, and stretched.
Hi
Found while checking translations of A8M 3.3
Try to open any of theunicode dic or math rules items in the localization submenu.
The dialog does not open and the following error is in the log:
ERROR - unhandled exception (16:21:00.712) - MainThread (652):
Traceback (most recent call last):
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math_init_.py", line 356, in onSpeechUnicodeDictionary
language=config.conf["Access8Math"]["settings"]["language"], category='speech'
File "gui_init_.pyc", line 162, in _popupSettingsDialog
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\dialogs.py", line 455, in init
symbol = A8M_PM.load_unicode_dic(language=self.language, category=category)
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\A8M_PM.py", line 1427, in load_unicode_dic
with io.open(frp, 'r', encoding='utf-8') as fr, io.open(frp_user, 'w', encoding='utf-8') as fr_user:
FileNotFoundError: [Errno 2] No such file or directory: 'C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\locale\speech\fr_FR\unicode.dic'
The dialog opens without error
The name of the folder found in Windows Explorer is 'fr', not 'fr_FR', hence A8M does not find the file.
Hi,
If "Export" or "Preview" is selected under the editor's preview menu, and the user clicks Cancel in the save dialog, it should not proceed further.
My idea is to improve the OnSave() function, implement an exception catch for with open(), and OnSave() needs to return the correct state.
Thanks
Sometimes it's needed to localize symbols progressively as they appear, and a feature to search the English text corresponding to them would be very helpful.
Thanks
mspace
element in itmspace
element is announced as emptymspace
element is ignored in announcement, or at most signifies a brief pause in announcement. JAWS 2022 ignores mspace
. NVDA with MathPlayer 4 seems to pause briefly for mspace
but it is otherwise ignored even with punctuation set to "all"
On a fresh install of Access8Math:
Error tone heard with the following error in the log:
ERROR - unhandled exception (10:42:01.714) - MainThread (6460):
Traceback (most recent call last):
File "C:\Users\Cyrille\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\__init__.py", line 370, in onCleanWorkspace
for item in os.listdir(review):
FileNotFoundError: [WinError 3] Le chemin d’accès spécifié est introuvable: 'C:\\Users\\Cyrille\\AppData\\Roaming\\nvda\\addons\\Access8Math\\globalPlugins\\Access8Math\\web\\review'
No error
Hello! I'm using NVDA Beta, so I can know about all NVDA's errors by listening the sound beep.
I've noticed that access8Math results in error when using braille display. When I connect my braille display (Focus 40 Blue) and press any key in this, NVDA returns such error:
ERROR - scriptHandler._getObjScript (18:44:40.021) - braille._BgThread (18592):
Traceback (most recent call last):
File "scriptHandler.pyc", line 59, in _getObjScript
File "C:\Users\andre\AppData\Roaming\nvda\addons\Access8Math\globalPlugins\Access8Math\__init__.py", line 551, in getScript
(len(gesture.modifierNames) == 0 or (len(gesture.modifierNames) == 1 and "shift" in gesture.modifierNames)) \
AttributeError: 'KeyGesture' object has no attribute 'modifierNames'
Can it be fixed?
Thanks
This is more a suggestion than an actual bug. Neither JAWS, NVDA w/ MathPlayer, or NVDA w/ MathCAT announce row and column lines in mtable
elements. Perhaps the row and column lines could be announced when the dimensions of the table are announced. This would be important when discussing augmented matrices, or when a row line is used in a mtable
representing stacked arithmetic.
notation
portion of the Attributes section.@notation
values, noting the announcement of math in column "Rendering in your browser"menclose
element.Some mention of the enclosing notation is expected. JAWS 2022 provides the following announcements for the math expressions in the table based on their notation.
notation="longdiv": a squared + b squared, under long division symbol MathContent
notation="actuarial": a squared + b squared, under actuarial symbol MathContent
notation="radical": a squared + b squared, under radical symbol MathContent
notation="box": a squared + b squared, surrounded by box MathContent
notation="roundedbox": a squared + b squared, surrounded by rounded box. MathContent
notation="circle": a squared + b squared, surrounded by circle MathContent
notation="left": a squared + b squared, with line on the left MathContent
notation="right": a squared + b squared, with line on the right MathContent
notation="top": a squared + b squared, with line on the top MathContent
notation="bottom": a squared + b squared, with line on the bottom MathContent
notation="updiagonalstrike": a squared + b squared, covered by up diagonal strike MathContent
notation="downdiagonalstrike": a squared + b squared, covered by down diagonal strike MathContent
notation="verticalstrike": a squared + b squared, covered by virtacal strike MathContent
notation="horizontalstrike": a squared + b squared, covered by horizontal strike MathContent
notation="madruwb": a squared + b squared, madruwb MathContent
notation="updiagonalarrow": a squared + b squared MathContent
notation="phasorangle": a squared + b squared MathContent
NVDA + MathPlayer output is as follows:
notation="longdiv": long division symbol enclosing a squared plus b squared end symbol
notation="actuarial": actuarial symbol enclosing a squared plus b squared end symbol
notation="radical": the square root of a squared plus b squared
notation="box": begin box a squared plus b squared end box
notation="roundedbox": begin rounded box a squared plus b squared end rounded box
notation="circle": begin circle a squared plus b squared end circle
notation="left": line left of a squared plus b squared end line
notation="right": line right of a squared plus b squared end line
notation="top": line above a squared plus b squared end line
notation="bottom": line below a squared plus b squared end line
notation="updiagonalstrike": cross out enclosing a squared plus b squared end crossout
notation="downdiagonalstrike": cross out enclosing a squared plus b squared end crossout
notation="verticalstrike": cross out enclosing a squared plus b squared end crossout
notation="horizontalstrike": cross out enclosing a squared plus b squared end crossout
notation="madruwb": a squared plus b squared
notation="updiagonalarrow": math m l error long division symbol enclosing a squared plus b squared end symbol end math m l error
notation="phasorangle": a squared plus b squared
The menclose
element is the only way to get long division symbols to render in Firefox. This is the same for MathJax, unless you add the extension that provides support for mlongdiv, mstack, etc. Obviously neither MathPlayer nor JAWS provide support for all notations but long division, crossouts, shapes, and lines would go a long way.
I press Alt+M in a blank notepad,
NVDA report "In math section. Please leave math section first and try again."
Access8Math reading of container structures depends on the deprecated <mfenced> element. This element is rarely found on the web, and developers are advised to use the <mrow> and <mo> elements instead as it has been deprecated from the MathML spec. See this discussion for detail. However, Access8Math does not recognize this very common construction, and reads nothing when parentheses or vertical bars surround an expression. See this sample page for examples of the common authoring practice for both parenthetical statements and absolute value constructions which do not used the deprecated element.
Hello!
I think we need in separate math rule to treatment of logarithms. It's known that the base of logarythm function is written as subscript, but it isn't spoken like a usual digit/variable with subscript.
I believe that it would be very useful if Access8Math had separate rule for log-functions. Now I can set "log"
word in unicode.dic, but not a rule to spoken a base and a sub-logarithmic expression.
Thanks
Andrey
Hello, I would like to email you, but as I don't have your contact information I just decided to open this issue.
I really appreciated this project and your initiative to provide it to the blind community.
I am doing a master's research related to math navigation using screen readers so my idea is to understand your code and try to propose an alternative version based on it. So, I wonder if you have code documentation.
Please, let me know :D thanks
For each math equation in the page NVDA + MathPlayer 4 announces the following:
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts lower pre subscript upper pre superscript post-scripts lower post subscript upper post superscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts upper pre superscript post-scripts lower post subscript upper post superscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts lower pre subscript post-scripts lower post subscript upper post superscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts lower pre subscript upper pre superscript post-scripts lower post subscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts lower pre subscript upper pre superscript post-scripts upper post superscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts lower pre subscript upper pre superscript post-scripts end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts post-scripts lower post subscript upper post superscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts upper pre superscript post-scripts upper post superscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts lower pre subscript post-scripts lower post subscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts upper pre superscript post-scripts lower post subscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts lower pre subscript post-scripts upper post superscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts post-scripts lower post subscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts post-scripts upper post superscript end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts lower pre subscript post-scripts end multi-scripts
clickable multi-scripts with base base and 1 prescript and 1 post-script pre-scripts upper pre superscript post-scripts end multi-scripts
JAWS 2022 is not helpful for determining how this element should be annoucned. JAWS 2022 announces the content of mmultiscripts
child elements in document order with no mention of any kind of super or subscripting. mmultiscripts
seems like it would be the preferred way to write combinations and permutations, e.g. nPk.
Hello!
Please, explaine me, how must this setting work in general? I don't note any changes when I regulate this. I assume that it should adjust pauses between math elements, but it doesn't work.
<mphantom> y + </mphantom>
when Access8Math enabled<mphantom>
in any caseNote: Chrome doesn't support <mphantom>
thus "y +" will still appear but still shouldn't be read
2021.1
Windows 10 (64-bit)
Chrome (93.0.4577.63)
Firefox (92.0)
Dear @tsengwoody !
great Plugin and thank you for your work 👍
Can you give me some explanation how one would add a translation for e.g. german?
I found two folders where translations has been defined:
Did I miss some localization files?
Would be great to hear from you, so that I can provide a german locale.
Kind regards!
hi.
NVAccess is planning to make UI automation default by v2021.3, and code is already commited. this is going to break the functionality for this addon unless a custom UI automation atripute work is being completed and comitted before a release: nvaccess/nvda#12946
is that correct?
Hi. Access8Math works great in cases where equations are already in Math ML. I am wondering though whether a pipeline is possible where images of equations (which is how we often encounter math online and in textbooks) can be turned into MathML using something like Meta's Nougat? Maybe this is something to explore in another project, but ultimately a great solution would be a single plug-in that can both turn images of math into MathML and then read it. Anyway, keen to know what you think. Also keen to contribute, though i haven't done much of this type of programming. Thanks for a great add-in.
For the first time I tried Access8Math, it worked very well without problems in Google Chrome, but when I disabled the add-on and then re-enabled it, it doesn't speak out MathML content in Chrome when I move over a line that contains MathML content, although the navigator object role is expressed as "MATH". Even when I hit the space bar for the dialog or the popup to open on the MathML element, nothing happens. Now, when I browse MathML content, NVDA speaks none. Peace and quiet. However, I tried to install both of MathCAT and MathPlayer, I tried to switch the math reader speach source to both of MathCAT and MathPlayer, also without a result.
When I tried to read math content in Edge using Access8Math, it reads MathML content without any problem. The problem lies in Google Chrome web browser.
I am not sure what the problem is, but I am sure that I need it to work instantaneously.
I can provide any relavant logs/documentations once requested.
This is Tony, I am the author of IndentNav add-on. I just wanted to bring it up to your attention that the latest version of Access8Math seems to have conflicting keyboard shortcuts with IndentNav.
In particular: NVDA+Alt+Left/Right/Down arrows.
Another problem is that for some reason when I try to figure out what action is assigned to these shortcuts, I do that by triggering input help (NVDA+num row 1) and then pressing the desired shortcut (say NVDA+Alt+DownArrow), it doesn't say that this shortcut is assigned to anything, making it harder for users to figure out what's going on. I was looking at your code and it seems to me this might be due to the way you assign shortcuts in @script
annotation:
@script(gestures=[
"kb:NVDA+alt+downArrow" if active else "kb:alt+downArrow",
I don't know whether NVDA is supposed to work with this kind of if statement, but it seems to me this is likely the reason why NVDA cannot tell me what is the action assigned to this shortcut. Also in input gestures dialog this action doesn't seem to appear either.
Also your documentation doesn't seem to mention that your addon uses these shortcuts.
I also want to mention that I don't know what's the right way to resolve this kind of shortcut conflicts should be. The ecosystem of NVDA addons seems to be growing steadily and conflicts like this are inevitable. So I am not necessarily asking you to change your shortcuts if you think they are essential to your addon. But what I would like to ask you is to make sure that these shortcuts can be detected by NVDA properly, that is in Input Help mode they would detect as belonging to your add-on. Otherwise I expect to see many users of IndentNav coming to me complaining that IndentNav stopped working and unable to debug this problem on their own.
Thanks!
This is a very well done add-on. It is extremely configurable and easy to install.
Wondering if there is a way to eliminate item numbers when navigating. To some, these might be useful, but to an advanced user, including item numbers will slow them down. Also, if the actual expression contains a numeric constant, then speaking item number followed by the actual constant from the expression might be confusing.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.