Read Frog

Управление сайтами и правила

Чёрные/белые списки и JSON-правила для URL, selector, раскладки, порогов и CSS конкретного сайта.

ФункцияГдеНазначение
Управление сайтамиНастройки → ОбщиеРазрешает или блокирует всё расширение по хосту.
Правила сайтовНастройки → Правила сайтовМеняет разбор, раскладку, фильтры и CSS совпавших страниц.

Первое — политика запуска. Правила нужны, если расширение работает, но выбирает неверные узлы, ломает inline-текст, переводит код или требует CSS.

Хосты и URL patterns

Чёрный список запускает вне списка, белый — только внутри. example.com охватывает поддомены, но не пути и wildcard.

Правила игнорируют query string и поддерживают:

PatternСовпадение
github.comHTTP/HTTPS хоста
*.example.comкорневой домен и поддомены
docs.example.com/guides/*указанный путь
https://example.com/*только HTTPS
www.amazon.*хосты в разных TLD
javdb*.comтекст после javdb в хосте

Scheme: http, https или *; явные порты запрещены. Исключения задаются excludeMatches.

Приоритет и слияние

Сначала применяются все включённые встроенные правила, затем пользовательские. Встроенное можно выключить по ID.

  • Массивы selector проходят base, .add, .remove по порядку.
  • Для minCharacters/minWords побеждает последнее значение.
  • injectedCss и injectedCss.add объединяются.
  • Неверный pattern/selector отбрасывается с предупреждением.

Массивы не просто заменяются: .remove отменяет, .add расширяет.

Поля и безопасный пример

Нужны уникальный id и matches. Доступны excludeSelectors, includeSelectors, forceBlockSelectors, forceInlineSelectors, preserveTextSelectors, minCharacters, minWords, injectedCss.

[
  {
    "id": "example-docs",
    "description": "Translate article copy but leave navigation and code untouched.",
    "matches": ["docs.example.com/*"],
    "excludeSelectors": ["nav", "pre", "code", "[aria-label='Breadcrumb']"],
    "includeSelectors": ["main article"],
    "forceBlockSelectors": ["article p", "article li"],
    "preserveTextSelectors": [".product-name", ".command-name"],
    "minCharacters": 2,
    "minWords": 1,
    "injectedCss": ".read-frog-translated-content-wrapper { max-width: 100%; }"
  }
]

Начинайте с узкого хоста, сохраните и перезагрузите, затем расширяйте pattern. Используйте стабильные атрибуты вместо сгенерированных классов.

[
  {
    "id": "example-docs-adjustment",
    "matches": ["docs.example.com/*"],
    "excludeSelectors.add": [".sidebar-ad"],
    "excludeSelectors.remove": [".article-summary"],
    "forceInlineSelectors.add": [".term-with-tooltip"]
  }
]

Редактор проверяет JSON, schema, дубли ID, selector, pattern и размер. Лимиты: 200 правил, 65 536 символов JSON, 8192 для каждого CSS.

CSS внедряется на каждую совпавшую страницу. Сужайте pattern и не скрывайте элементы входа, безопасности или аккаунта.

On this page