Отправляет email-рассылки с помощью сервиса Sendsay

[TC] Отключение клавиш джавс в отдельных приложениях

Здравствуйте, industry.
Задача такая:
нужно отключить клавиши навигации по табьлицам, такие как альт контрал
влево, вправо, вниз, вверх и прочие. Не суть.
Как это сделать для конкретного приложения? Думаю, не важно, для
какого именно.
Приходится часто нажимать определённые клавиши, а они перебиваются
командами джавс. Мне это в определённом приложении не нужно, вернее,
мешает.
Подскажите, будьте добры.
Спасибо.

Ответить   Tue, 23 Jun 2020 17:55:25 +0300 (#3653854)

 

Ответы:

Здравствуйте, Серый!

В письме "[TC] Отключение клавиш джавс в отдельных приложениях" от Tue, 23
Jun 2020 17:55:25 +0300.
Вы писали:

Не так давно Никита давал пояснение по аналогичной проблеме, вот его
письмо:

Откройте приложение, нажмите Insert+0 и вставьте туда следующие скрипты,
после чего скомпилируйте по CTRL+S.
Вот скрипты для прямой обработки этих команд:

Script NextCell ()
SayCurrentScriptKeyLabel ()
TypeCurrentScriptKey ()
EndScript

Script PriorCell ()
SayCurrentScriptKeyLabel ()
TypeCurrentScriptKey ()
EndScript

Script DownCell ()
SayCurrentScriptKeyLabel ()
TypeCurrentScriptKey ()
EndScript

Script UpCell ()
SayCurrentScriptKeyLabel ()
TypeCurrentScriptKey ()
EndScript

Ответить   Tue, 23 Jun 2020 21:55:00 +0600 (#3653855)

 

Здравствуйте, Серый.

Есть два основных подхода: отвязывание команды от скрипта и переопределение
стандартного скрипта.
Например, вы хотите убрать обработку CTRL+Alt+Вверх в приложении Блокнот.
Для отвязки команды от скрипта надо в директории пользовательских настроек
JAWS создать файл notepad.jkm с таким содержанием:

[Common Keys]
Alt+Control+UpArrow=

Этим вы скажите JAWS, что в приложении Блокнот команда CTRL+Alt+Вверх
никакого скрипта не вызывает.

Для переопределения стандартного для этой команды скрипта надо сначала
выяснить, какой вообще там скрипт.
Для этого нажимаете Insert+1, а затем трижды быстро CTRL+Alt+Вверх.
Затем можно нажать Insert+1, Insert+Пробел и потом H, чтобы из истории
речевых сообщений скопировать название скрипта.
Для команды CTRL+Alt+Вверх это скрипт UpCell.
После этого в Блокноте нажимаете Insert+0 и в Диспетчере скриптов вставляете
переопределяющий скрипт-пустышку:

Script UpCell ()
SayCurrentScriptKeyLabel ()
TypeCurrentScriptKey ()
EndScript

Ну и компилируете по CTRL+S.

Разумеется, первый способ представляется более простым, но есть ситуации,
когда второй окажется удобнее.

Во-первых, если просто оторвать команду от скрипта первым способом, то JAWS
может начать проговаривать нажимаемую комбинацию, что не всегда удобно,
например, если это команда изменения громкости в плеере, которая не должна
мешать слушать воспроизводимый контент.
Здесь надо использовать именно второй способ, правда в скрипте-пустышке
нужно ещё удалить строку
SayCurrentScriptKeyLabel ()
Тогда команда будет нажиматься без лишней болтовни JAWS.

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

Script UpCell ()
; Проверяем условие
If %condition% Then
; Обрабатываем как простое нажатие
SayCurrentScriptKeyLabel ()
TypeCurrentScriptKey ()
Else
; Обрабатываем через стандартный скрипт JAWS
PerformScript UpCell ()
EndIf
EndScript

Надеюсь, вы сможете обработать эту информацию под свой конкретный случай.
Успехов. Никита.

Ответить   Tue, 23 Jun 2020 22:26:03 +0300 (#3653865)