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

Cannot read Braille unicode Characters. #6341

Closed
levilibegas opened this issue Sep 6, 2016 · 10 comments
Closed

Cannot read Braille unicode Characters. #6341

levilibegas opened this issue Sep 6, 2016 · 10 comments

Comments

@levilibegas
Copy link

Hello. I wonder if there would be a possibility for NVDA to read NVDA unicode Braille Characters (from 2800 to 28ff) hexadecimal values. There are some addons to write those codes or tu use a braille typewriter, and it would be useful to have read outlood those braille symbols aswell. Thanks alot. Regards. Levilibegas.

@LeonarddeR
Copy link
Collaborator

@levilibegas: What speech synthesizer are you using? ESpeak is reading these symbols just fine.
I'd treat this as a request to add the unicode braille cahracters to the symbols dictionary, which is a very reasonable request in my view. I'm using Vocalizer and always have to switch to espeak to read unicode braille with speech, which is slightly annoying.

@LeonarddeR
Copy link
Collaborator

@ehollig: I removed the braille label, as this is related to how braille unicode characters can be read with speech and thus doesn't have anything to do with NVDA's braille support. Labelled speech instead.

@DrSooom
Copy link

DrSooom commented Jan 17, 2019

During the searching for issue #3805 yesterday, I found this one here. So I decided to create the list for the "symbols.dic" including all 256 unicode braille characters. This took me less than 45 minutes for creating and ~25 more minutes of testing, because I created a text file with all them in April 2016. So I only had to enter the digits manually – the rest was Copy&Paste.

@LeonarddeR: As I'm not familiar with the pull system on GitHub, please insert the complete content of this text file at the end of locale\en\symbols.dic – and maybe to all other localized subfolders too, because all replacements just consist of the word "Braille" followed by the digits which are separated with spaces. So in most cases they needn't to be translated into other languages.

Known changes to eSpeak NG (NVDA 2018.4):

Result based on NVDA 2018.4 Portable (German) on win7x64:

  • ⠀ (U+2800) is now spoken as "Braille 0" instead of "Braille" alone.
  • The word "Braille" is now spoken in German instead of English. The digits were already spoken in German before.
  • There aren't changes regarding the pronunciation of the digits.
  • There aren't changes regarding the pronunciation of a unicode braille character when moving the cursor by character.
  • But if the cursor is now moving by word, by sentence, by paragraph or during SayAll, the word "Braille" is now spoken on each character. Without these replacement eSpeak NG will only announce "Braille" once at the beginning of a group of unicode braille characters.
    • ⠝⠧⠙⠁ before: Braille 1 3 4 5 1 2 3 6 1 4 5 1
    • ⠝⠧⠙⠁ after: Braille 1 3 4 5 Braille 1 2 3 6 Braille 1 4 5 Braille 1
  • If you set the value for "Send actual symbol to synthesizer" to "always", the unicode braille character will now be spoken twice (replacement + TSS recognition) during the four last mentioned navigation methods, but not when moving by character. In other words: It's a regression based on technical limitations. Sadly I couldn't figure out a workaround for this. Sorry.

Update 2019-01-17-0750+0100:

I checked the two last points again and had to recognize that the first mention behaviour was based on eSpeak with NVDA 2015.3. The second behaviour is already existing with eSpeak NG in NVDA 2018.4.1 (Installer copy). Sorry for the inconvenience.

@DrSooom
Copy link

DrSooom commented Jan 17, 2019

Here is the same text file as above, but with the pronunciation level "some" instead of "none". I guess inserting this one here might be better for all users who want the "disable" pronouncing unicode braille characters by switching the pronunciation level with NVDA+P. Otherwise they have to change the pronunciation level manually via the GUI (or via Notepad++) for all 256 characters, which could take a while for the "symbols-xx.dic" in the user-specific configuration folder.

@DrSooom
Copy link

DrSooom commented Feb 18, 2019

Maybe it's better to handle this file here in the same way like "cldr.dic", which the user can enable and disable via the Speech NVDA Settings. See issue #6523 and #9210 and PR #8758.

@DrSooom
Copy link

DrSooom commented Apr 3, 2019

@LeonarddeR: Just a ping. Any thoughts regarding my last suggestion?

@jage9
Copy link
Contributor

jage9 commented Sep 1, 2020

I came across a Windows app, Braille Music Editor, which is one that would benefit from importing these symbols. While Espeak says braille , braille 4, etc. no other synth including Windows SAPI or CF Eloquence reads these.
My personal preference would be to read as "dot 1" "dots 1 2 3" for English, but if there is a more preferred standard, that's fine. But happy to help resurrect this and update the symbols file.

@DrSooom
Copy link

DrSooom commented Sep 1, 2020

@Adriani90: Could you please keep an eye on this issue? I already uploaded the necessary files here and here, but didn't open a PR because there are still a few questions open, which should be answered before. Thanks.

@sclower
Copy link

sclower commented Apr 23, 2021

I am also interested in seeing this issue move forward. We are adding more Braille support to our software and would like to standardize on UNICODE dot patterns where we can. I realize interpretation is left to the synthesizer, but if the most widely used options (like OneCore and Eloquence) don't know how to voice them, it may be time for NVDA to do so on its own.

@Adriani90
Copy link
Collaborator

This has been fixed now with #14548. Thanks very much @seanbudd for your work on this.

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

No branches or pull requests

7 participants