GreaseSpot page on metadata blocks говорит, что эти два очень похожи, но @match
"устанавливает более строгие правила в отношении символа *
". Затем GreaseSpot переходит к teach с использованием @include
, но примеры Chrome, такие как this, как правило, используют @match
и указывают, что @include
поддерживается только в целях совместимости; @match
.В чем разница между @include и @match в пользовательских сценариях?
Apparently, @include google.*
может работать на google.evil.com, а @match google.*
не может.
Этот пример недостаточен, чтобы действительно увидеть, как подстановочные знаки ведут себя по-разному между этими двумя, и более подробные объяснения запрашиваются здесь.
Новые сценарии GreaseMonkey (Firefox) используют @include
по умолчанию, а новые скрипты TamperMonkey (например, Chrome) используют по умолчанию @match
.
В чем же разница между этими двумя?
Например, как каждый из них управляет шаблонами?
Существуют ли различия в кросс-браузерной совместимости?
Какие причины у кого-то есть для выбора одного над другим?
Просто используйте, как и все остальные. Я делал это много лет и не имел никаких проблем. – MortenMoulder