Closed jankoval closed 4 years ago
@jankoval,
Could you please open the Python Console by pressing NVDA+control+z
, paste in the following and post here the resulting output?
import os.path
os.path.abspath(os.curdir)
os.path.isdir(os.path.join(os.curdir, "locale"))
os.listdir("locale")
Hi, thank you for the quick reply. It seems the new voice we are testing is faulty, it messes up some of the system settings and NVDA does not work properly, I even could not reinstall NVDA because of this issue until I unregistered all the dlls related to the new voice and rebooted the computer. Anyway, to answer your question:
When I select any built in SAPI voice, I get the following reply:
import os.path os.path.abspath(os.curdir) 'C:\Program Files (x86)\NVDA' os.path.isdir(os.path.join(os.curdir, "locale")) True ['af', 'af_ZA', 'am', 'an', 'ar', 'as', 'bg', 'bn', 'ca', 'ckb', 'cs', 'da', 'de', 'de_CH', 'el', 'en', 'es', 'es_CO', 'fa', 'fi', 'fr', 'ga', 'gl', 'gu', 'he', 'hi', 'hr', 'hu', 'id', 'is', 'it', 'ja', 'ka', 'kmr', 'kn', 'ko', 'kok', 'ky', 'lt', 'mk', 'ml', 'mn', 'mni', 'my', 'nb', 'nb_NO', 'ne', 'nl', 'nn_NO', 'pa', 'pl', 'pt', 'pt_BR', 'pt_PT', 'ro', 'ru', 'sk', 'sl', 'so', 'sq', 'sr', 'sr_SP', 'sv', 'ta', 'te', 'th', 'tr', 'uk', 'ur', 'vi', 'zh', 'zh_CN', 'zh_HK', 'zh_TW']
And with our testing voice I get the following:
import os.path os.path.abspath(os.curdir) 'C:\AlfaNum\Win32' os.path.isdir(os.path.join(os.curdir, "locale")) False FileNotFoundError: [WinError 3] The system cannot find the path specified: 'locale'
The path in the second case is the path of our testing voice, and as soon as I copied over locale folder from NVDA folder, everything starting working.
Thank you very much for your time, I think we can close it now.
Excelent investigation work here, thank you very much guys! Very interesting to know.
Steps to reproduce: Select SAPI engine and then select SAPI voice in Serbian and close the Settings window
Actual behavior: When trying to open Settings window, it is not displayed, if tried again the error will pop up saying "An NVDA settings dialog is already open. Please close it first." When the synthesizer is switched to another type instead of SAPI, or NVDA settings are reset to default, after the restart of NVDA everything works as expected. If any of the built-in Microsoft SAPI English voices are selected, the issue will remain until the first restart, then it will work as expected afterwards.
Expected behavior: Settings window should show up.
System configuration
NVDA installed/portable/running from source:
NVDA Installed
NVDA version:
2020.1
Windows version:
Windows 10, Version 1909 (OS Build 18363.836)
Name and version of other software in use when reproducing the issue:
Alfanum anReader Snezana 4.2.8 new Alfanum TTS SAPI voices (still under development)
Other information about your system:
After the Settings window fail to open, the log displays the following: ERROR - unhandled exception (17:07:27.141) - MainThread (13376): Traceback (most recent call last): File "gui__init.pyc", line 245, in onNVDASettingsCommand File "gui__init__.pyc", line 185, in _popupSettingsDialog File "gui\settingsDialogs.pyc", line 405, in init File "gui\settingsDialogs.pyc", line 155, in init File "gui\settingsDialogs.pyc", line 3532, in makeSettings File "gui\settingsDialogs.pyc", line 474, in makeSettings File "gui\settingsDialogs.pyc", line 590, in _doCategoryChange File "gui\settingsDialogs.pyc", line 511, in _getCategoryPanel File "gui\settingsDialogs.pyc", line 286, in init__ File "gui\settingsDialogs.pyc", line 296, in _buildGui File "gui\settingsDialogs.pyc", line 663, in makeSettings File "languageHandler.pyc", line 98, in getAvailableLanguages FileNotFoundError: [WinError 3] The system cannot find the path specified: 'locale'
Locale subfolder is present, and all the language subfolders are there, including sr folder.
And if a log level is increased, this is what is most probably causing the trouble:
DEBUGWARNING - synthDrivers.sapi5.SynthDriver.speak (21:35:59.973) - MainThread (11108): Unsupported speech command: LangChangeCommand ('sr_SP')
Other questions
Does the issue still occur after restarting your computer?
Yes
Have you tried any other versions of NVDA? If so, please report their behaviors.
No
If addons are disabled, is your problem still occuring?
There were no addons
Did you try to run the COM registry fixing tool in NVDA menu / tools?
No