Что нового в NVDA 2021.1.
Этот выпуск включает в себя экспериментальную поддержку UI Automation для Microsoft Excel и web-браузеров на основе движка Chromium.
Имеются исправления для ряда языков и улучшение в активации ссылок с брайлевского дисплея.
Обновлён общий репозиторий языковых данных консорциума Unicode, набор читаемых математических символов и брайлевский транслятор LibLouis.
А также множество других улучшений и исправлений, в том числе для Microsoft Office, Visual Studio и ряда языков.
Обратите внимание:
- Этот выпуск нарушает совместимость с существующими дополнениями.
- Также в нём прекращена поддержка Adobe Flash.
-
⚠⤵
Как стать спонсором или поблагодарить донатом
В качестве благодарности за текущую и многолетнюю работу или в качестве мотивационной поддержки, вы можете отправить любую сумму руководителю русскоязычного сообщества NVDA.RU
Вы также можете стать ежемесячным или ежегодным спонсором (реквизиты те же самые, только сделайте в этом случае соответствующий комментарий).Вся информация о поступлениях будет отображена на страницы статистики.
Благодарю всех кто не прошел мимо и не остался равнодушным!
Вся эта работа важна, не только для руководителя, но и для каждого из вас!Посмотреть отчёт о поступивших донатах
(Ниже, самые удобные реквизиты, а в вверхней части сайта под кнопкой Donate можно найти другие варианты).
- Карта (Sberbank - Мир):
- Кошелёк YooMoney
Сделать перевод на ЮМани легко: Копируем номер кошелька, в приложении Сбербанк переходим в раздел электронных платёжных систем, находим ЮМани, вводим номер кошелька.
Со Сбербанка перевод на ЮМани без комиссии.
Перейти на мою визитку YooMoney
Новое
- Добавлена предварительная поддержка UI Automation для web-браузеров на основе движка Chromium (таких как Microsoft Edge). (#12025)
- Добавлена экспериментальная поддержка UI Automation для Microsoft Excel. Рекомендуется только для сборок Excel 16.0.13522.10000 и выше. (#12210)
- В Python консоли NVDA, упрощена навигация по результатам выполненных команд. (#9784)
- Команды Alt+стрелки вниз/вверх выполняют переход к следующему или предыдущему результату вывода (при зажатой клавише Shift происходит его выделение).
- Команда Control+L очищает область вывода результатов.
- Команды Alt+стрелки вниз/вверх выполняют переход к следующему или предыдущему результату вывода (при зажатой клавише Shift происходит его выделение).
- NVDA теперь сообщает категории, назначенные на встречи в Microsoft Outlook, если таковые имеются. (#11598)
- Добавлена поддержка брайлевского дисплея Seika Notetaker от Nippon Telesoft. (#11514)
Изменения
- В режиме обзора, элементы управления теперь могут быть активированы кнопками маршрутизации на брайлевском дисплее, расположенными над их сокращённом описанием (например «с» для ссылки). Это особенно полезно при активации флажков не имеющих текстовой метки. (#7447)
- При активной функции затемнения экрана, NVDA теперь уведомляет пользователя о невозможности использования компонента Windows 10 OCR. (#11911)
- Общий репозиторий языковых данных консорциума Unicode (CLDR), используемый в NVDA для чтения символов эмодзи, обновлён до версии 39.0. (#11943, #12314)
- В таблицу символов NVDA добавлено большое количество различных математических знаков. (#11467)
- Поставляемая с NVDA документация, а именно руководство пользователя, список изменений и список горячих клавиш, теперь имеет обновлённый внешний вид. (#12027)
- NVDA теперь сообщает о неподдерживаемости экранного представления режима обзора (NVDA+V) при попытке активации этого режима в приложениях, которые его не поддерживают. Например в Microsoft Word. (#7297)
- Опция «Пытаться отменять речевой вывод для устаревших событий фокуса» в категории «Дополнительно» диалога настроек NVDA, теперь включена по умолчанию. (#10885)
- Такое поведение можно отключить установкой этой опции в значение «Нет».
- В таких Web-приложениях как Gmail, NVDA больше не будет сообщать устаревшую информацию при быстром перемещении фокуса.
- Такое поведение можно отключить установкой этой опции в значение «Нет».
- Библиотека брайлевской трансляции Liblouis обновлена до версии 3.17.0. (#12137)
- Добавлены новые таблицы для белорусского компьютерного и литературного брайля, а также таблицы первой и второй ступени для языка урду.
- Добавлены новые таблицы для белорусского компьютерного и литературного брайля, а также таблицы первой и второй ступени для языка урду.
- Из NVDA удалена поддержка Flash-содержимого, поскольку компания Adobe прекратила поддержку этой технологии. (#11131)
- NVDA теперь может завершать свою работу даже при открытых окнах. Процесс завершения работы автоматически закроет все окна и диалоги NVDA перед выходом. (#1740)
- Окно просмотрщика речи теперь может быть закрыто сочетанием клавиш
Alt+F4
. Также оно теперь имеет стандартную кнопку закрытия окна для её нажатия с помощью указателя мыши. (#12330) - Окно просмотрщика брайля теперь имеет стандартную кнопку для её нажатия с помощью указателя мыши. (#12328)
- В диалоге «Список элементов», клавиша-ускоритель для кнопки «Активировать» была удалена в некоторых локалях для избежания коллизий с метками радиокнопок для выбора типа элементов. Когда кнопка доступна, она по-прежнему используется по умолчанию в диалоговом окне и, как таковая, всё ещё может быть вызвана простым нажатием Enter из самого списка элементов. (#6167)
Исправления
- Список сообщений в Microsoft Outlook 2010 снова доступен для чтения. (#12241)
- В окнах терминалов на Windows 10 версии 1607 и выше, вставка или удаление символа в середине строки, больше не приводит к чтению всех символов справа от каретки. (#3200)
- Это экспериментальное исправление может быть включено вручную в категории «Дополнительно» диалога настроек NVDA, путём установки опции «Diff-алгоритм» в значение «Разрешить использование Diff Match Patch».
- Это экспериментальное исправление может быть включено вручную в категории «Дополнительно» диалога настроек NVDA, путём установки опции «Diff-алгоритм» в значение «Разрешить использование Diff Match Patch».
- В Microsoft Outlook, нажатие Shift+Tab для перехода от тела сообщения к его теме, больше не должно вызывать неуместное чтение расстояния до края элемента. (#10254)
- В Python-консоли NVDA, теперь поддерживается вставка символа табуляции в начало непустой строки ввода и автодополнение по клавише Tab в её середине. (#11532)
- В окне с информацией о форматировании текста (NVDA+F дважды быстро) и других подобных окнах с режимом обзора, больше не должно быть пустых строк при отключённом режиме экранного представления (NVDA+V). (#12004)
- В документах Microsoft Word, при включённой поддержке UI Automation, теперь возможно читать существующие в документе примечания. (#9285)
- Улучшена производительность при взаимодействии с Visual Studio. (#12171)
- Исправлены ошибки графического интерфейса NVDA, приводящие к исчезновению некоторых элементов управления при использовании языков с написанием справа налево. (#8859)
- Направление компоновки графического интерфейса NVDA теперь основывается на языке интерфейса NVDA, а не на системной локали. (#638)
- Известная проблема для языков с написанием справа налево: правая граница группы элементов обрезается вместе с её метками и элементами управления. (#12181)
- Известная проблема для языков с написанием справа налево: правая граница группы элементов обрезается вместе с её метками и элементами управления. (#12181)
- Python-локаль теперь устанавливается в соответствии с выбранным в настройках NVDA языком интерфейса, что также будет происходить при использовании языка по умолчанию. (#12214)
- Вызов метода textInfos.TextInfo.getTextInChunks, относящегося к редакторам с поддержкой форматирования, таким как просмотрщик журнала NVDA, больше не вызывает его зависание. (#11613)
- Теперь снова возможно использовать NVDA на языках содержащих символ подчёркивания (_) в имени локали (например de_CH) на Windows 10 версий 1803 и 1809. (#12250)
- В WordPad, настройка чтения подстрочного и надстрочного текста теперь работает как и ожидается. (#12262)
- В NVDA больше не происходит сбой при попытке чтения обновлённого содержимого в фокусе на web-страницах, если старый фокус пропадает и заменяется новым в той же позиции. (#12147)
- Зачёркнутость, надстрочность и подстрочность теперь сообщается для всей ячейки Excel целиком, если соответствующая опция включена в настройках форматирования NVDA. (#12264)
- Исправлено копирование конфигурации во время установки NVDA из переносной копии, если целевой каталог отсутствует или является пустым. (#12071, #12205)
- Исправлено неправильное объявление некоторых букв с ударениями или диакритическими знаками, когда включена опция «Говорить „Большая“ перед заглавными буквами». (#11948)
- Исправлен сбой при изменении высоты голоса для SAPI4-синтезаторов. (#12311)
- Установщик NVDA теперь также учитывает параметр командной строки
--minimal
и не воспроизводит звук запуска, следуя тому же документированному поведению, что и исполняемый файл установленной или переносной копии NVDA. (#12289) - В Microsoft Word или Outlook, клавиша быстрой навигации по таблицам теперь может переходить к макетным таблицам, если соответствующая опция включена в настройках режима обзора NVDA. (#11899)
- NVDA больше не будет объявлять «↑↑↑» для символов эмодзи в некоторых языках. (#11963)
- Синтезатор eSpeak теперь снова поддерживает кантонский и мандаринский языки. (#10418)
- В новом Microsoft Edge на основе Chromium, текстовые поля, такие как адресная строка, теперь корректно сообщаются даже если они являются пустыми. (#12474)
- Исправлен драйвер для брайлевских дисплеев Seika. (#10787)
Изменения для разработчиков
- Внимание: этот выпуск нарушает совместимость с API существующих дополнений. Дополнения необходимо будет повторно протестировать и обновить их манифест.
- Система сборки NVDA теперь извлекает все Python-зависимости с помощью pip и сохраняет их в виртуальном окружении Python. Всё это делается прозрачно для пользователя.
- Для сборки NVDA, следует как и раньше использовать SCons. То есть выполнять scons.bat в корневом каталоге репозитория. Запуск
py -m SCons
больше не поддерживается, а такжеscons.py
был удалён. - Для запуска NVDA из исходного кода, вместо прямого выполнения
source/nvda.pyw
, разработчик теперь должен использоватьrunnvda.bat
из корневого каталога репозитория. Если вы попытаетесь выполнитьsource/nvda.pyw
, то получите окно с уведомлением о том, что это больше не поддерживается. - Для выполнения модульных тестов, выполните
rununittests.bat [<дополнительные опции тестирования>]
- Для выполнения системных тестов, выполните
runsystemtests.bat [<дополнительные опции тестирования>]
- Для выполнения статического анализа, выполните
runlint.bat <base branch>
- Для получения дополнительной информации, пожалуйста, обратитесь к файлу readme.md.
- Для сборки NVDA, следует как и раньше использовать SCons. То есть выполнять scons.bat в корневом каталоге репозитория. Запуск
- Также были обновлены следующие Python-зависимости:
- comtypes обновлён до версии 1.1.8.
- pySerial обновлён до версии 3.5.
- wxPython обновлён до версии 4.1.1.
- Py2exe обновлён до версии 0.10.1.0.
- comtypes обновлён до версии 1.1.8.
- Метод
LiveText._getTextLines
был удалён. (#11639)- Вместо него следует переопределять метод
_getText
, который возвращает весь текст объекта.
- Вместо него следует переопределять метод
- Экземпляры
LiveText
теперь могут вычислять разницу в текстах посимвольно. (#11639)- Чтобы изменить поведение в поиске различий для некоторого объекта, переопределите свойство
diffAlgo
(см. строку документации для получения дополнительной информации).
- Чтобы изменить поведение в поиске различий для некоторого объекта, переопределите свойство
- При определении скрипта с помощью декоратора scriptHandler.script, теперь может быть указан логический аргумент 'allowInSleepMode', управляющий доступностью скрипта в режиме сна. (#11979)
- Следующие функции были удалены из модуля config. (#11935)
- canStartOnSecureScreens - вместо него используйте config.isInstalledCopy.
- hasUiAccess и execElevated - используйте их из модуля systemUtils.
- getConfigDirs - вместо него используйте globalVars.appArgs.configPath.
- canStartOnSecureScreens - вместо него используйте config.isInstalledCopy.
- Константы REASON_* были удалены из модуля controlTypes. Пожалуйста, вместо них используйте controlTypes.OutputReason. (#11969)
- REASON_QUICKNAV has been removed from browseMode - use controlTypes.OutputReason.QUICKNAV instead. (#11969)
NVDAObject
(and derivatives) propertyisCurrent
now strictly returns Enum classcontrolTypes.IsCurrent
. (#11782)isCurrent
is no longer Optional, and thus will not return None.- When an object is not current
controlTypes.IsCurrent.NO
is returned.
- When an object is not current
- The
controlTypes.isCurrentLabels
mapping has been removed. (#11782)- Instead use the
displayString
property on acontrolTypes.IsCurrent
enum value.- For example:
controlTypes.IsCurrent.YES.displayString
.
- For example:
- Instead use the
winKernel.GetTimeFormat
has been removed - usewinKernel.GetTimeFormatEx
instead. (#12139)winKernel.GetDateFormat
has been removed - usewinKernel.GetDateFormatEx
instead. (#12139)gui.DriverSettingsMixin
has been removed - usegui.AutoSettingsMixin
. (#12144)speech.getSpeechForSpelling
has been removed - usespeech.getSpellingSpeech
. (#12145)- Commands cannot be directly imported from speech as
import speech; speech.ExampleCommand()
orimport speech.manager; speech.manager.ExampleCommand()
- usefrom speech.commands import ExampleCommand
instead. (#12126) speakTextInfo
will no longer send speech throughspeakWithoutPauses
if reason isSAYALL
, asSayAllHandler
does this manually now. (#12150)- The
synthDriverHandler
module is no longer star imported intoglobalCommands
andgui.settingsDialogs
- usefrom synthDriverHandler import synthFunctionExample
instead. (#12172) ROLE_EQUATION
has been removed from controlTypes - useROLE_MATH
instead. (#12164)autoSettingsUtils.driverSetting
classes are removed fromdriverHandler
- please use them fromautoSettingsUtils.driverSetting
. (#12168)autoSettingsUtils.utils
classes are removed fromdriverHandler
- please use them fromautoSettingsUtils.utils
. (#12168)- Support of
TextInfo
s that do not inherit fromcontentRecog.BaseContentRecogTextInfo
is removed. (#12157) speech.speakWithoutPauses
has been removed - please usespeech.speechWithoutPauses.SpeechWithoutPauses(speakFunc=speech.speak).speakWithoutPauses
instead. (#12195, #12251)speech.re_last_pause
has been removed - please usespeech.speechWithoutPauses.SpeechWithoutPauses.re_last_pause
instead. (#12195, #12251)WelcomeDialog
,LauncherDialog
andAskAllowUsageStatsDialog
are moved to thegui.startupDialogs
. (#12105)getDocFilePath
has been moved fromgui
to thedocumentationUtils
module. (#12105)- The gui.accPropServer module as well as the AccPropertyOverride and ListCtrlAccPropServer classes from the gui.nvdaControls module have been removed in favor of WX native support for overriding accessibility properties. When enhancing accessibility of WX controls, implement wx.Accessible instead. (#12215)
- Files in
source/comInterfaces/
are now more easily consumable by developer tools such as IDEs. (#12201) - Convenience methods and types have been added to the winVersion module for getting and comparing Windows versions. (#11909)
- isWin10 function found in winVersion module has been removed.
- class winVersion.WinVersion is a comparable and order-able type encapsulating Windows version information.
- Function winVersion.getWinVer has been added to get a winVersion.WinVersion representing the currently running OS.
- Convenience constants have been added for known Windows releases, see winVersion.WIN* constants.
- isWin10 function found in winVersion module has been removed.
- IAccessibleHandler no longer star imports everything from IAccessible and IA2 COM interfaces - please use them directly. (#12232)
- TextInfo objects now have start and end properties which can be compared mathematically with operators such as < <= == != >= >. (#11613)
- E.g. ti1.start <= ti2.end
- This usage is now prefered instead of ti1.compareEndPoints(ti2,"startToEnd") <= 0
- E.g. ti1.start <= ti2.end
- TextInfo start and end properties can also be set to each other. (#11613)
- E.g. ti1.start = ti2.end
- This usage is prefered instead of ti1.SetEndPoint(ti2,"startToEnd")
- E.g. ti1.start = ti2.end
wx.CENTRE_ON_SCREEN
andwx.CENTER_ON_SCREEN
are removed, useself.CentreOnScreen()
instead. (#12309)easeOfAccess.isSupported
has been removed, NVDA only supports versions of Windows where this evaluates toTrue
. (#12222)sayAllHandler
has been moved tospeech.sayAll
. (#12251)speech.sayAll.SayAllHandler
exposes the functionsstop
,isRunning
,readObjects
,readText
,lastSayAllMode
.SayAllHandler.stop
also resets theSayAllHandler
SpeechWithoutPauses
instance.CURSOR_REVIEW
andCURSOR_CARET
has been replaced withCURSOR.REVIEW
andCURSOR.CARET
.
speech.SpeechWithoutPauses
has been moved tospeech.speechWithoutPauses.SpeechWithoutPauses
. (#12251)speech.curWordChars
has been renamedspeech._curWordChars
. (#12395)- the following have been removed from
speech
and can be accessed throughspeech.getState()
. These are readonly values now. (#12395)- speechMode
- speechMode_beeps_ms
- beenCanceled
- isPaused
- speechMode
- to update
speech.speechMode
usespeech.setSpeechMode
. (#12395) - the following have been moved to
speech.SpeechMode
. (#12395)speech.speechMode_off
becomesspeech.SpeechMode.off
speech.speechMode_beeps
becomesspeech.SpeechMode.beeps
speech.speechMode_talk
becomesspeech.SpeechMode.talk
IAccessibleHandler.IAccessibleObjectIdentifierType
is nowIAccessibleHandler.types.IAccessibleObjectIdentifierType
. (#12367)- The following in
NVDAObjects.UIA.WinConsoleUIA
have been changed (#12094)NVDAObjects.UIA.winConsoleUIA.is21H1Plus
renamedNVDAObjects.UIA.winConsoleUIA.isImprovedTextRangeAvailable
.NVDAObjects.UIA.winConsoleUIA.consoleUIATextInfo
renamed to start class name with upper case.NVDAObjects.UIA.winConsoleUIA.consoleUIATextInfoPre21H1
renamedNVDAObjects.UIA.winConsoleUIA.ConsoleUIATextInfoWorkaroundEndInclusive
- The implementation works around both end points being inclusive (in text ranges) before microsoft/terminal PR 4018
- Workarounds for
expand
,collapse
,compareEndPoints
,setEndPoint
, etc
- The implementation works around both end points being inclusive (in text ranges) before microsoft/terminal PR 4018
Если не работает ссылка
Если вы на текущей странице обнаружили неработающую ссылку, то пожалуйста, сообщите об этом через Форму обратной связи.
В сообщении укажите неработающую ссылку и ссылку на страницу где обнаружена неработающая ссылка.
Благодарю всех за участие!