Навігація за відступами (IndentNav) для NVDA

Цей додаток дозволяє користувачам NVDA здійснювати навігацію за рівнем відступів рядків.
Під час редагування вихідного коду багатьма мовами програмування він дозволяє переходити між рядками одного рівня відступу, а також швидко знаходити рядки з більшим чи меншим рівнем відступу.

Зверніть увагу, що команди навігації деревами були винесені в окремий додаток TreeNav.

Завантаження

Будь ласка, встановлюйте з магазину додатків NVDA.

Примітка щодо сумісності з VSCode

Вбудована підтримка доступності у VSCode дуже обмежена: станом на 2024 рік через API доступності відображається лише 500 рядків коду, через що «Навігація за відступами» працює у VSCode некоректно.

За замовчуванням «Навігація за відступами» у VSCode не працює, і при спробі його використання вам буде запропоновано два варіанти:

Проблеми сумісності

«Навігація за відступами» має відомі проблеми сумісності з додатком Character Information.
Наразі неможливо одночасно налаштувати «Навігацію за відступами» і використання курсора перегляду на цифровій клавіатурі, поки цей додаток активний. Будь ласка, або видаліть цей додаток, або використовуйте альтернативну розкладку клавіш у «Навігації за відступами».

Розкладки клавіш

«Навігація за відступами» пропонує 3 вбудовані розкладки клавіш:

Розкладку клавіш можна вибрати в налаштуваннях «Навігації за відступами».

Клавіатурні команди

Дія Ноутбук/Застаріла Alt+цифр. блок Цифр. блок Опис
Увімкнути/вимкнути «Навігацію за відступами» alt+numLock alt+numLock alt+numLock Корисно, коли й NVDA, і команди курсора перегляду призначені на цифрову клавіатуру.
Перейти до попереднього/наступного сусіда NVDA+Alt+стрілка вгору/вниз alt+numPad8/numPad2 numPad8/numPad2 «Сусід» — це рядок із тим самим рівнем відступу.
Команда не виходить за межі поточного блоку коду.
Перейти до попереднього/наступного сусіда, пропускаючи «сміття» control+alt+numPad8/numPad2 control+numPad8/numPad2 Регулярний вираз для визначення «сміття» можна задати в налаштуваннях.
Перейти до першого/останнього сусіда NVDA+Alt+Shift+стрілка вгору/вниз alt+numPad4/numPad6 numPad4/numPad6 Команда не виходить за межі поточного блоку коду.
Перейти до попереднього/наступного сусіда (можливо поза межами блоку) NVDA+Control+Alt+стрілка вгору/вниз control+alt+numPad4/numPad6 control+numPad4/numPad6 Дозволяє перейти до сусіда в іншому блоці.
Перейти до попереднього/наступного батьківського рядка NVDA+Alt+стрілка вліво,
NVDA+Control+Alt+стрілка вліво
alt+numPad7/numPad1 numPad7/numPad1 «Батьківський» — це рядок із меншим рівнем відступу.
Перейти до попереднього/наступного дочірнього рядка NVDA+Alt+стрілка вправо,
NVDA+Control+Alt+стрілка вправо
alt+numPad9/numPad3 numPad9/numPad3 «Дочірній» — рядок із більшим рівнем відступу.
Команда не виходить за межі поточного блоку коду.
Виділити поточний блок NVDA+Control+I control+alt+numPad7 control+numPad7 Виділяє поточний рядок і всі наступні з більшим відступом.
Кілька натискань дозволяють виділити кілька блоків.
Виділити поточний блок і всі наступні на тому ж рівні відступу NVDA+Alt+I control+alt+numPad9 control+numPad9 Виділяє поточний рядок і всі наступні з таким самим або більшим відступом.
Вставка з корекцією відступів NVDA+V NVDA+V NVDA+V Дозволяє вставити блок коду в місце з іншим рівнем відступу — відступи будуть відкориговані.
Назад/вперед в історії control+alt+numPad1/numPad3 control+numPad1/numPad3 «Навігація за відступами» зберігає історію відвіданих рядків.
Озвучити поточний рядок alt+numPad5 numPad5 Це фактично команда курсора перегляду, переназначена для зручності.
Озвучити батьківський рядок NVDA+I

Інші можливості

Закладки QuickFind

«Навігація за відступами» дозволяє налаштувати будь-яку кількість закладок, до яких легко переходити.
Закладка визначається регулярним виразом і власною комбінацією клавіш для переходу.
Натиснувши shift+ комбінацію клавіш, можна знайти попереднє входження.

Для кожної закладки можна задати «батьківську». У такому разі під час пошуку дочірньої закладки курсор ніколи не вийде за межі батьківської.
Наприклад, можна позначити визначення класу як батьківську закладку для визначення функцій — тоді пошук функцій не виходитиме за межі поточного класу.

Потріскування (Crackling)

Під час переходу через велику кількість рядків «Навігація за відступами» намагається швидко відтворювати рівні відступів як тони пропущених рядків.
Ця функція працює лише тоді, коли в налаштуваннях NVDA увімкнено «озвучувати відступи як тони».
Гучність потріскування можна відрегулювати або вимкнути в налаштуваннях «Навігації за відступами».

Вихідний код

Вихідний код доступний за посиланням: http://github.com/mltony/nvda-indent-nav.