Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Read vertical bar as "bar" rather than "divides" by default #214

Open
bhavyashah opened this issue Nov 8, 2023 · 1 comment
Open

Read vertical bar as "bar" rather than "divides" by default #214

bhavyashah opened this issue Nov 8, 2023 · 1 comment

Comments

@bhavyashah
Copy link

bhavyashah commented Nov 8, 2023

Currently, it seems that MathCAT reads the vertical bar as "divides" by default. Note that the vertical bar can be used to indicate norm, absolute value, conditioning (probability), set builder notation, divisibility, etc. In my experience, I encounter cases of absolute value and conditioning way more than the rest, but that is likely because I am taking more statistics classes and my experience is not representative. That said, I don't think that divisibility is the most common context either. While the eventual goal would be to read the vertical bars in a context-aware manner, for now, I'd say the default reading should be "bar" and not "divides." It is shorter, more neutral, and less misleading.

@NSoiffer
Copy link
Owner

There are several vertical line characters. The most commonly used one is "|" (U+007C)

The one that has "divides" as the default is U+2223. This characters is explicitly called "divides" by the Unicode standard and is meant to be used for that purpose (it is a little shorter in height than U+007C.

If you are using ClearSpeak (as opposed to SimpleSpeak), then the ClearSpeak standard has rules that will fallback to saying "divides". I've encoded them. ClearSpeak (which I helped to create) is far from perfect, so potentially it can be changed, but I'm a little reluctant to make a change without trying to change the standard (which is hard because there is no group maintaining ClearSpeak). Here is the rule:

     - test:
           # if it isn't ClearSpeak, or if there is nothing before the char or after the char...
        - if: "$SpeechStyle != 'ClearSpeak' or not(preceding-sibling::*) or not(following-sibling::*)"
          then: [t: "vertical line"]
        - else_if: "$ClearSpeak_VerticalLine = 'SuchThat'"
          then: [t: "such that"]
        - else_if: "$ClearSpeak_VerticalLine = 'Given'"  
          then: [t: "given"] 
        - else: [t: "divides"]                   

Note: $ClearSpeak_VerticalLine is a preference that can be set by changing the value in prefs.yaml. So far, I haven't added the ClearSpeak preferences to the NVDA dialog.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants