Перейти к основному содержимому Главная страница каталога дополнений для NVDA от русскоязычного сообщества NVDA.RU.

Официальный русскоязычный каталог дополнений NVDA

Крупнейший каталог дополнений для программы экранного доступа NVDA, доступный в Интернете

Каталог дополнений от «🇷🇺 Русскоязычного сообщества NVDA.RU.»

BrowserNav (Навигация по обзору)

Автор:

Краткое описание

Дополнение BrowserNav предоставляет пользователям NVDA мощные навигационные команды в режиме обзора. Оно работает в веб-браузерах, а также в любых других приложениях, поддерживающих режим обзора NVDA, таких как документы Word и почтовые клиенты.
BrowserNav можно использовать для навигации по горизонтальному смещению от левого края экрана, по размеру шрифта или по стилю шрифта.
При навигации по горизонтальному смещению можно легко найти абзацы, выровненные по вертикали на странице.
В частности, вы можете нажать NVDA+Alt+Стрелка вниз или Стрелка вверх, чтобы перейти к следующему или предыдущему абзацу с таким же смещением.
Например, это может быть полезно при просмотре иерархических деревьев комментариев (например, на reddit.com), чтобы переходить между комментариями первого уровня и пропускать все комментарии более высокого уровня.
При навигации по размеру шрифта вы можете легко найти абзацы, написанные одинаковым размером шрифта или меньшим/большим размером шрифта.
Вы также можете ориентироваться по размеру шрифта с ограничением на тот же стиль шрифта.
Для переключения между этими вариантами используется ротор BrowserNav. В зависимости от настройки этого ротора, BrowserNav будет сигнализировать либо о горизонтальном смещении, либо о размере шрифта выбранного в данный момент элемента. Кроме того, BrowserNav будет издавать короткий звук при выполнении команд Быстрой навигации, чтобы показать, сколько текста было пропущено (эта функция доступна только в Google Chrome и Firefox).
BrowserNav работает в любом браузере, поддерживаемом NVDA. Хотя некоторые функции могут быть доступны не во всех браузерах. BrowserNav также работает в других приложениях, поддерживающих режим обзора NVDA, таких как документы Word и почтовые клиенты.
Весь функционал дополнения подробно описан в справочном руководстве.

⬇ Перейти к подробной справке 🔝 Назад к оглавлению

Основная информация

Название Версия Совместимость с API NVDA Последняя протестированная версия NVDA Минимальная версия NVDA Дата загрузки в каталог Размер Лицензия
browsernav 2.7.8 2026.1 2026.1 2026.1 25-02-2026 21:42:45 15782 Кб. GPL v2
🔝 Назад к оглавлению

Информация о локализации на русский язык

🔝 Назад к оглавлению

Скачать

BrowserNav-V.2.7.8.nvda-addon

⬇ Перейти к истории версий 🔝 Назад к оглавлению

Разделы

🔝 Назад к оглавлению

Справка

Подробнее

BrowserNav (Навигация по обзору)

Дополнение BrowserNav предоставляет пользователям NVDA мощные команды навигации в режиме обзора. Оно работает в веб-браузерах, а также в любых других приложениях, поддерживающих режим обзора NVDA, таких как документы Word и почтовые клиенты.

Загрузка

Пожалуйста, установите через магазин дополнений.

Использование в браузерах и других программах, поддерживающих режим обзора

Обратите внимание, что начиная с NVDA v2024.2, команды вертикальной навигации и навигации по элементам с одинаковым стилем теперь доступны в ядре NVDA. Предпочтительнее использовать встроенные команды. Для них не назначено никаких жестов по умолчанию, поэтому жесты должны быть назначены пользователем в диалоге «Жесты ввода».

BrowserNav можно использовать для навигации по горизонтальному отступу от левого края экрана, по размеру шрифта или по стилю шрифта.

Ротор BrowserNav используется для переключения между этими параметрами. В зависимости от настройки ротора BrowserNav будет звуковыми сигналами указывать либо горизонтальный отступ, либо размер шрифта текущего выбранного элемента. Кроме того, BrowserNav будет издавать треск при командах быстрой навигации, чтобы указать, сколько текста было пропущено (эта функция доступна только в Google Chrome и Firefox).

BrowserNav работает в любом браузере, поддерживаемом NVDA. Хотя некоторые функции могут быть недоступны во всех браузерах. BrowserNav также работает в других приложениях, поддерживающих режим обзора NVDA, таких как документы Word и почтовые клиенты.

Клавиши:

Закладки быстрого перехода

Закладки быстрого перехода BrowserNav — это мощный инструмент, позволяющий перемещаться по веб-страницам и автоматизировать некоторые повторяющиеся действия.

Клавиши для работы с закладками

Вы также можете настроить пользовательские клавиши для большинства типов закладок (кроме закладок пропуска беспорядка, иерархических и закладок с числовыми скриптами).

Сайты

Первое, что вам нужно будет настроить, это сайт, на котором вы хотите создавать закладки. В большинстве случаев вы захотите указать тип соответствия как «Соответствие домену» или «Соответствие домену и его поддоменам». Чтобы проиллюстрировать последний вариант, вы можете указать:

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

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

Типы закладок

После того как вы настроили определение сайта, вы можете приступить к созданию на нём закладок.

BrowserNav поддерживает несколько типов закладок:

Создание новой закладки

После того как вы настроили сайт, проще всего создать новую закладку, перейдя к нужному абзацу в документе, нажав NVDA+J, чтобы вызвать контекстное меню закладок, и выбрав «Закладки» > «Создать новую закладку для сайта...»

Откроется диалог настройки закладки. Теперь вы можете настроить закладку. Вы можете изменить способ сопоставления текста (например, сопоставление строки или регулярное выражение).

Другие параметры в этом диалоге:

Расширенные параметры сайта

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

Скриптинг

Начиная с BrowserNav v2.5, вы можете настраивать свои закладки с помощью скриптов на Python. Скриптинг можно использовать для двух целей:

  1. Для улучшения алгоритма сопоставления там, где существующих параметров сопоставления недостаточно. Это относится к закладкам быстрого перехода, быстрого озвучивания, быстрого щелчка, иерархическим закладкам и закладкам пропуска беспорядка.
  2. Для выполнения произвольного кода Python с целью автоматизации определенных действий на веб-страницах. Это можно сделать с помощью закладок-скриптов или числовых скриптов.

API скриптов

В вашем скрипте вам доступны следующие переменные:

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

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

Вам также разрешено импортировать любые модули и писать скрипты общего назначения.

Вы можете использовать оператор print() для отладки вашего скрипта: вывод будет направлен в журнал NVDA.

Примеры скриптов

  1. Этот скрипт проверяет, что текущий абзац является ссылкой и что текст предыдущего заголовка 5-го уровня начинается с текста текущего абзаца:

     try:
         if controlTypes.Role.LINK in p.roles and p.previousHeading5.textInfo.text.startswith(p.text):
             print(f"pp5 {p.previousHeading5.textInfo.text}")
             return True
     except NotFoundError:
         return None
  2. Этот скрипт не выполняет сопоставление, а активирует последнее поле редактирования на странице:

     p.end.previous.previousEdit.activate()
  3. Этот скрипт находит имя пользователя, которое может быть на один или два абзаца вперед; затем он находит начало комментария, анализируя размер шрифта; затем он находит конец комментария, ища текст «Reply». Затем он сопоставляет все тело комментария и добавляет имя пользователя, которое будет озвучено перед сопоставленным текстом:

     user = p.next
     if user.text == "downvote":
         user = user.next
     try:
         username = user.text.split()[0]
     except IndexError:
         username = '?'
     pp = p
     begin = None
     for i in range(5):
         fs = pp.attributes.get(ParagraphAttribute.FONT_SIZE, [])
         #print(f"i={i} fs={fs}")
         if '9_pt' in fs:
             begin = pp
             break
         pp = pp.next
     else:
         return
     end = begin
     while end.text != 'reply':
         end = end.next
     match(textInfoRange(begin, end), username)
  4. Этот скрипт является генератором, что означает, что то, что он выдает, будет использоваться как время ожидания перед выполнением следующей строки. Этот скрипт будет выполняться в фоновом потоке неблокирующим образом. Этот скрипт выполняет серию действий:

    • Находит кнопку с заданным именем и нажимает её.
    • Входит в открывшийся диалог: p.home.nextEmbeddedObject.activate()
    • Получает вновь сфокусированный элемент внутри этого диалога: d = getFocusParagraph()
    • Находит и устанавливает флажок в этом диалоге.
    • Находит другую кнопку в этом окне диалога по имени и нажимает её. Эти шаги повторяются 20 раз с помощью функции retry. Затем после паузы в 500 мс находит кнопку «Run Query» и нажимает её.
      
      def waitForDialogAndClickCheckbox():
        try:
            p.home.find("Link Last Used").activate()
            p.home.nextEmbeddedObject.activate()
        except NotFoundError:
            pass
        d = getFocusParagraph()
        c = d.home.nextCheckBox
        if controlTypes.State.CHECKED not in c.obj.states:
            c.activate() 
        d.home.find("Link QCPR Project").activate()

    yield from retry(waitForDialogAndClickCheckbox, count=20) yield 500 yield from retry(lambda: p.home.find("Run Query").activate(), count=10)

  5. Это числовой скрипт, поскольку он принимает level в качестве входной переменной. Он находит level-е поле редактирования от начала страницы (или от конца, если level отрицательный) и вызывает для него script_editJupyter.

     if level > 0:
         p = p.home
         for i in range(level):
             p = Paragraph(p.nextEdit.textInfo)
     elif level <= 0:
         level = 1-level
         p = p.end.previous
         tones.beep(500, 50)
         for i in range(level):
             p = Paragraph(p.previousEdit.textInfo)
         else:
             tones.beep(500, 50)
     p.textInfo.obj.currentFocusableNVDAObject = p.textInfo.focusableNVDAObjectAtStart
     p.textInfo.obj.script_editJupyter(None)

    Настройка

Определения закладок хранятся в каталоге конфигурации NVDA в файле browserNavRules.json. Вы можете редактировать этот файл вручную или поделиться им с кем-либо.

Каталог конфигурации NVDA можно найти, открыв меню «Пуск» и введя: «Открыть каталог пользовательской конфигурации NVDA».

BrowserNav поставляется с файлом конфигурации по умолчанию, содержащим примеры закладок.

Редактирование полу-доступных полей редактирования

Многие современные веб-приложения, в частности Jupyter и другие, используют поля редактирования, которые не совсем доступны: например, они выглядят пустыми, но вы можете копировать текст в них и из них с помощью клавиш Control+A, Control+C и Control+V.

BrowserNav предлагает экспериментальную функцию для редактирования этих полей более удобным способом. Чтобы использовать её:

  1. Найдите поле редактирования в окне браузера.
  2. Нажмите NVDA+E.
  3. Появится новое окно с содержимым этого поля редактирования.
  4. Отредактируйте содержимое этого поля в данном окне.
  5. Когда закончите, вы можете нажать Escape, чтобы закрыть доступное окно редактирования и обновить поле редактирования на веб-странице.
  6. Альтернативно, вы можете нажать Control+Enter, Shift+Enter или Alt+Enter. Это закроет окно редактирования, обновит поле и передаст нажатие клавиш веб-приложению.
  7. Чтобы закрыть окно редактирования без сохранения изменений, нажмите Alt+F4.
  8. В любой момент, если содержимое ранее отредактированного текста будет потеряно, нажмите NVDA+Control+E, чтобы скопировать его в буфер обмена.

Примечания:

Исходный код

Исходный код доступен по адресу: http://github.com/mltony/nvda-indent-nav.

Перевод

🔝 Назад к оглавлению

История версий

История версий
Версия файлаТестируемая версия NVDAМинимальная версия NVDAРазмер файла (КБ)Ссылка на загрузку
2.7.82026.12026.115782BrowserNav-V.2.7.8.nvda-addon
2.7.72026.12026.115784BrowserNav-V.2.7.7.nvda-addon
2.7.62025.12024.1.023338BrowserNav-V.2.7.6.nvda-addon
2.7.52024.1.02024.1.023338BrowserNav-V.2.7.5.nvda-addon
2.7.42024.1.02024.1.023338BrowserNav-V.2.7.4.nvda-addon
2.7.32024.1.02024.1.023327BrowserNav-V.2.7.3.nvda-addon
2.7.22024.1.02024.1.023327BrowserNav-V.2.7.2.nvda-addon
2.7.12024.1.02024.1.023327BrowserNav-V.2.7.1.nvda-addon
2.7.02024.1.02024.1.023327BrowserNav-V.2.7.0.nvda-addon
2.6.42024.1.02024.1.023322BrowserNav-V.2.6.4.nvda-addon
2.6.32024.1.02024.1.023322BrowserNav-V.2.6.3.nvda-addon
2.6.22024.1.02024.1.023322BrowserNav-V.2.6.2.nvda-addon
2.62024.1.02024.1.023319BrowserNav-V.2.6.nvda-addon
2.52023.1.02019.3.05594BrowserNav-V.2.5.nvda-addon
2.42023.4.02019.3.05594BrowserNav-V.2.4.nvda-addon
2.32022.1.02019.3.0113BrowserNav-V.2.3.nvda-addon
2.22022.1.02019.3.0112BrowserNav-V.2.2.nvda-addon
2.12022.1.02019.3.0112BrowserNav-V.2.1.nvda-addon
2.02022.1.02019.3.0112BrowserNav-V.2.0.nvda-addon
1.92019.3.02019.3.039BrowserNav-V.1.9.nvda-addon
1.152021.1.02019.3.085BrowserNav-V.1.15.nvda-addon
1.132021.1.02019.3.055BrowserNav-V.1.13.nvda-addon
1.122020.3.02019.3.069BrowserNav-V.1.12.nvda-addon
1.112019.3.02019.3.067BrowserNav-V.1.11.nvda-addon
1.102019.3.02019.3.044BrowserNav-V.1.10.nvda-addon
1.12019.1.02018.1.038BrowserNav-V.1.1.nvda-addon
🔝 Назад к оглавлению