-
-
Notifications
You must be signed in to change notification settings - Fork 114
Compatibility Matrix
Rémi edited this page Jun 8, 2019
·
13 revisions
| Feature | Supported | Note |
|---|---|---|
*, wildcard |
✓ | uBlockOrigin's Wiki |
^, separator |
✓ | match any separator or EOL: [^\w\d_.%-]|$
|
@@filter, exceptions |
✓ | |
|filter, left anchor |
✓ | match left of URL |
filter|, right anchor |
✓ | match right of URL |
||filter, hostname anchor |
✓ | match hostname of URL |
| RegExp | ✓ | |
| Pre-parsing directives | uBlockOrigin' Wiki | |
| Type | Supported | Note |
$~type (negation) |
✓ | |
$image |
✓ | |
$media |
✓ | |
$object |
✓ | |
$object-subrequest |
✓ | |
$other |
✓ | |
$ping |
✓ | |
$beacon |
✓ | |
$script |
✓ | |
$stylesheet |
✓ | |
$css |
✓ | alias for stylesheet
|
$subdocument |
✓ | |
$frame |
✓ | alias for subdocument
|
$xmlhttprequest |
✓ | |
$xhr |
✓ | alias for xmlhttprequest
|
$font |
✓ | |
$websocket |
✓ | |
$webrtc |
✗ | |
$popup |
AdGuard's KB | |
| Option | Supported | Note |
$domain |
✓ |
|-separated list of domains or hostnames |
$~domain |
✓ | negated domains or hostnames |
$badfilter |
✓ | uBlockOrigin' Wiki |
$important |
✓1 | uBlockOrigin' Wiki, AdGuard KB |
$third-party |
✓ | only apply yo third-party resources |
$3p |
✓ | alias for third-party
|
$first-party |
✓ | alias for ~third-party
|
$1p |
✓ | alias for first-party
|
$redirect |
✓2 | uBlockOrigin's Wiki |
$generichide |
✓ | |
$elemhide |
✓ | using uBlockOrigin's semantics |
$csp |
✓3 | AdGuard KB |
$match-case |
✗ | all filters are considered case insensitive |
$document |
✓ | |
$doc |
✓ | alias for document
|
$genericblock |
✗ | will not be supported |
$collapse |
||
$content |
AdGuard KB | |
$jsinject |
AdGuard KB | |
$urlblock |
AdGuard KB | |
$extension |
AdGuard KB | |
$empty |
AdGuard KB | |
$mp4 |
AdGuard KB | |
$replace |
AdGuard KB |
[1] Missing is proper handling of exceptions with $important flag but there is currently no such filter in use in popular lists.
[2] Special none value is yet to be implemented and strict validation rules are not enforced.
[3] Missing strict validation of accepted CSP values.
| Feature | Supported | Note |
|---|---|---|
## selector |
✓ | |
#@# exception |
✓ | |
hostnames |
✓ | |
~hostnames (negation) |
✓ | |
entities |
✓ | uBlockOrigin's Wiki |
~entities (negation) |
✓ | uBlockOrigin's Wiki |
:style |
✓ | uBlockOrigin's Wiki |
script:inject(...) |
✓ | uBlockOrigin's Wiki |
+js(...) |
✓ | alias for script:inject(...)
|
| Procedural filters | uBlockOrigin's Wiki, AgGuard's KB | |
-abp-contains |
https://kb.adguard.com/en/general/how-to-create-your-own-ad-filters#cosmetic-css-rules-syntax-1 | |
-abp-has |
||
-abp-properties |
||
:xpath(...) |
||
:contains(...) |
||
:has(...) |
||
:has-text(...) |
||
:if(...) |
||
:if-not(...) |
||
:properties(...) |
||
:matches-css(...) |
||
:matches-css-before(...) |
||
:matches-css-after(...) |
As of April 2019 the following proportion of all filters are supported:
- network = 96%
- cosmetic = 99%
As a point of comparison, here are the same numbers for other blockers:
uBlock Origin:
- network = 99%
- cosmetic = 100%
AdblockPlus:
- network = 98%
- cosmetic = 98%
Brave:
- network = 55%
- cosmetic = ? (currently cosmetic filters are not applied)