<- Фон ->
У меня есть альтернативная, менее навязчивая идея для вас здесь (по крайней мере, если вы используете блокировщик рекламы, как многие из нас для нашей собственной здравомыслия / безопасности). Мне нравится как можно больше использовать существующие расширения / сценарии, чтобы избежать переполнения всего расширения только для одной функции (наихудший сценарий), поэтому это решение работает по этому принципу.
Adblock и его варианты / преемники (uBlock - мое любимое оружие) имеют возможность блокировать элементы веб-страницы, включая элементы <link>
, которые используются для автоматического обнаружения описаний OpenSearch (OSD), файлов XML, содержащих информацию который разрешает автоматическое добавление поисковых систем и вызывает у нас эти головные боли. Я говорю "разрешает", потому что это вряд ли является обязательным, поскольку, как показало мое исследование, Firefox просто считывает эту информацию и делает ее доступной для простого добавления в раскрывающемся списке "Поисковые системы", а не для автоматического добавления, как это делает Chrome.
Использование этой функции описано в спецификациях Opensearch в нескольких местах:
http://www.opensearch.org/Specifications/OpenSearch/1.1#Autodiscovery_in_RSS.2FAtom (игнорируйте специфические тонкости этого раздела для наших целей, так как это всего лишь пример его использования)
<- Решение ->
Поскольку в нем говорится, что описания OpenSearch (OSD) имеют уникальный тип, мы можем отфильтровать их с помощью следующего правила AdblockPlus/uBlock:
##link[type="application/opensearchdescription+xml"]
Я проверил это, и правило показывает правильное соответствие на моих тестовых сайтах (filehippo.com и т.д.), И поисковые системы больше не добавляют автоматически, поэтому я считаю, что это полное решение.
Небольшая заметка об истории, которую я нашел за этим: инженеры Chromium несколько раз отмечали этот "WontFix" несколько раз (опция / флаг отключения опытного пользователя запрашивалась несколько раз), заявляя, что это считается нишевой проблемой, так как Эта функция "в целом полезна", их позиция заключается в том, что нишевые проблемы должны решаться с помощью расширений или сторонних скриптов, а не с помощью разработчиков, добавляющих бесчисленные флаги и тому подобное для удовлетворения всех прихотей, поэтому в основном то, что мы здесь делаем, это просто в соответствии с их предпочтениями и делает его красивым и управляемым.
Удачи! Если кто-то попробует это, сообщите нам / мне, как это работает!