Меня зовут Джейсон Братчер из Валрико, Флорида, США.
(Некоторые из вас знают меня по моему Mastodon ID @BlindHedgehogStew@DragonsCave.Space —
там я общаюсь с лучшими из DragonsCave (хотя я чаще делюсь контентом)).
Моя задача — тихо предотвращать произношение NVDA фраз вроде:
‘левый’ ‘правый’,
‘Верхняя’ ‘Нижняя’,
‘Нет предыдущего’ ‘Нет следующего’,
‘Нет содержащего объекта’ ‘Нет объектов внутри’.
Дополнение ChatKill было создано, чтобы заменить голосовые сообщения о границах объектного обзора NVDA на звуковые сигналы.
Звуковые сигналы работают следующим образом:
(Для всех сигналов ‘0’ обозначает беззвучный канал
(Это означает, что дальше двигаться нельзя)).
(Первые 4 сигнала по-прежнему объявляют символ/слово/строку на границе):
TONELEFT = (330, 65, 45, 0)
TONERIGHT = (330, 65, 0, 45)
TONEATTOP = (880, 65, 45, 45)
TONEATBOTTOM = (440, 65, 45, 45)
(Последние 4 сигнала следуют соглашению NVDA о том, что элемент, на котором вы находитесь, не объявляется, поэтому они будут беззвучными):
TONENOPREVIOUS = (330, 65, 45, 0)
TONENONEXT = (330, 65, 0, 45)
TONENOPARENT = (262, 60, 45, 45)
TONENOCHILD = (131, 60, 45, 45)
Теперь, когда это разъяснено, давайте перейдем к делу?
Теперь начните навигацию по объектам или перемещение курсора обзора с помощью расширенного NumPad (для ПК) или альтернативных команд (для ноутбуков).
Если всё работает правильно, вы услышите звуковые сигналы, обозначающие границы навигации при перемещении по объектам или курсору обзора.
Моя работа здесь завершена;
Вы можете отредактировать файл __init__.py, чтобы изменить числовые значения для тона, длительности, громкости левого и правого каналов,
если вам не подходит жесткое панорамирование.
Некоторые люди лучше воспринимают частичное панорамирование, чем полное (которое я изначально использовал для демонстрации концепции).
Пример:
TONELEFT = (220, 55, 42, 14)
TONERIGHT = (220, 55, 14, 42)
TONENOPREVIOUS = (220, 75, 42, 14)
TONENONEXT = (220, 75, 14, 42)
Эти настройки используют частичное панорамирование и немного более длинный сигнал для NVDA+NumPad4/6 (или эквивалента на ноутбуке),
чтобы обозначить отсутствие предыдущих/следующих объектов.
Это не решит проблему “зависания”, которая возникает, когда NVDA работает с некоторыми программами, чей код не оптимизирован должным образом.
В таких программах, если вы пытаетесь перейти к предыдущему или следующему объекту, уже находясь на границе, NVDA просто замолкает без каких-либо сообщений.
Правильно оптимизированные программы так не работают;
они обеспечивают быструю навигацию по объектам, особенно на плане питания “Максимальная производительность”!
В любом случае, надеюсь, вам понравится использовать это дополнение.
С наилучшими пожеланиями,
Джейсон А. Братчер
ImCoocoo@GMail.Com
@BlindHedgehogStew@DragonsCave.Space