Расширение функциональности NVDA при помощи дополнений

Дата публикации:12.08.2013
Поделиться в Twitter Поделиться в F******k Поделиться в VKontakte Поделиться в Telegram Поделиться в Mastodon

Программа экранного доступа NVDA набирает всё бо́льшую популярность в среде пользователей Windows с нарушениями зрения. Однако ввиду своего некоммерческого характера данный проект не обладает ресурсами, сопоставимыми с коммерческими конкурентами, поэтому во многих аспектах уступает по функциональности платным аналогам. Кроме того, далеко не каждый функционал считается разработчиками безусловно необходимым, поэтому часто осознанно не включается в основной дистрибутив программы.

Тем не менее, NVDA, как и многие другие программы экранного доступа, да, пожалуй, и в большей степени, позволяет изменять или дополнять свой функционал посредством сторонней доработки. Такая возможность в принципе существовала с самого начала, вследствие того, что NVDA является проектом с открытым исходным кодом, но вот удобная инфраструктура для распространения подобных модулей кастомизации появилась лишь в версии 2012.2.

В NVDA 2012.2 была реализована такая функция как «Дополнения» (Add-ons). Фактически это модули, расширяющие функционал NVDA, упакованные специальным образом, что позволяет работать с ними обычным пользователям, не задумываясь над ручным копированием файлов в системные директории. Благодаря этому, даже неопытный пользователь теперь может взять какое-то дополнение и в несколько простых действий установить его для расширения функционала программы экранного доступа.

Менеджер дополнений

Дополнения представляют собой файлы с расширением .nvda-addon. Для работы с ними в NVDA существует так называемый «Менеджер дополнений», который запускается через меню NVDA по пути «Сервис\Управление дополнениями».

Окно менеджера содержит список, в котором отображаются все дополнения, установленные для текущего пользователя. То есть при загрузки установочной версии NVDA из под разных пользователей Windows, данный список может отличаться, потому что дополнения устанавливаются в директории конфигураций конкретных пользователей (для переносной версии программы это не актуально).

В самом списке, помимо краткой информации о дополнении, также показывается его статус:

  • «Установить» — означает, что дополнение было установлено, но требуется перезагрузка NVDA, чтобы оно вступило в силу.
  • «Работает» — означает, что дополнение установлено и доступно для использования в настоящий момент.
  • «Удалить» — означает, что дополнение было удалено, но требуется перезагрузка NVDA, чтобы оно вступило в силу.

Помимо списка, окно содержит набор кнопок, на которые можно переместиться клавишей Tab:

  • «О дополнении» — открывает окно с подробной информации о выбранном в списке дополнении.
  • «Установить» — открывает диалог выбора установочного файла дополнения.
  • «Удалить» — начинает процедуру удаления выбранного в списке дополнения.
  • «Закрыть» — закрывает менеджер дополнений.

Однако для установки дополнения необязательно делать это через кнопку «Установить» в окне менеджера дополнений. Достаточно при активной NVDA просто запустить файл .nvda-addon через файловый менеджер и процедура начнётся автоматически.

Когда пользователь запускает установку какого-то дополнения, то ему выводится окно с вопросом:

Вы действительно уверены, что хотите установить это дополнение? Устанавливайте дополнения только из доверенных источников.

Ну а ниже приводится информация об этом дополнении и кнопки «Да» и «Нет».

Если дополнение достаточно объёмное, то установка может занять заметное время. В течение этого процесса, пользователь будет слышать периодические звуковые сигналы и видеть окно с текстом:

Пожалуйста, подождите пока идет процесс установки дополнения.

После установки или удаления какого-либо дополнения, требуется перезагрузить NVDA, чтобы изменения вступили в силу. Программа сообщает об этом в виде окна с текстом:

Была произведена установка или удаление дополнений. Для того, чтобы изменения вступили в силу, необходимо перезапустить NVDA. Хотите сделать это сейчас?

Кнопками «Да» и «Нет» пользователь может выбрать один из вариантов действия.

Несколько нюансов

Поскольку дополнения разрабатываются в отрыве от основного кода NVDA, то в них может отсутствовать локализация для каких-то языков, которые в основном дистрибутиве присутствуют. Также клавиатурные команды каких-то дополнений могут вступать в конфликт с уже имеющимися. Стандартные команды NVDA грамотные разработчики обычно всё-таки не трогают, но вполне возможна ситуация, когда одна и та же команда будет назначена в двух дополнениях. В этом случае пользователю надо либо удалить одно из дополнений, либо вручную переназначить конфликтующие команды.

Если какие-то модули были вручную установлены в директорию пользовательских конфигураций NVDA по пути «%appdata%\NVDA\», то они не будут отображаться в менеджере дополнений. Дополнения устанавливаются в директорию «%appdata%\NVDA\addons\» и помимо программных, также имеют некоторые служебные файлы. Однако неопытным пользователям не стоит пытаться осуществлять какие-либо манипуляции в данных директориях, а лучше использовать меню NVDA.

Предупреждение об использовании дополнений только из проверенных источников, которое выводится при установке, не является пустым звуком. Технически, действительно, вполне можно написать дополнение, которое будет выполнять вредоносные действия. Особо опасными такие дополнения становятся, если пользователь постоянно работает под учётной записью Администратора.

Каталоги дополнений

Ниже приводится список наиболее известных каталогов дополнений для NVDA, где выкладываются продукты различных разработчиков.



Распространение материалов сайта означает, что распространитель принял условия лицензионного соглашения.
Идея и реализация: © Владимир Довыденков и Анатолий Камынин,  2004-2024