Console Toolkit — это дополнение для NVDA, которое улучшает доступность консоли Windows, также известной как командная строка. Оно также хорошо работает в Windows PowerShell. Некоторые функции могут работать в альтернативных терминалах, таких как Cygwin, PuTTY и Windows Terminal, однако дополнение было тщательно протестировано только со стандартной консолью Windows. Пользователи SSH могут найти это дополнение особенно полезным.
Некоторые функции ранее были частью дополнения Tony's enhancements.
Установите из магазина дополнений.
Console Toolkit переназначает команду shift+numpad7 в консолях с UIA: вместо чтения первой строки во всем буфере теперь читается первая видимая строка в верхней части окна. Дважды нажмите shift+numpad7, чтобы вернуться к старому поведению и прочитать первую строку буфера.
Эта опция заставляет NVDA произносить новые строки сразу же, как только они появляются в выводе консоли, вместо постановки новых речевых команд в очередь. Например, если NVDA занята озвучиванием строки, появившейся на экране минуту назад, и появляется новая строка, эта опция отменит озвучивание старой строки и сразу же начнет произносить новую, обеспечивая таким образом более оперативную обратную связь о происходящем в окне консоли.
Воспроизводит низкотональный звуковой импульс при каждом обновлении текста в консоли.
Эта опция заставляет сочетание клавиш Control+V работать внутри ssh-сессий.
Примечание: эта функция является экспериментальной. Пожалуйста, внимательно прочитайте этот раздел и убедитесь, что вы понимаете, как она работает, прежде чем сообщать о проблемах.
Нажмите NVDA+E, чтобы идентифицировать текущее приглашение в окне консоли и отредактировать его в доступном окне «Редактирование приглашения». После редактирования вы можете нажать Escape, чтобы обновить текущую командную строку, или Enter, чтобы обновить и немедленно выполнить команду. Кроме того, вы можете нажать Alt+F4, чтобы закрыть окно редактирования приглашения без обновления командной строки.
Эта функция была протестирована в командной строке Windows cmd.exe, а также в оболочке bash через SSH-соединения, а также в WSL и Cygwin. Она также может работать в альтернативных оболочках Unix, но это не проверялось.
Вот как дополнение извлекает текущую команду:
End, а затем отправляет управляющий символ, который является редким символом Юникода, вряд ли используемым где-либо еще.Home и отправляет другой управляющий символ.Delete и Backspace.Enter или Escape, оно сначала стирает текущую строку в консоли. Это достигается одним из четырех методов, выбор которого можно настроить. В настоящее время поддерживаются четыре метода:Control+C: работает как в cmd.exe, так и в bash, но оставляет предыдущее приглашение видимым на экране; не работает в emacs; иногда ненадежен на медленных SSH-соединениях.Escape: работает только в cmd.exe.Control+A Control+K: работает в bash и emacs; не работает в cmd.exe.Backspace (рекомендуется): работает во всех средах; однако медленнее и может вызвать повреждение, если изменилась длина строки.Enter.Устранение неполадок:
Home, End, Delete и Backspace работают должным образом в вашей консоли.Примечание: эта функция является экспериментальной. Пожалуйста, внимательно прочитайте этот раздел и убедитесь, что вы понимаете, как она работает, прежде чем сообщать о проблемах.
Находясь в командной строке или в окне «Редактирование приглашения», нажмите Control+Enter, чтобы захватить вывод команды. Это дополнение способно захватывать большой вывод, который занимает несколько экранов, хотя, когда вывод больше 10 экранов, процесс захвата занимает значительное время для завершения. Дополнение будет воспроизводить длинный звуковой сигнал, который будет длиться до тех пор, пока дополнение захватывает вывод выполняющейся команды, или до истечения времени ожидания. Кроме того, вы можете нажать NVDA+E, чтобы прервать захват.
Когда в настройках NVDA включена функция «Использовать модель автоматизации пользовательского интерфейса (UIA) для доступа к консоли Windows, если доступно», вы можете переключаться на другие окна во время захвата. Однако, если эта опция отключена, то NVDA использует устаревший код консоли, который работает только тогда, когда консоль находится в фокусе, и поэтому переключение на любое другое окно приостановит захват.
Захват команды работает путем перенаправления вывода команды в программу less. Суффикс, добавляемый к командам по умолчанию: