EarconsAndSpeechRules (Звуки и правила произношения) – это дополнение к NVDA, позволяющее воспроизводить звуки (earcons), а также другие эффекты речи, такие как изменения просодии.
Ранее это дополнение называлось Phonetic punctuation «Фонетическая пунктуация».
Это дополнение также включает почти все функции дополнения Unspoken, разработка которого, похоже, была заброшена к 2024 году.
Вы можете послушать образец речевого вывода с фонетической пунктуацией здесь (аудио длительностью 10 секунд):
https://soundcloud.com/user-977282820/nvda-phonetic-punctuation-demo
Пожалуйста, установите последнюю версию из магазина дополнений NVDA.
earconsAndSpeechRules.json в каталоге пользовательской конфигурации NVDA.Правила могут быть настроены в настройках NVDA, в разделе «Звуки и правила произношения».
Правила текста срабатывают при совпадении настраиваемого регулярного выражения в речи NVDA. Когда правило срабатывает, вы можете либо заменить совпавший текст звуком (earcon), либо изменить просодию (например, высоту голоса) для этого совпадения.
Кроме того, вы можете указать текстовое правило для срабатывания только:
Правила текста выполняются в том порядке, в котором они появляются в диалоговом окне настройки. Если ваше правило не работает, попробуйте переместить его в верхнюю позицию. Например, если вы пытаетесь сопоставить IP-адрес, содержащий точки, проверьте, были ли эти точки заменены предыдущим правилом, что сделало бы невозможным сопоставление IP-адреса.
Правила текста не срабатывают при перемещении по символам – см. следующий раздел.
Правила символов позволяют вам заменить описание символа в режиме набора текста (такое как «пробел» или «Табуляция») на звук (earcon). Эти правила не влияют на речь NVDA при чтении текста, за исключением случаев, когда символы произносятся по буквам.
Роли, такие как «Редактор» или «Кнопка», являются внутренними свойствами объектов NVDA, описывающими их тип. Вы можете настроить воспроизведение звука (earcon) для каждой роли вместо произнесения названия роли.
Эта функция ранее была частью дополнения Unspoken, разработка которого, похоже, была заброшена к 2024 году.
Состояния, такие как «Отмечено» («Checked»), и отрицательные состояния, такие как «Не отмечено» («Unchecked»), также могут быть заменены звуками (earcons).
Вы также можете подавлять объявление некоторых состояний, которые не так важны. Чтобы сделать это, отметьте флажок «Подавить это состояние в нескоротном режиме». Затем вы можете активизировать краткое сообщение о состоянии, нажав NVDA+Alt+[ (левая квадратная скобка; клавиша сразу справа от буквы P на английской клавиатуре).
Чтобы лучше проиллюстрировать краткий отчет о состоянии, откройте http://google.com и сравните, как главный редактируемый элемент сообщается в подробном и кратком режимах.
Некоторые атрибуты форматирования могут выражаться либо как просодия, либо как звук (earcon). В настоящее время мы поддерживаем:
Полужирный шрифт и курсив
Подчеркивание и зачеркивание
Выделенный текст
Заголовок
Мы поддерживаем два варианта:
В эту категорию входят некоторые несвязанные фразы, произносимые NVDA, которые также могут быть заменены звуками (earcons):
Звуки и правила произношения используют продвинутые команды речи NVDA, и они не всегда хорошо поддерживаются всеми синтезаторами речи.
Синтезаторы, известные своей хорошей работой со Звуками и правилами произношения:
Синтезаторы, известные проблемами со Звуками и правилами произношения:
Вы можете отключить Звуки и правила произношения в определенных приложениях. Это список приложений, разделённых запятыми, в которых будут отключены Звуки и правила произношения.
Если вы не уверены в названии вашего приложения, переключитесь на него, нажмите NVDA+Control+Z, чтобы открыть консоль NVDA, и введите: “focus.appModule.appName” без кавычек, чтобы получить название текущего приложения.
Пример списка: slack, discord
speech.getTextInfoSpeech() для каждого фрагмента между заголовками. Взаимодействие вычисления сообщений “вне контейнера” с фактом того, что мы хирургическим путем удаляем заголовки из полей textInfo, создает огромную сложность.sayAll.
sayAll некоторые команды изменения высоты звука перемешиваются. Я до конца не понимаю первопричину этого. Но это вызывает переполнение буфера ниже по потоку. На данный момент я считаю эту проблему низкой приоритетной.if not extraDetail: внутри функции def getTextInfoSpeech, которая заставляет повторять сообщение о ссылке каждый раз, но не в режиме extraDetail (который активируется при навигации по словам или символам). Я не понимаю, почему эта оговорка там есть, но слишком сложно обойти её без создания дополнительных побочных эффектов.Примечание:
Слово earcons является заимствованием из английского языка и представляет собой сочетание двух слов: ear (ухо) и icons (иконки). Оно обозначает короткие звуковые сигналы, используемые для передачи информации через слуховой канал. Прямого перевода на русский язык нет, но иногда его передают как “звуковая иконка” или “звуковые метки”. Однако чаще всего это слово оставляют без перевода, поскольку оно уже стало устоявшимся термином в русскоязычных технических текстах.