diff --git a/AnnoyancesFilter/sections/annoyances.txt b/AnnoyancesFilter/sections/annoyances.txt index 0e2bc10803f..0a2e1699db6 100644 --- a/AnnoyancesFilter/sections/annoyances.txt +++ b/AnnoyancesFilter/sections/annoyances.txt @@ -1,4 +1,10 @@ ! +! This section contains the list of the rules against annoyances that are not falling under existing categories. Rules should be domain-specific. +! +! Good: example.org##.annoyance (it's an annoyance that not falling under existing categories) +! Bad: ||example.org^$third-party (it's an adserver and should be in adservers.txt) +! +! !######### Annoying elements (not ads) ! ! Test for youtube. Look for feedback diff --git a/AnnoyancesFilter/sections/antiadblock.txt b/AnnoyancesFilter/sections/antiadblock.txt index 838f6bbef36..8524f59f359 100644 --- a/AnnoyancesFilter/sections/antiadblock.txt +++ b/AnnoyancesFilter/sections/antiadblock.txt @@ -1,6 +1,12 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts -! which does not affect the functioning of site +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts that do not affect the functioning of the website. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) +! ! ! ! Important: don't block paywalls diff --git a/AnnoyancesFilter/sections/cookies_general.txt b/AnnoyancesFilter/sections/cookies_general.txt index 9f649232b9d..8811eaac57d 100644 --- a/AnnoyancesFilter/sections/cookies_general.txt +++ b/AnnoyancesFilter/sections/cookies_general.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of generic rules that block cookie notifications. +! +! Good: ###cookie +! Bad: example.org###cookie (should be in cookies_specific.txt) +! +! !####################################################### !######### General element hiding rules ################ !####################################################### diff --git a/AnnoyancesFilter/sections/cookies_specific.txt b/AnnoyancesFilter/sections/cookies_specific.txt index 8ab0c5442fd..8578e163d9f 100644 --- a/AnnoyancesFilter/sections/cookies_specific.txt +++ b/AnnoyancesFilter/sections/cookies_specific.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of domain-specific rules that block cookie notifications. +! +! Good: example.org###cookie +! Bad: ###cookie (should be in cookies_general.txt) +! +! !####################################################### !######### Rules for specific sites #################### !####################################################### diff --git a/AnnoyancesFilter/sections/cookies_whitelist.txt b/AnnoyancesFilter/sections/cookies_whitelist.txt index 4311983799c..cd2ebe65e01 100644 --- a/AnnoyancesFilter/sections/cookies_whitelist.txt +++ b/AnnoyancesFilter/sections/cookies_whitelist.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of rules that fix incorrect blocking of cookie notifications by generic rules. Rules should be domain-specific. +! +! Good: example.org#@##cookie +! Bad: example.org###cookie (should be in cookies_specific.txt) +! +! !####################################################### !######### White list. Fixing filtering errors ######### !####################################################### diff --git a/AnnoyancesFilter/sections/css_extended.txt b/AnnoyancesFilter/sections/css_extended.txt index a7a12f6318c..0d936993f88 100644 --- a/AnnoyancesFilter/sections/css_extended.txt +++ b/AnnoyancesFilter/sections/css_extended.txt @@ -1,5 +1,11 @@ ! -! Extended CSS rules +! Obsolete. Do not add new rules. +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) +! ! !----------------------------------! !--------- REMAINS ----------------! diff --git a/AnnoyancesFilter/sections/low-attendance.txt b/AnnoyancesFilter/sections/low-attendance.txt index fcb831ac340..62f08a1b8f9 100644 --- a/AnnoyancesFilter/sections/low-attendance.txt +++ b/AnnoyancesFilter/sections/low-attendance.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of rules that block ads on not-popular websites. Rules should be domain-specific. +! +! Good: example.org##.ad +! Bad: ##.ad (should be in general_url.txt) +! +! !####################################################### !######### Low-attendance sites ######################## !######### less then 30k visits/month ################## diff --git a/AnnoyancesFilter/sections/mobile-app.txt b/AnnoyancesFilter/sections/mobile-app.txt index 53698a274b4..79557418573 100644 --- a/AnnoyancesFilter/sections/mobile-app.txt +++ b/AnnoyancesFilter/sections/mobile-app.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of rules are against banners that promote mobile apps. +! Note, that the file consists of multiple sections for different purposes. For instance, there is a section for exceptions and some platform-specific sections. +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! !####################################################### !######### Banners of mobile apps for the sites ######## !####################################################### diff --git a/AnnoyancesFilter/sections/popups.txt b/AnnoyancesFilter/sections/popups.txt index 34087350838..8bdf896abc1 100644 --- a/AnnoyancesFilter/sections/popups.txt +++ b/AnnoyancesFilter/sections/popups.txt @@ -1,8 +1,10 @@ -!####################################################### -!######### Rules for blocking in page popups ########### -!######### and floating elements ####################### -!####################################################### -! Whitelist is at the end of file +! +! This section contains the list of rules that block in-page popups (like banners with special offers) and floating elements. +! At the bottom of this file, you can find the allowlist that fixes issues caused by the rules from this file. +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! "Add to home screen in mobile Chrome" ||mail.ru/manifest.json diff --git a/AnnoyancesFilter/sections/push-notifications.txt b/AnnoyancesFilter/sections/push-notifications.txt index 0d3705a647b..3f7c2af3ef9 100644 --- a/AnnoyancesFilter/sections/push-notifications.txt +++ b/AnnoyancesFilter/sections/push-notifications.txt @@ -1,6 +1,10 @@ -!####################################################### -!######### Rules for blocking push notifications ####### -!####################################################### +! +! This section contains the list of rules that block website push notifications ("subscribe to the news" kind of notifications). +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! +! ! Disabling of push-notifications wallstreet-online.de,dni.ru,polit.info#%#if (window.PushManager) { window.PushManager.prototype.subscribe = function () { return { then: function (func) { } }; }; } macwelt.de,pcwelt.de#%#//scriptlet("set-constant", "firebase.messaging", "noopFunc") diff --git a/AnnoyancesFilter/sections/remains.txt b/AnnoyancesFilter/sections/remains.txt index d69d89e7339..44caaa24dd1 100644 --- a/AnnoyancesFilter/sections/remains.txt +++ b/AnnoyancesFilter/sections/remains.txt @@ -1,5 +1,9 @@ ! -!######### Remains of ads. Obsolete section. Better use Extended CSS rules in regular filters +! Obsolete. Do not add new rules. +! This section contains the list of the rules that block remains of ads. Better use Extended CSS rules in regular filters. +! Do not add any rules here. +! +! ! webmd.com#?#.main-container > div[id^="ContentPane"] ~ aside.module-unified-right-rail:has(> header > h3:contains(Today on WebMD)) avtonovostidnya.ru##main > div[id*="single"] ~ hr.gray-lg diff --git a/AnnoyancesFilter/sections/self-promo.txt b/AnnoyancesFilter/sections/self-promo.txt index d9640703b18..d448228f76f 100644 --- a/AnnoyancesFilter/sections/self-promo.txt +++ b/AnnoyancesFilter/sections/self-promo.txt @@ -1,3 +1,12 @@ +! +! This is section contains the list of rules that block websites' own banners at our discretion. +! +! Self-promo example: promoting other services from the same company (if it's annoying enough). +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! +! !####################################################### !######### Blocking self promotion ##################### !####################################################### diff --git a/AnnoyancesFilter/sections/subscriptions.txt b/AnnoyancesFilter/sections/subscriptions.txt index ba503e621e2..40e8dc28304 100644 --- a/AnnoyancesFilter/sections/subscriptions.txt +++ b/AnnoyancesFilter/sections/subscriptions.txt @@ -1,6 +1,10 @@ -!####################################################### -!######### Subscriptions, newsletters etc. ############# -!####################################################### +! +! This section contains the list of rules that block the promotion of subscriptions, newsletters. +! Examples: "subscribe to our blog", "subscribe to our newsletter" blocks in all kinds of blocks. +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! common names ! ##.cta-component-half-width diff --git a/AnnoyancesFilter/sections/tweaks.txt b/AnnoyancesFilter/sections/tweaks.txt index 3c86ef37368..562a5d7c8ac 100644 --- a/AnnoyancesFilter/sections/tweaks.txt +++ b/AnnoyancesFilter/sections/tweaks.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of rules that are used for UI tweaks and other similar cases. For instance, we unblock the right context menu or unblock selecting text on a webpage. +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! +! !############################## !######### CSS tweaks ######### !############################## diff --git a/AnnoyancesFilter/sections/widgets.txt b/AnnoyancesFilter/sections/widgets.txt index 228359c02d1..ab5a1d8a22c 100644 --- a/AnnoyancesFilter/sections/widgets.txt +++ b/AnnoyancesFilter/sections/widgets.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of rules that block annoying third-party widgets (weather, money exchange, 3rd-party feedbacks, 3rd-party assistants). +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! +! !####################################################### !######### Block useless widgets ####################### !### Weather, money exchange, 3rd-party feedbacks, ##### diff --git a/ChineseFilter/sections/adservers.txt b/ChineseFilter/sections/adservers.txt index 20d15e0c798..123a6195f3e 100644 --- a/ChineseFilter/sections/adservers.txt +++ b/ChineseFilter/sections/adservers.txt @@ -1,5 +1,11 @@ ! -! Section contains list of advertising networks +! This section contains the list of third-party advertising networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! ! ||bjjabc.com^$third-party ||bbs.kiiqnnx.cn^ diff --git a/ChineseFilter/sections/adservers_firstparty.txt b/ChineseFilter/sections/adservers_firstparty.txt index 56b0fc1d788..793557dde9e 100644 --- a/ChineseFilter/sections/adservers_firstparty.txt +++ b/ChineseFilter/sections/adservers_firstparty.txt @@ -1,5 +1,11 @@ ! -! Section contains the list of advertising networks, which are hosted on non advertising sites as subdomains +! This section contains the list of advertising networks domains, which are hosted on non advertising sites as subdomains. +! Note, that we only put rules that block full subdomains here and not URL parts (there's `general_url.txt` for that). +! +! Good: ||ad.doubleclick.net^ +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||legitwebsite.com^$third-party (should be in adservers.txt) +! ! ||ad.juksy.com^ ||ads.tvb.com^ \ No newline at end of file diff --git a/ChineseFilter/sections/antiadblock.txt b/ChineseFilter/sections/antiadblock.txt index a18ce52e818..239b4e8af1f 100644 --- a/ChineseFilter/sections/antiadblock.txt +++ b/ChineseFilter/sections/antiadblock.txt @@ -1,5 +1,11 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) ! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/107446 diff --git a/ChineseFilter/sections/css_extended.txt b/ChineseFilter/sections/css_extended.txt index 346ec73e827..04c627782a1 100644 --- a/ChineseFilter/sections/css_extended.txt +++ b/ChineseFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/105485 ct.999wan.wang#?#.container .card:has(> .card-body > .flex-fill > #ad_text) diff --git a/ChineseFilter/sections/general_elemhide.txt b/ChineseFilter/sections/general_elemhide.txt index fd40e6f926f..a1f90bd04af 100644 --- a/ChineseFilter/sections/general_elemhide.txt +++ b/ChineseFilter/sections/general_elemhide.txt @@ -1,5 +1,9 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) +! ! ##.Zi_ad_a_H ##a[href^="https://adm.beimg.com/"] \ No newline at end of file diff --git a/ChineseFilter/sections/general_extensions.txt b/ChineseFilter/sections/general_extensions.txt index db590924443..f2828608744 100644 --- a/ChineseFilter/sections/general_extensions.txt +++ b/ChineseFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !--------------------------------------! !------- JS rules ---------------------! !--------------------------------------! diff --git a/ChineseFilter/sections/general_url.txt b/ChineseFilter/sections/general_url.txt index f46c7bf7510..1c62da9e5fd 100644 --- a/ChineseFilter/sections/general_url.txt +++ b/ChineseFilter/sections/general_url.txt @@ -1,4 +1,10 @@ ! +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in specific.txt) +! +! ! https://github.com/AdguardTeam/AdguardFilters/issues/35526 ://m.*.cn/*.xmtl?$third-party ://m.*.cn/*/*.js?ssid=_ diff --git a/ChineseFilter/sections/replace.txt b/ChineseFilter/sections/replace.txt index ccfc7617c9c..fb3e4f30246 100644 --- a/ChineseFilter/sections/replace.txt +++ b/ChineseFilter/sections/replace.txt @@ -1,5 +1,8 @@ ! -! The content replacement rules +! This section contains the list of the content replacement rules that block ads. Rules must be domain-specific. +! +! Good: ||example.org/video-links$replace=/vast":/vast_":/ +! Bad: ||example.org/video-links (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/87176 ! https://github.com/AdguardTeam/AdguardFilters/issues/54359 diff --git a/ChineseFilter/sections/specific.txt b/ChineseFilter/sections/specific.txt index d6ef66826da..301e13fcf3c 100644 --- a/ChineseFilter/sections/specific.txt +++ b/ChineseFilter/sections/specific.txt @@ -1,5 +1,8 @@ ! -! Section contains rules for specific websites +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/88097 ipv6.baidu.com,m.baidu.com,www.baidu.com,www1.baidu.com,xueshu.baidu.com###results > div[class]:not(.result):not(.result-op):not(.sp-rslt-bar):not(.s-group-result):not(.hint-unsafe) diff --git a/ChineseFilter/sections/whitelist.txt b/ChineseFilter/sections/whitelist.txt index cd6bea7224a..c5d9bb3a366 100644 --- a/ChineseFilter/sections/whitelist.txt +++ b/ChineseFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! White list. Fixing filtration errors (false-positive) +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/105329 @@||51zxw.net/getvutf.asp?$domain=51zxw.net diff --git a/DutchFilter/sections/adservers.txt b/DutchFilter/sections/adservers.txt index 0c27e86f9ef..a8e0fd6af25 100644 --- a/DutchFilter/sections/adservers.txt +++ b/DutchFilter/sections/adservers.txt @@ -1,5 +1,11 @@ ! -! Section contains list of advertising networks +! This section contains the list of third-party advertising networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! ! ||pexi.nl^$third-party ||adconfigproxy.azurewebsites.net^$third-party diff --git a/DutchFilter/sections/adservers_firstparty.txt b/DutchFilter/sections/adservers_firstparty.txt index 5e5a214bc5b..6020f68f8cd 100644 --- a/DutchFilter/sections/adservers_firstparty.txt +++ b/DutchFilter/sections/adservers_firstparty.txt @@ -1,4 +1,10 @@ ! -! Section contains the list of advertising networks, which are hosted on non advertising sites as subdomains +! This section contains the list of advertising networks domains, which are hosted on non advertising sites as subdomains. +! Note, that we only put rules that block full subdomains here and not URL parts (there's `general_url.txt` for that). +! +! Good: ||ad.doubleclick.net^ +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||legitwebsite.com^$third-party (should be in adservers.txt) +! ! ||content2.nrc.nl^ \ No newline at end of file diff --git a/DutchFilter/sections/antiadblock.txt b/DutchFilter/sections/antiadblock.txt index aad23a94831..16071873737 100644 --- a/DutchFilter/sections/antiadblock.txt +++ b/DutchFilter/sections/antiadblock.txt @@ -1,5 +1,11 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) ! ! Prevent AdFender detection @@/ad_pics/*$image,domain=computerworld.nl|webwereld.nl diff --git a/DutchFilter/sections/css_extended.txt b/DutchFilter/sections/css_extended.txt index c64a76060c3..ac1c32126fa 100644 --- a/DutchFilter/sections/css_extended.txt +++ b/DutchFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/48649 marktplaats.nl#?#.mp-Page-element > .mp-Listings + div:not([class]):not([id]):has(> .mp-Listings__admarktTitle) diff --git a/DutchFilter/sections/general_elemhide.txt b/DutchFilter/sections/general_elemhide.txt index 5c298a6e37a..652ffd2df12 100644 --- a/DutchFilter/sections/general_elemhide.txt +++ b/DutchFilter/sections/general_elemhide.txt @@ -1,3 +1,6 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) ! diff --git a/DutchFilter/sections/general_extensions.txt b/DutchFilter/sections/general_extensions.txt index bcb9f9e41f2..5722d45469d 100644 --- a/DutchFilter/sections/general_extensions.txt +++ b/DutchFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !--------------------------------------! !------- JS rules ---------------------! !--------------------------------------! diff --git a/DutchFilter/sections/general_url.txt b/DutchFilter/sections/general_url.txt index 6a6b3c44236..e023d041973 100644 --- a/DutchFilter/sections/general_url.txt +++ b/DutchFilter/sections/general_url.txt @@ -1,3 +1,7 @@ ! -! Banner names +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! ! diff --git a/DutchFilter/sections/replace.txt b/DutchFilter/sections/replace.txt index 2ea5546f470..0cc860ded40 100644 --- a/DutchFilter/sections/replace.txt +++ b/DutchFilter/sections/replace.txt @@ -1,5 +1,8 @@ ! -! The content replacement rules +! This section contains the list of the content replacement rules that block ads. Rules must be domain-specific. +! +! Good: ||example.org/video-links$replace=/vast":/vast_":/ +! Bad: ||example.org/video-links (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/6938 ||svonm.com/*config.json$replace=/"enabled": true\,/"enabled":false\,/i,important diff --git a/DutchFilter/sections/specific.txt b/DutchFilter/sections/specific.txt index 2bde0d3b0a6..694f7447a94 100644 --- a/DutchFilter/sections/specific.txt +++ b/DutchFilter/sections/specific.txt @@ -1,6 +1,8 @@ -!--------------------------------------------------------! -!-------------------- Specific rules --------------------! -!--------------------------------------------------------! +! +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) ! itnijs.frl##.last.widget itnijs.frl##.widget-5 > div.banner diff --git a/DutchFilter/sections/whitelist.txt b/DutchFilter/sections/whitelist.txt index 6f55a26baab..d1f9c085ee9 100644 --- a/DutchFilter/sections/whitelist.txt +++ b/DutchFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! White list. Fixing filtration errors (false-positive) +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/71460 !+ PLATFORM(ios, ext_safari) diff --git a/EnglishFilter/sections/adservers.txt b/EnglishFilter/sections/adservers.txt index 6129a340f09..133eca884bf 100644 --- a/EnglishFilter/sections/adservers.txt +++ b/EnglishFilter/sections/adservers.txt @@ -1,7 +1,13 @@ ! -! Section contains list of advertising networks +! This section contains the list of third-party advertising networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! The rules with hints are at the end of file. + +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! ! -! The rules with hints are at the end of file ! ||lzrikate.com^$third-party ||xfyyveifirnll.com^ diff --git a/EnglishFilter/sections/adservers_firstparty.txt b/EnglishFilter/sections/adservers_firstparty.txt index 73616f46078..2b3f03b0d27 100644 --- a/EnglishFilter/sections/adservers_firstparty.txt +++ b/EnglishFilter/sections/adservers_firstparty.txt @@ -1,5 +1,11 @@ ! -! Section contains the list of advertising networks, which are hosted on non advertising sites as subdomains +! This section contains the list of advertising networks domains, which are hosted on non advertising sites as subdomains. +! Note, that we only put rules that block full subdomains here and not URL parts (there's `general_url.txt` for that). +! +! Good: ||ad.doubleclick.net^ +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||legitwebsite.com^$third-party (should be in adservers.txt) +! ! ||d24g87zbxr4yiz.cloudfront.net^ ||centent.stemplay.cc^ diff --git a/EnglishFilter/sections/antiadblock.txt b/EnglishFilter/sections/antiadblock.txt index 82a287bd80c..6ee42ce00d1 100644 --- a/EnglishFilter/sections/antiadblock.txt +++ b/EnglishFilter/sections/antiadblock.txt @@ -1,5 +1,11 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) ! ! .pub_728x90.text-ad.textAd.text_ad.text_ads.text-ads.text-ad-links is often used as a bait #$#.pub_728x90.text-ad.textAd.text_ad.text_ads.text-ads.text-ad-links { display: block !important; } diff --git a/EnglishFilter/sections/banner_sizes.txt b/EnglishFilter/sections/banner_sizes.txt index 3a929f2ec6e..82ee8963678 100644 --- a/EnglishFilter/sections/banner_sizes.txt +++ b/EnglishFilter/sections/banner_sizes.txt @@ -1,5 +1,9 @@ ! -! Section contains list of popular banner sizes +! This section contains the list of popular banner sizes. +! Rules should be generic. +! +! Good: ##embed[height="175"][width="175"] +! Bad: example.org##embed[height="175"][width="175"] (should be in specific.txt) ! ##embed[height="175"][width="175"] ##embed[height="200"][width="100%"] diff --git a/EnglishFilter/sections/cname_adservers.txt b/EnglishFilter/sections/cname_adservers.txt index c07ef6f0904..db146f9c0ab 100644 --- a/EnglishFilter/sections/cname_adservers.txt +++ b/EnglishFilter/sections/cname_adservers.txt @@ -1,5 +1,10 @@ ! -! CNAME advertising networks +! This section contains the list of the rules are against CNAME advertising networks. +! Note, we only include rules from AdGuard's cname-tracker repo here, there's no need to add regular rules here. +! +! Good: !#include https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/trackers/adspyglass.txt +! Bad: ||monerominer.rocks^$third-party (should be in adservers.txt) +! ! ! AdSpyglass : 0i0i0i0.com disguised advertising networks !#include https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/trackers/adspyglass.txt diff --git a/EnglishFilter/sections/content_blocker.txt b/EnglishFilter/sections/content_blocker.txt index 5a8d9db1320..0ecccb80c5a 100644 --- a/EnglishFilter/sections/content_blocker.txt +++ b/EnglishFilter/sections/content_blocker.txt @@ -1,6 +1,14 @@ ! -! Section contains list of the rules for content blockers -! It will be used by AdGuard Content Blocker and AdGuard for iOS/Safari +! This section contains the list of the rules for content blockers (AdGuard for iOS, AdGuard for Safari and AdGuard Content Blocker for Yandex Browser / Samsung Browser on Android). +! +! The point is that these apps support only a limited subset of AdGuard filtering rules syntax. +! Because of that, we have to resort to using more complicated and less effective solutions there. +! Note, that you can use some specific type of the rules: base (with / without exceptions). +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: example.org#?##adblock (should be in antiadblock.txt) +! ! !###################### Temporary ###################### ! diff --git a/EnglishFilter/sections/cryptominers.txt b/EnglishFilter/sections/cryptominers.txt index 0f7280761d0..84671fd77af 100644 --- a/EnglishFilter/sections/cryptominers.txt +++ b/EnglishFilter/sections/cryptominers.txt @@ -1,5 +1,9 @@ ! -! Section contains list of crypto-miners +! This section contains the list of rules are against crypto-miners. +! +! Good: ||monerominer.rocks^$third-party +! Bad: monerominer.rocks##.ad (should be in specific.txt) +! ! ! Do not block authedmine.com ! diff --git a/EnglishFilter/sections/css_extended.txt b/EnglishFilter/sections/css_extended.txt index e360bd687d7..dd1894d5594 100644 --- a/EnglishFilter/sections/css_extended.txt +++ b/EnglishFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/109066 sukebei.nyaa.si#?#div[class*="-"] > ins.adsbyexoclick:upward(1) diff --git a/EnglishFilter/sections/foreign.txt b/EnglishFilter/sections/foreign.txt index 7e2947ccd4c..1617d0b1006 100644 --- a/EnglishFilter/sections/foreign.txt +++ b/EnglishFilter/sections/foreign.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of rules that are supposed to work on websites we have no language-specific filter for yet. +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! +! !--------------------------------------------------------------------- !------------------------------ Albanian ----------------------------- !--------------------------------------------------------------------- diff --git a/EnglishFilter/sections/general_elemhide.txt b/EnglishFilter/sections/general_elemhide.txt index dcae027f8a9..18e6347276d 100644 --- a/EnglishFilter/sections/general_elemhide.txt +++ b/EnglishFilter/sections/general_elemhide.txt @@ -1,5 +1,9 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) +! ! !+ NOT_OPTIMIZED ##.home-ad-region-1 diff --git a/EnglishFilter/sections/general_extensions.txt b/EnglishFilter/sections/general_extensions.txt index 5557a78f776..a1ea2e55049 100644 --- a/EnglishFilter/sections/general_extensions.txt +++ b/EnglishFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !------------------- !-------JS---------- !------------------- diff --git a/EnglishFilter/sections/general_url.txt b/EnglishFilter/sections/general_url.txt index 7e1645f8436..f0cee377a16 100644 --- a/EnglishFilter/sections/general_url.txt +++ b/EnglishFilter/sections/general_url.txt @@ -1,4 +1,10 @@ ! +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! +! ! This is an interesting case. ! This is a part of the URL used by an Indian ISP called BSNL ! to inject ads into HTTP pages diff --git a/EnglishFilter/sections/replace.txt b/EnglishFilter/sections/replace.txt index cae7008d7ac..f746df5fd88 100644 --- a/EnglishFilter/sections/replace.txt +++ b/EnglishFilter/sections/replace.txt @@ -1,5 +1,9 @@ ! -! The content replacement rules +! This section contains the list of the content replacement rules that block ads. Rules must be domain-specific. +! +! Good: ||example.org/video-links$replace=/vast":/vast_":/ +! Bad: ||example.org/video-links (should be in specific.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/105079 ! Fix ad placeholders in iframe diff --git a/EnglishFilter/sections/specific.txt b/EnglishFilter/sections/specific.txt index 9ea0517e2f9..aca52c055e7 100644 --- a/EnglishFilter/sections/specific.txt +++ b/EnglishFilter/sections/specific.txt @@ -1,4 +1,9 @@ ! +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) +! ! Section contains rules for specific websites ! !### HINTS are at the end of file diff --git a/EnglishFilter/sections/whitelist.txt b/EnglishFilter/sections/whitelist.txt index 940f12dea7b..0de401758e0 100644 --- a/EnglishFilter/sections/whitelist.txt +++ b/EnglishFilter/sections/whitelist.txt @@ -1,5 +1,10 @@ ! -! White list. Fixing filtration errors (false-positive) +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. + +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! !######################################### ! START: Temporary diff --git a/EnglishFilter/sections/whitelist_stealth.txt b/EnglishFilter/sections/whitelist_stealth.txt index 0673c4d7dad..3c5c530c3fc 100644 --- a/EnglishFilter/sections/whitelist_stealth.txt +++ b/EnglishFilter/sections/whitelist_stealth.txt @@ -1,6 +1,10 @@ -!----------------------------------------------------------- -!-------------------- Fixing Stealth Mode ------------------ -!----------------------------------------------------------- +! +! This section contains the list of rules that fix Stealth Mode issues. Rules should be domain-specific. +! +! Good: @@||example.org^$stealth +! Bad: example.org#@#.ad (should be in AdGuard Base - whitelist.txt) +! +! !############### TEMPORARY ############### ! https://github.com/AdguardTeam/AdguardFilters/issues/104168 [Stealth Mode - Referrer] @@||streampass.org^$stealth diff --git a/FrenchFilter/sections/adservers.txt b/FrenchFilter/sections/adservers.txt index 270e6312387..e623c7f0da8 100644 --- a/FrenchFilter/sections/adservers.txt +++ b/FrenchFilter/sections/adservers.txt @@ -1,5 +1,11 @@ ! -! Section contains list of advertising networks +! This section contains the list of third-party advertising networks domains. In that case domain should be added to the common rules. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! ! ||be-rtl.videoplaza.tv^ ||fristminyas.com^$third-party diff --git a/FrenchFilter/sections/adservers_firstparty.txt b/FrenchFilter/sections/adservers_firstparty.txt index 755e3a7f7d9..54b3a322884 100644 --- a/FrenchFilter/sections/adservers_firstparty.txt +++ b/FrenchFilter/sections/adservers_firstparty.txt @@ -1,3 +1,9 @@ ! -! Section contains the list of advertising networks, which are hosted on non advertising sites as subdomains +! This section contains the list of advertising networks domains, which are hosted on non advertising sites as subdomains. +! Note, that we only put rules that block full subdomains here and not URL parts (there's `general_url.txt` for that). +! +! Good: ||ad.doubleclick.net^ +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||legitwebsite.com^$third-party (should be in adservers.txt) +! ! diff --git a/FrenchFilter/sections/antiadblock.txt b/FrenchFilter/sections/antiadblock.txt index e12e8d2b6de..26daa7d89a6 100644 --- a/FrenchFilter/sections/antiadblock.txt +++ b/FrenchFilter/sections/antiadblock.txt @@ -1,5 +1,11 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) ! !--- Sourcepoint --- capital.fr,maxisciences.com#%#!function(){function b(){}function a(a){return{get:function(){return a},set:b}}function c(a){a(!1)}AG_defineProperty('_sp_.config.content_control_callback',a(b)),AG_defineProperty('_sp_.config.spid_control_callback',a(b)),AG_defineProperty('_sp_.config.vid_control_callback',a(b)),AG_defineProperty('_sp_.config.disableBlockerStyleSheets',a(!1)),AG_defineProperty('_sp_.checkState',a(c)),AG_defineProperty('_sp_.isAdBlocking',a(c)),AG_defineProperty('_sp_.isAdblocking',a(c)),AG_defineProperty('_sp_.isContentBlockerPresent',a(c)),AG_defineProperty('_sp_.getSafeUri',a(function(a){return a})),AG_defineProperty('_sp_.pageChange',a(b)),AG_defineProperty('_sp_.setupSmartBeacons',a(b)),AG_defineProperty('_sp_.msg.startMsg',a(b)),document.addEventListener('sp.blocking',function(a){a.stopImmediatePropagation(),a=document.createEvent('Event'),a.initEvent('sp.not_blocking',!0,!1),this.dispatchEvent(a)})}(); diff --git a/FrenchFilter/sections/css_extended.txt b/FrenchFilter/sections/css_extended.txt index ecc9b212d30..6bfc354f078 100644 --- a/FrenchFilter/sections/css_extended.txt +++ b/FrenchFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/105651 crunchyscan.fr#?#.body-wrap > .c-sidebar:not(:has([id*="manga"])) diff --git a/FrenchFilter/sections/general_elemhide.txt b/FrenchFilter/sections/general_elemhide.txt index 5c298a6e37a..652ffd2df12 100644 --- a/FrenchFilter/sections/general_elemhide.txt +++ b/FrenchFilter/sections/general_elemhide.txt @@ -1,3 +1,6 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) ! diff --git a/FrenchFilter/sections/general_extensions.txt b/FrenchFilter/sections/general_extensions.txt index 7d8fff82446..e50f463281c 100644 --- a/FrenchFilter/sections/general_extensions.txt +++ b/FrenchFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !--------------------------------------! !------- JS rules ---------------------! !--------------------------------------! diff --git a/FrenchFilter/sections/general_url.txt b/FrenchFilter/sections/general_url.txt index 090fad05a86..5a62c586964 100644 --- a/FrenchFilter/sections/general_url.txt +++ b/FrenchFilter/sections/general_url.txt @@ -1,5 +1,9 @@ ! -! Banner names +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/83524 /propads.$badfilter diff --git a/FrenchFilter/sections/replace.txt b/FrenchFilter/sections/replace.txt index 4691445bffa..d9e77ab9aaa 100644 --- a/FrenchFilter/sections/replace.txt +++ b/FrenchFilter/sections/replace.txt @@ -1,5 +1,8 @@ ! -! The content replacement rules +! This section contains the list of the content replacement rules that block ads. Rules must be domain-specific. +! +! Good: ||example.org/video-links$replace=/vast":/vast_":/ +! Bad: ||example.org/video-links (should be in specific.txt) ! ! ! French-language catch-up TV web apps diff --git a/FrenchFilter/sections/specific.txt b/FrenchFilter/sections/specific.txt index 3403c449dea..17695418412 100644 --- a/FrenchFilter/sections/specific.txt +++ b/FrenchFilter/sections/specific.txt @@ -1,6 +1,8 @@ -!--------------------------------------------------------! -!-------------------- Specific rules --------------------! -!--------------------------------------------------------! +! +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) ! ! For URL shorteners or simple sites with frequently changed ad servers. ! Incorrectly blocked domains can be excluded using regex(synchronize this regexp in all filters) diff --git a/FrenchFilter/sections/whitelist.txt b/FrenchFilter/sections/whitelist.txt index 7ed41cfd82e..966f80937c2 100644 --- a/FrenchFilter/sections/whitelist.txt +++ b/FrenchFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! White list. Fixing filtration errors (false-positive) +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! broken player @@||oasis-player.p7s1.io/web/monetization/*/monetization.js$domain=puls24.at|kabeleins.de|wetter.com|prosiebenmaxx.de|sixx.de|sat1.de|puls4.com|prosieben.de|kabeleinsdoku.de|kabeleinsdoku.at|zappn.tv diff --git a/GermanFilter/sections/adservers.txt b/GermanFilter/sections/adservers.txt index a7f969ac2cf..ec0844a23ef 100644 --- a/GermanFilter/sections/adservers.txt +++ b/GermanFilter/sections/adservers.txt @@ -1,3 +1,12 @@ +! +! This section contains the list of third-party advertising networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! +! ||tikibihu.com^$third-party ||partners2.das-onlinespiel.de^$third-party ||intextlinks.idg.zone^$third-party diff --git a/GermanFilter/sections/antiadblock.txt b/GermanFilter/sections/antiadblock.txt index 52eda70f435..29204a60806 100644 --- a/GermanFilter/sections/antiadblock.txt +++ b/GermanFilter/sections/antiadblock.txt @@ -1,5 +1,11 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) ! !--- Prevent AdFender detection --- !+ NOT_OPTIMIZED diff --git a/GermanFilter/sections/css_extended.txt b/GermanFilter/sections/css_extended.txt index 9d4bbf84cff..a9e36ec583c 100644 --- a/GermanFilter/sections/css_extended.txt +++ b/GermanFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/105158 kochbar.de#?#section[data-area*="_Empfehlungen-"] .rtli-large-5:has(>.kb-ad) diff --git a/GermanFilter/sections/general_elemhide.txt b/GermanFilter/sections/general_elemhide.txt index 5c298a6e37a..652ffd2df12 100644 --- a/GermanFilter/sections/general_elemhide.txt +++ b/GermanFilter/sections/general_elemhide.txt @@ -1,3 +1,6 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) ! diff --git a/GermanFilter/sections/general_extensions.txt b/GermanFilter/sections/general_extensions.txt index a7a7998680a..4987b593a62 100644 --- a/GermanFilter/sections/general_extensions.txt +++ b/GermanFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !--------------------------------------! !------- JS rules ---------------------! !--------------------------------------! diff --git a/GermanFilter/sections/general_url.txt b/GermanFilter/sections/general_url.txt index 6a6b3c44236..e023d041973 100644 --- a/GermanFilter/sections/general_url.txt +++ b/GermanFilter/sections/general_url.txt @@ -1,3 +1,7 @@ ! -! Banner names +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! ! diff --git a/GermanFilter/sections/replace.txt b/GermanFilter/sections/replace.txt index 00b60293302..1bd247114bf 100644 --- a/GermanFilter/sections/replace.txt +++ b/GermanFilter/sections/replace.txt @@ -1,5 +1,8 @@ ! -! The content replacement rules +! This section contains the list of the content replacement rules that block ads. Rules must be domain-specific. +! +! Good: ||example.org/video-links$replace=/vast":/vast_":/ +! Bad: ||example.org/video-links (should be in specific.txt) ! ! Glomex video ads - kabeleins.de,prosieben.de,prosiebenmaxx.de,ran.de,sat1.de,sat1gold.de,sixx.de,the-voice-of-germany.de,wetter.com ! https://github.com/AdguardTeam/AdguardFilters/issues/21525 diff --git a/GermanFilter/sections/specific.txt b/GermanFilter/sections/specific.txt index 3f05d53e6cb..fa5902af0de 100644 --- a/GermanFilter/sections/specific.txt +++ b/GermanFilter/sections/specific.txt @@ -1,6 +1,9 @@ -!--------------------------------------------------------! -!-------------------- Specific rules --------------------! -!--------------------------------------------------------! +! +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) +! ! https://github.com/AdguardTeam/AdguardFilters/issues/101190 ||ihreapotheken.de^$third-party ! https://github.com/AdguardTeam/AdguardFilters/issues/93094 diff --git a/GermanFilter/sections/whitelist.txt b/GermanFilter/sections/whitelist.txt index 641629d434d..9de4cfc9424 100644 --- a/GermanFilter/sections/whitelist.txt +++ b/GermanFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! White list. Fixing filtration errors (false-positive) +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! !###TEMPORARY### !############### diff --git a/JapaneseFilter/sections/adservers.txt b/JapaneseFilter/sections/adservers.txt index f2684faf172..e341fb9820d 100644 --- a/JapaneseFilter/sections/adservers.txt +++ b/JapaneseFilter/sections/adservers.txt @@ -1,5 +1,11 @@ ! -! Section contains list of advertising networks +! This section contains the list of third-party advertising networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/23113 ! ||weblio.jp^$third-party diff --git a/JapaneseFilter/sections/antiadblock.txt b/JapaneseFilter/sections/antiadblock.txt index dc5ca4b5858..5e1b181a1c1 100644 --- a/JapaneseFilter/sections/antiadblock.txt +++ b/JapaneseFilter/sections/antiadblock.txt @@ -1,5 +1,12 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/108229 friday.kodansha.co.jp#$#body { overflow: visible !important; } diff --git a/JapaneseFilter/sections/css_extended.txt b/JapaneseFilter/sections/css_extended.txt index 4c32457652c..1820cc20874 100644 --- a/JapaneseFilter/sections/css_extended.txt +++ b/JapaneseFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/104224#issuecomment-1002865063 ! TODO: replace the rule below after the release of the extension 4.0 diff --git a/JapaneseFilter/sections/general_elemhide.txt b/JapaneseFilter/sections/general_elemhide.txt index 10266cf9088..fc9b1a656f8 100644 --- a/JapaneseFilter/sections/general_elemhide.txt +++ b/JapaneseFilter/sections/general_elemhide.txt @@ -1,5 +1,9 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) +! ! ##._popIn_infinite_ad ##._popIn_infinite_video diff --git a/JapaneseFilter/sections/general_extensions.txt b/JapaneseFilter/sections/general_extensions.txt index 4d78458bd71..fd1dd98a74b 100644 --- a/JapaneseFilter/sections/general_extensions.txt +++ b/JapaneseFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !------------------- !-------JS---------- !------------------- diff --git a/JapaneseFilter/sections/general_url.txt b/JapaneseFilter/sections/general_url.txt index d020394bcca..f620b85168d 100644 --- a/JapaneseFilter/sections/general_url.txt +++ b/JapaneseFilter/sections/general_url.txt @@ -1,5 +1,9 @@ ! -! Banner names +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in general_extensions.txt) +! ! /plugins/betube-ads/* .com/ufo/$script,third-party diff --git a/JapaneseFilter/sections/specific.txt b/JapaneseFilter/sections/specific.txt index 27bcf3839e9..d87f62ae2a7 100644 --- a/JapaneseFilter/sections/specific.txt +++ b/JapaneseFilter/sections/specific.txt @@ -1,5 +1,8 @@ ! -! Section contains rules for specific websites +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in speficic.txt) ! ! /banner/banner_ - if it is necessary, make this rule domain specific ! diff --git a/JapaneseFilter/sections/whitelist.txt b/JapaneseFilter/sections/whitelist.txt index c2d2300ee38..b3ae2feff1c 100644 --- a/JapaneseFilter/sections/whitelist.txt +++ b/JapaneseFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! White list. Fixing filtration errors(false-positive) +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/107680 @@||ias.global.rakuten.com/adv/$script,domain=24.rakuten.co.jp diff --git a/MobileFilter/sections/adservers.txt b/MobileFilter/sections/adservers.txt index 1f27829677a..9389262494a 100644 --- a/MobileFilter/sections/adservers.txt +++ b/MobileFilter/sections/adservers.txt @@ -1,5 +1,10 @@ ! -! Section contains list of advertising networks +! This section contains the list of third-party advertising networks domains for mobile devices. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) ! ! ! ||mobileapptracking.com^ - don't block this domain with all subdomains. https://forum.adguard.com/index.php?threads/23917/ diff --git a/MobileFilter/sections/antiadblock.txt b/MobileFilter/sections/antiadblock.txt index d83f7d05c5b..250892a95a5 100644 --- a/MobileFilter/sections/antiadblock.txt +++ b/MobileFilter/sections/antiadblock.txt @@ -1,5 +1,12 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) +! ! !--- Temporary ! https://github.com/AdguardTeam/AdguardForiOS/issues/255 diff --git a/MobileFilter/sections/css_extended.txt b/MobileFilter/sections/css_extended.txt index 69c4312a9a9..84309773940 100644 --- a/MobileFilter/sections/css_extended.txt +++ b/MobileFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads on mobile devices. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/109417 seiga.nicovideo.jp#?#div[data-ads-name="sp_android_web_manga_viewer_lv3_300x250_north"]:upward(1) diff --git a/MobileFilter/sections/general_elemhide.txt b/MobileFilter/sections/general_elemhide.txt index 2e3b6ad4543..97661037060 100644 --- a/MobileFilter/sections/general_elemhide.txt +++ b/MobileFilter/sections/general_elemhide.txt @@ -1,5 +1,8 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block ads on mobile devices. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) ! !--- popular banner sizes --- ##img[width="320"][height="50"] diff --git a/MobileFilter/sections/general_extensions.txt b/MobileFilter/sections/general_extensions.txt index 1431955c4e4..d10209dba30 100644 --- a/MobileFilter/sections/general_extensions.txt +++ b/MobileFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !------------------- !-------JS---------- !------------------- diff --git a/MobileFilter/sections/general_url.txt b/MobileFilter/sections/general_url.txt index 75b24e286e9..90a169fa23c 100644 --- a/MobileFilter/sections/general_url.txt +++ b/MobileFilter/sections/general_url.txt @@ -1,5 +1,9 @@ ! -! General URL(for apps only) +! This section contains the list of generic blocking rules (mobile sites or apps). +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! ! ||s.*.com/pp.php?uid=$third-party .cn/?ss= diff --git a/MobileFilter/sections/replace.txt b/MobileFilter/sections/replace.txt index 1ed09c3e163..57d7ca7cd31 100644 --- a/MobileFilter/sections/replace.txt +++ b/MobileFilter/sections/replace.txt @@ -1,5 +1,8 @@ ! -! The content replacement rules +! This section contains the list of the content replacement rules that block ads on mobile devices. Rules must be domain-specific. +! +! Good: ||example.org/video-links$replace=/vast":/vast_":/ +! Bad: ||example.org/video-links (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/101976 ||content.jwplatform.com/players/*isAMP$replace=/"autostart": "viewable"/"autostart": ""/ diff --git a/MobileFilter/sections/specific_app.txt b/MobileFilter/sections/specific_app.txt index c170baebbef..527e3f0acf7 100644 --- a/MobileFilter/sections/specific_app.txt +++ b/MobileFilter/sections/specific_app.txt @@ -1,5 +1,8 @@ ! -! Section contains rules for specific applications +! This section contains the list of the base rules that block ads in mobile apps. Rules should be specific. +! +! Good: ||graph.facebook.com^$app=com.geumson.nookslist +! Bad: ||graph.facebook.com^$third-party (should be in adservers.txt) ! ! ! French-language catch-up TV mobile apps diff --git a/MobileFilter/sections/specific_web.txt b/MobileFilter/sections/specific_web.txt index 850effcb5f3..93b74df6cf8 100644 --- a/MobileFilter/sections/specific_web.txt +++ b/MobileFilter/sections/specific_web.txt @@ -1,5 +1,9 @@ ! -! Section contains rules for specific websites +! This section contains the list of domain-specific rules that block ads on mobile devices. +! +! Good: example.org###rek; ||m.example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) +! ! ! https://forum.adguard.com/index.php?threads/10464/ ||images-*.ssl-images-amazon.com/images/*/ape/sf/MAsf-*_.js diff --git a/MobileFilter/sections/whitelist.txt b/MobileFilter/sections/whitelist.txt index 0fff9df1bb7..afa9ef6e441 100644 --- a/MobileFilter/sections/whitelist.txt +++ b/MobileFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! White list. Fixing filtration errors (false-positive) +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! ##### TEMPORARY START ##### ! diff --git a/RussianFilter/sections/adservers.txt b/RussianFilter/sections/adservers.txt index b38a0710ed1..025089654cf 100644 --- a/RussianFilter/sections/adservers.txt +++ b/RussianFilter/sections/adservers.txt @@ -1,5 +1,11 @@ ! -! Содержит доменные имена, использующиеся рекламными сетями. +! This section contains the list of third-party advertising networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! ! ||adblocksosal.ru^$third-party ||unhwav.com^ diff --git a/RussianFilter/sections/adservers_firstparty.txt b/RussianFilter/sections/adservers_firstparty.txt index 3a1959cb645..8fdc80e1106 100644 --- a/RussianFilter/sections/adservers_firstparty.txt +++ b/RussianFilter/sections/adservers_firstparty.txt @@ -1,5 +1,11 @@ ! -! Section contains the list of advertising networks, which are hosted on non advertising sites as subdomains +! This section contains the list of advertising networks domains, which are hosted on non advertising sites as subdomains. +! Note, that we only put rules that block full subdomains here and not URL parts (there's `general_url.txt` for that). +! +! Good: ||ad.doubleclick.net^ +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||legitwebsite.com^$third-party (should be in adservers.txt) +! ! ||t.sur.new.gorodkirov.ru^ ||dsp-eu.surfy.tech^ diff --git a/RussianFilter/sections/antiadblock.txt b/RussianFilter/sections/antiadblock.txt index 58e75116432..0761dd2f491 100644 --- a/RussianFilter/sections/antiadblock.txt +++ b/RussianFilter/sections/antiadblock.txt @@ -1,5 +1,11 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) ! ! AdBlocksBuilder .com/resources/draw_script.js$third-party diff --git a/RussianFilter/sections/css_extended.txt b/RussianFilter/sections/css_extended.txt index 0d9ad7fb23d..5eac18730d4 100644 --- a/RussianFilter/sections/css_extended.txt +++ b/RussianFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! sdamgia.ru sdamgia.ru#?#center > script[src^="https://pagead2.googlesyndication.com/"]:upward(1) diff --git a/RussianFilter/sections/general_elemhide.txt b/RussianFilter/sections/general_elemhide.txt index 9cdad809182..931606c3b42 100644 --- a/RussianFilter/sections/general_elemhide.txt +++ b/RussianFilter/sections/general_elemhide.txt @@ -1,7 +1,9 @@ ! -! CSS-правила, общие и применяемые на всех доменах. -! Чем меньше мы сюда добавляем, тем лучше. -! Именно из-за них рендеринг страницы работает медленнее. +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) +! ! ! Browsers ads ##a[href^="https://ya-distrib.ru/r/"] diff --git a/RussianFilter/sections/general_extensions.txt b/RussianFilter/sections/general_extensions.txt index 95781dc87c7..e5dfdbbcb9d 100644 --- a/RussianFilter/sections/general_extensions.txt +++ b/RussianFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !----------------------- !------- JS ------------ !----------------------- diff --git a/RussianFilter/sections/general_url.txt b/RussianFilter/sections/general_url.txt index 8343edc2907..3f0e1a50a51 100644 --- a/RussianFilter/sections/general_url.txt +++ b/RussianFilter/sections/general_url.txt @@ -1,9 +1,11 @@ ! -! Секция содержит популярные имена баннеров или скриптов, -! используемые для загрузки рекламы. -! Пишем сюда все, что не содержит конкретного доменого имени. +! This section contains the list of generic blocking rules. ! -! Примеры рекламных адресов. Возможно, в дальнейшем общие правила из них получатся +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! +! +! Advertising URL Examples. Probably, we will do common rules from them. ! http://b.povarenok.ru/show.php?placeid=*&zone=&rnd=* ! http://twodrive.su/code/bshow.php?id=*&dimension=*&new_dimension=* ! http://p.rclmc.top/*.html?b=*&x=4&y=1&s=25&c=*&ref=&prot=http&h=*&mkey=*&* diff --git a/RussianFilter/sections/news_exchange.txt b/RussianFilter/sections/news_exchange.txt index 885dd6ce137..4ea5a1ebc95 100644 --- a/RussianFilter/sections/news_exchange.txt +++ b/RussianFilter/sections/news_exchange.txt @@ -1,5 +1,9 @@ ! -! Новостные тизерки +! This section contains the list of the base rules that block news teasers. +! +! Good: ||smi24.kz^$third-party +! Bad: ||smi24.kz/banners/ (should be in specific.txt) +! ! ||smi24.kz^$third-party ||virtonnews.com^$third-party diff --git a/RussianFilter/sections/replace.txt b/RussianFilter/sections/replace.txt index 19d3d9623d5..b090dcd4729 100644 --- a/RussianFilter/sections/replace.txt +++ b/RussianFilter/sections/replace.txt @@ -1,5 +1,9 @@ ! -! The content replacement rules +! This section contains the list of the content replacement rules that block ads. Rules must be domain-specific. +! +! Good: ||example.org/video-links$replace=/vast":/vast_":/ +! Bad: ||example.org/video-links (should be in specific.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/92400 ||kinoglobus.at.ua^$replace=/РЕКЛАМА:\s// diff --git a/RussianFilter/sections/specific.txt b/RussianFilter/sections/specific.txt index b7e3cbeac7a..9e054bdcd32 100644 --- a/RussianFilter/sections/specific.txt +++ b/RussianFilter/sections/specific.txt @@ -1,5 +1,9 @@ ! -! Правила специфичные для конкретных сайтов. +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) +! ! ! Specific WS ! diff --git a/RussianFilter/sections/whitelist.txt b/RussianFilter/sections/whitelist.txt index aa329194b3e..66c672e10f1 100644 --- a/RussianFilter/sections/whitelist.txt +++ b/RussianFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! Белый список. Исправляем ошибки фильтрации. +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! !### Temporary ### diff --git a/SocialFilter/sections/css_extended.txt b/SocialFilter/sections/css_extended.txt index af3c134a6a3..142270ce454 100644 --- a/SocialFilter/sections/css_extended.txt +++ b/SocialFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against social widgets. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! elamigosedition.com#?#.sidebar > div.side-b:has(> div.side-t > span.fa-thumbs-up) ua-region.com.ua#?#.cart-company-full > div.d-flex:has(> div.main-info-sharing) diff --git a/SocialFilter/sections/general_elemhide.txt b/SocialFilter/sections/general_elemhide.txt index 639b8efd3d5..9cbd1fc5bd6 100644 --- a/SocialFilter/sections/general_elemhide.txt +++ b/SocialFilter/sections/general_elemhide.txt @@ -1,5 +1,9 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block social widgets. +! +! Good: ##.fb_widget +! Bad: example.org##.fb_share (should be in specific.txt) +! ! !+ NOT_OPTIMIZED ##.zalo-share-button diff --git a/SocialFilter/sections/general_extensions.txt b/SocialFilter/sections/general_extensions.txt index 57f2137fb28..92ef0428b6a 100644 --- a/SocialFilter/sections/general_extensions.txt +++ b/SocialFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of social blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !------------------- !-------JS---------- !------------------- diff --git a/SocialFilter/sections/general_url.txt b/SocialFilter/sections/general_url.txt index 4c356c44c58..e506e28dbf6 100644 --- a/SocialFilter/sections/general_url.txt +++ b/SocialFilter/sections/general_url.txt @@ -1,5 +1,9 @@ ! -! Contains unsorted urls +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! ! /plugins/content/jllike/* /Twitter_b_rect.$image diff --git a/SocialFilter/sections/popups.txt b/SocialFilter/sections/popups.txt index 81b3957303c..91403217d48 100644 --- a/SocialFilter/sections/popups.txt +++ b/SocialFilter/sections/popups.txt @@ -1,5 +1,9 @@ ! -! Rules for blocking social popups +! This section contains the list of the rules that block in page social popups. +! +! Good: any type of the rules will be good +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! /cdn-cgi/pe/bag2?r[]=*mailget.net /wp-content/plugins/easy-facebook-likebox/* diff --git a/SocialFilter/sections/social_trackers.txt b/SocialFilter/sections/social_trackers.txt index a01dea27fcc..3f3aa9ba1ae 100644 --- a/SocialFilter/sections/social_trackers.txt +++ b/SocialFilter/sections/social_trackers.txt @@ -1,5 +1,12 @@ ! ! This section contains rules for common trackers/buttons + +! +! This section contains the list of the rules for common trackers/buttons. +! +! Good: ||example.org^$third-party (if it's social tracker) +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ||share.gree.jp^$third-party ||twitter.countoon.com^$third-party diff --git a/SocialFilter/sections/specific.txt b/SocialFilter/sections/specific.txt index 5bfc4be5e78..731d11e5c2d 100644 --- a/SocialFilter/sections/specific.txt +++ b/SocialFilter/sections/specific.txt @@ -1,5 +1,9 @@ ! -! Contains rules for specific web sites +! This section contains the list of domain-specific rules that block social widgets. +! +! Good: example.org###rek; ||example.com/social/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) +! ! ! Common names ! ##.social:not(body) diff --git a/SocialFilter/sections/whitelist.txt b/SocialFilter/sections/whitelist.txt index 0c81805dbaa..7f231694a42 100644 --- a/SocialFilter/sections/whitelist.txt +++ b/SocialFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! Section fixing issues caused by social filter +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! #Social locker# !#if (adguard_ext_safari || adguard_app_ios || adguard_ext_android_cb) diff --git a/SpanishFilter/sections/adservers.txt b/SpanishFilter/sections/adservers.txt index c92fdf10bef..e735c8c09af 100644 --- a/SpanishFilter/sections/adservers.txt +++ b/SpanishFilter/sections/adservers.txt @@ -1,5 +1,11 @@ ! -! Section contains list of advertising networks +! This section contains the list of third-party advertising networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! ! ! https://forum.adguard.com/index.php?threads/ivoox-com-podcasts-issues.29530/ ! ||addevweb.com^$third-party diff --git a/SpanishFilter/sections/antiadblock.txt b/SpanishFilter/sections/antiadblock.txt index 591984bb63f..1cb0bb44fd3 100644 --- a/SpanishFilter/sections/antiadblock.txt +++ b/SpanishFilter/sections/antiadblock.txt @@ -1,5 +1,11 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) ! ! AdRegain tunovelaligera.com#%#//scriptlet("abort-on-property-write", "adregain_wall") diff --git a/SpanishFilter/sections/css_extended.txt b/SpanishFilter/sections/css_extended.txt index ad107d23dc3..05181a00fef 100644 --- a/SpanishFilter/sections/css_extended.txt +++ b/SpanishFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/24801 yahoo.com#?#ul[class^="Mb(0)"] > li.js-stream-content:has(> div > a[rel="nofollow noopener noreferrer"]+div:contains(Patrocinado)) diff --git a/SpanishFilter/sections/general_elemhide.txt b/SpanishFilter/sections/general_elemhide.txt index 12c8fc2407d..978ad9366fb 100644 --- a/SpanishFilter/sections/general_elemhide.txt +++ b/SpanishFilter/sections/general_elemhide.txt @@ -1,5 +1,9 @@ ! -! Section contains list general hiding rules +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) +! ! ##.publicity-content ##.publicidad diff --git a/SpanishFilter/sections/general_extensions.txt b/SpanishFilter/sections/general_extensions.txt index 6afc6222e26..757126ff5cf 100644 --- a/SpanishFilter/sections/general_extensions.txt +++ b/SpanishFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !--------------------------------------! !------- JS rules ---------------------! !--------------------------------------! diff --git a/SpanishFilter/sections/general_url.txt b/SpanishFilter/sections/general_url.txt index 918068f6ae9..bd816d3c6d0 100644 --- a/SpanishFilter/sections/general_url.txt +++ b/SpanishFilter/sections/general_url.txt @@ -1,5 +1,9 @@ ! -! Banner names +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! ! /imagenes_publicidad/* -publicidad- diff --git a/SpanishFilter/sections/replace.txt b/SpanishFilter/sections/replace.txt index a6a27624baa..f64b9accae4 100644 --- a/SpanishFilter/sections/replace.txt +++ b/SpanishFilter/sections/replace.txt @@ -1,5 +1,8 @@ ! -! The content replacement rules +! This section contains the list of the content replacement rules that block ads. Rules must be domain-specific. +! +! Good: ||example.org/video-links$replace=/vast":/vast_":/ +! Bad: ||example.org/video-links (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/91363 ||dve-streams.akamaized.net/ondemand/hls/content/*.m3u8$replace=/#EXTINF:(\d|\d\.\d+)\,\nhttps:\/\/redirector\.googlevideo\.com\/videoplayback\?[\s\S]*?&source=dclk_video_ads&[\s\S]*?\n//,domain=app.prende.tv diff --git a/SpanishFilter/sections/specific.txt b/SpanishFilter/sections/specific.txt index c1b4a57618d..c103dc430dd 100644 --- a/SpanishFilter/sections/specific.txt +++ b/SpanishFilter/sections/specific.txt @@ -1,6 +1,9 @@ -!--------------------------------------------------------! -!-------------------- Specific rules --------------------! -!--------------------------------------------------------! +! +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) +! ! ! For URL shorteners or simple sites with frequently changed ad servers. ! Incorrectly blocked domains can be excluded using regex(synchronize this regexp in all filters) diff --git a/SpanishFilter/sections/whitelist.txt b/SpanishFilter/sections/whitelist.txt index e2e9f4b6432..fcdbe997967 100644 --- a/SpanishFilter/sections/whitelist.txt +++ b/SpanishFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! White list. Fixing filtration errors (false-positive) +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/103893 @@||movistarplus.es/js/yomvi/player/publi.js diff --git a/SpywareFilter/sections/cname_trackers.txt b/SpywareFilter/sections/cname_trackers.txt index a6e789e4e19..7c0f4be7dfd 100644 --- a/SpywareFilter/sections/cname_trackers.txt +++ b/SpywareFilter/sections/cname_trackers.txt @@ -1,5 +1,9 @@ ! -! CNAME trackers +! This section contains the list of the rules are against CNAME tracking networks. +! +! Good: !#include https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/trackers/adspyglass.txt +! Bad: ||monerominer.rocks^$third-party (should be in adservers.txt) +! ! ! A8.net : a8.net disguised trackers !#include https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/trackers/a8_net.txt diff --git a/SpywareFilter/sections/cookies.txt b/SpywareFilter/sections/cookies.txt index 4aed7144f5c..21d5d9e6eb6 100644 --- a/SpywareFilter/sections/cookies.txt +++ b/SpywareFilter/sections/cookies.txt @@ -1,5 +1,10 @@ ! -! Section contains the rules for blocking cookies +! +! This section contains the list of the rules that block tracking cookies. Rules should be specific and have only only one modifier `$cookie`. +! +! Good: ||lemurov.net^$cookie=flat_r_mb +! Bad: ||monerominer.rocks^$third-party (should be in adservers.txt) +! ! !------------------------------ !---- Domain pecific rules ---- diff --git a/SpywareFilter/sections/css_extended.txt b/SpywareFilter/sections/css_extended.txt index 8d49719474c..7a1f848194a 100644 --- a/SpywareFilter/sections/css_extended.txt +++ b/SpywareFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against leftovers. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! https://github.com/AdguardTeam/AdguardFilters/issues/6281 vol.az#?##footer > .column-one-fourth[-ext-has=".line > span:contains(Sayğac)"] diff --git a/SpywareFilter/sections/general_elemhide.txt b/SpywareFilter/sections/general_elemhide.txt index b6def6ad232..61c5ffe5a7b 100644 --- a/SpywareFilter/sections/general_elemhide.txt +++ b/SpywareFilter/sections/general_elemhide.txt @@ -1,5 +1,9 @@ ! -! Hide counters images +! This section contains generic element hiding rules that block counters leftovers. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) +! ! ##amp-embed[type="taboola"] ###qoo-counter diff --git a/SpywareFilter/sections/general_extensions.txt b/SpywareFilter/sections/general_extensions.txt index 647a1d7a3a3..c4f556d8c09 100644 --- a/SpywareFilter/sections/general_extensions.txt +++ b/SpywareFilter/sections/general_extensions.txt @@ -1,4 +1,10 @@ ! +! This section contains the list of blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! ! This rule is for suppressing Google FLoC. ! Read more about it here: ! https://www.eff.org/deeplinks/2021/03/googles-floc-terrible-idea diff --git a/SpywareFilter/sections/general_url.txt b/SpywareFilter/sections/general_url.txt index 02fb52ad1d7..de962d946fb 100644 --- a/SpywareFilter/sections/general_url.txt +++ b/SpywareFilter/sections/general_url.txt @@ -1,4 +1,9 @@ ! +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! ! Blocking conversion tracking URLs that are used by WebKit ! More info: https://webkit.org/blog/11529/introducing-private-click-measurement-pcm/ ! Content blockers can prevent this: https://bugs.webkit.org/show_bug.cgi?id=197183 diff --git a/SpywareFilter/sections/mobile.txt b/SpywareFilter/sections/mobile.txt index 95708424d69..0e1b76c05b7 100644 --- a/SpywareFilter/sections/mobile.txt +++ b/SpywareFilter/sections/mobile.txt @@ -1,5 +1,9 @@ ! -! Section contains rules for mobile analytics and spyware +! This section contains the list of the rules that block mobile analytics and spyware. +! +! Good: ||adeventtracker.spotify.com^ +! Bad: ||adeventtracker.spotify.com^ (if this is everywhere, should be in tracking_servers.txt) +! ! ! Do not block pixapi.net. It causes issues ! diff --git a/SpywareFilter/sections/mobile_whitelist.txt b/SpywareFilter/sections/mobile_whitelist.txt index 15f7c6a85c5..4718261a83c 100644 --- a/SpywareFilter/sections/mobile_whitelist.txt +++ b/SpywareFilter/sections/mobile_whitelist.txt @@ -1,5 +1,8 @@ ! -! Exception rules that fix broken mobile apps and mobile websites +! This section contains the list of the base rules that fix broken mobile apps and mobile websites. Rules should be specific. +! +! Good: @@||tracker.org^$domain=m.example.org +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) ! ! ! https://github.com/AdguardTeam/AdguardFilters/issues/100669 diff --git a/SpywareFilter/sections/specific.txt b/SpywareFilter/sections/specific.txt index 077ae9da0b3..4c793fd2ac3 100644 --- a/SpywareFilter/sections/specific.txt +++ b/SpywareFilter/sections/specific.txt @@ -1,4 +1,9 @@ ! +! This section contains the list of domain-specific rules that block analytics. +! +! Good: example.org###counter; ||tracker.org/stats/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt); ||tracker.org^$third-party (should be in tracking_servers.txt) +! ! Temporary ! https://github.com/easylist/easylist/issues/1719 ! https://github.com/AdguardTeam/AdguardFilters/issues/22746 diff --git a/SpywareFilter/sections/tracking_servers.txt b/SpywareFilter/sections/tracking_servers.txt index 7dbbc4cfa8d..abd71737d41 100644 --- a/SpywareFilter/sections/tracking_servers.txt +++ b/SpywareFilter/sections/tracking_servers.txt @@ -1,4 +1,12 @@ ! +! This section contains the list of third-party tracking networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||tracker.legitwebsite.com^ (should be in tracking_servers_firstparty.txt) +! +! ! Blocking Firebase crash reporting is quite problematic: ! https://github.com/AdguardTeam/AdguardForAndroid/issues/1334#issuecomment-319302543 ! ||app-measurement.com^ diff --git a/SpywareFilter/sections/tracking_servers_firstparty.txt b/SpywareFilter/sections/tracking_servers_firstparty.txt index 92216a7650d..97a1063c1a9 100644 --- a/SpywareFilter/sections/tracking_servers_firstparty.txt +++ b/SpywareFilter/sections/tracking_servers_firstparty.txt @@ -1,5 +1,11 @@ ! -! Section contains the list of tracking servers, which are hosted on useful sites as subdomains +! This section contains the list of tracking networks domains, which are hosted on non advertising sites as subdomains. +! Note, that we only put rules that block full subdomains here and not URL parts (there's `general_url.txt` for that). +! +! Good: ||tracker.doubleclick.net^ +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||legitwebsite.com^$third-party (should be in adservers.txt) +! ! !#if (!adguard_ext_safari || !adguard_app_ios || !adguard_ext_android_cb) ! https://github.com/AdguardTeam/AdguardFilters/issues/25467 diff --git a/SpywareFilter/sections/whitelist.txt b/SpywareFilter/sections/whitelist.txt index a68c58bd248..c78a65431b9 100644 --- a/SpywareFilter/sections/whitelist.txt +++ b/SpywareFilter/sections/whitelist.txt @@ -1,4 +1,9 @@ ! +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! !### Temporary ### ! https://github.com/AdguardTeam/CoreLibs/issues/1306 diff --git a/TrackParamFilter/sections/general_url.txt b/TrackParamFilter/sections/general_url.txt index 09bad841119..7feab18a2b9 100644 --- a/TrackParamFilter/sections/general_url.txt +++ b/TrackParamFilter/sections/general_url.txt @@ -1,5 +1,12 @@ ! -! General rules +! This section contains the list of generic `$removeparam` rules that are applied on every website. +! You should only put here known parameters that are used on many websites. +! IMPORTANT: add a comment that explains where this parameter comes from (what tracking company is using it). +! Ideally, supply a link to the document that explains how this parameter is used. +! +! Good: $removeparam=utm_id +! Bad: $removeparam=utm_id,domain=example.org (for instance, should be in specific.txt) +! ! $removeparam=nx_source $removeparam=_zucks_suid diff --git a/TrackParamFilter/sections/specific.txt b/TrackParamFilter/sections/specific.txt index 9eeb15a5ea6..e5d913209fc 100644 --- a/TrackParamFilter/sections/specific.txt +++ b/TrackParamFilter/sections/specific.txt @@ -1,6 +1,9 @@ ! -! The rules for specific sites +! This section contains the list of domain-specific rules that remove URL tracking parameters. Rules have to contain only a single modifier: `removeparam`. +! In some cases, it's allowed to add content type and `$domain` modifiers. ! +! Good: ||example.org^$removeparam=cx +! Bad: ||example.org^$xmlhttprequest,redirect=noopvast-3.0 (for instance, should be in specific.txt) ! ! ! https://support.mozilla.org/pl/questions/1364964#answer-1475794 diff --git a/TrackParamFilter/sections/whitelist.txt b/TrackParamFilter/sections/whitelist.txt index 25aa40cb0e2..36e0c9aca1a 100644 --- a/TrackParamFilter/sections/whitelist.txt +++ b/TrackParamFilter/sections/whitelist.txt @@ -1,5 +1,9 @@ ! -! Fixing filtering errors +! This section contains the list of rules that fix incorrect blocking. Rules should be domain-specific and only the `removeparam` modifier is allowed. +! +! Good: @@||example.org^$removeparam=cx +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! ! ! TEMPORARY ! https://github.com/AdguardTeam/tsurlfilter/issues/24 diff --git a/TurkishFilter/sections/adservers.txt b/TurkishFilter/sections/adservers.txt index 6c1e6c953e8..7139195509c 100644 --- a/TurkishFilter/sections/adservers.txt +++ b/TurkishFilter/sections/adservers.txt @@ -1,4 +1,12 @@ ! +! This section contains the list of third-party advertising networks domains. +! Note, that we only put rules that block full domains here and not URL parts (there's `general_url.txt` for that). Also, it must be domains that are used in a third-party context. +! +! Good: ||doubleclick.net^$third-party +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||adssubdomain.legitwebsite.com^ (should be in adservers_firstparty.txt) +! +! ||tracking.ucreate.live^ ||acxdyn.com^$third-party ||krmwbimfpndwui.top^ diff --git a/TurkishFilter/sections/adservers_firstparty.txt b/TurkishFilter/sections/adservers_firstparty.txt index ee47d5021f4..4dee87efe63 100644 --- a/TurkishFilter/sections/adservers_firstparty.txt +++ b/TurkishFilter/sections/adservers_firstparty.txt @@ -1,5 +1,11 @@ ! -! Section contains the list of advertising networks, which are hosted on non advertising sites as subdomains +! This section contains the list of advertising networks domains, which are hosted on non advertising sites as subdomains. +! Note, that we only put rules that block full subdomains here and not URL parts (there's `general_url.txt` for that). +! +! Good: ||ad.doubleclick.net^ +! Bad: /banner.jpg (should be in general_url.txt) +! Bad: ||legitwebsite.com^$third-party (should be in adservers.txt) +! ! ||ads.macsonuclari.mobi^ ||ads.inegolonline.com^ diff --git a/TurkishFilter/sections/antiadblock.txt b/TurkishFilter/sections/antiadblock.txt index 5f956cfa997..c1c9bae8182 100644 --- a/TurkishFilter/sections/antiadblock.txt +++ b/TurkishFilter/sections/antiadblock.txt @@ -1,5 +1,11 @@ ! -! These rules are against all kinds of ad blocking reinjection/circumvention scripts +! First of all, this section has common rules that prevent most known ad block detections. In that case domain should be added to the common rules. +! The section contains the list of the rules are against all kinds of ads reinjection or ad-blocking circumvention scripts. If such a script does not cripple the website, we add rules to the Annoyances filter. +! Rules should generally be domain-specific. In some exceptional cases, it's allowed to add generic ones, but this should be approved by most of the maintainers. +! +! Good: ||example.org/adblock/detect.js +! Good: @@/adblocker/detect.js$domain=example.org +! Bad: ||ad.doubleclick.net^ (should be in adservers.txt) ! ! #adcontent bait zamaninvarken.com,kredi.biz.tr,kriptoradar.com,morlevha.com,bakimlikadin.net,korsanedebiyat.com,ozbeceriksizler.co,iyibeslenme.net,genelpara.com,teknop.net,kirtkirtla.com,buneymis.net,ozgunbilgi.com,azbuz.org,mustafabukulmez.com,siberkalem.com,hepgezelim.com,urfakalesi.com,gecbunlari.com,oyuncukuru.org,filmonerileri.org,hknkr.com,wblogy.com,konuneydi.com,intekno.net#@##adcontent diff --git a/TurkishFilter/sections/css_extended.txt b/TurkishFilter/sections/css_extended.txt index d504e9d3914..606142c07d3 100644 --- a/TurkishFilter/sections/css_extended.txt +++ b/TurkishFilter/sections/css_extended.txt @@ -1,5 +1,9 @@ ! -! Extended CSS rules +! This section contains the list of extended CSS rules against ads. +! Note, that rules should be domain-specific and you have to use special syntax `#?#` instead of `##`. +! +! Good: example.org#?#main > div.row:has(> div.ad) +! Bad: example.org##main > div.ad (should be in specific.txt) ! ! onedio.com#?#div.bg-white:has(> span:contains(/^Reklam$/)) diff --git a/TurkishFilter/sections/general_elemhide.txt b/TurkishFilter/sections/general_elemhide.txt index 4ac95717962..d310bcfe69e 100644 --- a/TurkishFilter/sections/general_elemhide.txt +++ b/TurkishFilter/sections/general_elemhide.txt @@ -1,4 +1,10 @@ ! +! This section contains generic element hiding rules that block ads. +! +! Good: ##.adv +! Bad: example.org##.adv (should be in specific.txt) +! +! ! https://github.com/AdguardTeam/AdguardFilters/issues/7365 ###main > .wrap.cf > .reklam ~ p[style^="background-color:"] ###main > .wrap.cf > .reklam ~ #content > .post > p[style^="background-color:"] diff --git a/TurkishFilter/sections/general_extensions.txt b/TurkishFilter/sections/general_extensions.txt index fb6d6c0f86b..15055bebb4d 100644 --- a/TurkishFilter/sections/general_extensions.txt +++ b/TurkishFilter/sections/general_extensions.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of ad blocking rules that fall under "advanced" category. +! By advanced we mean the following rule types: CSS, scriptlets, HTML filtering (`$$` marker), JS. +! +! Good: example.org#$##rek { display: none !important; }; example.org#%#//scriptlet('set-cookie', 'ad', '0'); example.org#%#document.cookie = "ad =0"; ; example.org$$script[tag-content="ad"][max-length="3000"]. +! Bad: example.org###rek (should be in specific.txt) +! !--------------------------------------! !------- JS rules ---------------------! !--------------------------------------! diff --git a/TurkishFilter/sections/general_url.txt b/TurkishFilter/sections/general_url.txt index 7edd70c927b..1d10dfd3d82 100644 --- a/TurkishFilter/sections/general_url.txt +++ b/TurkishFilter/sections/general_url.txt @@ -1,3 +1,10 @@ +! +! This section contains the list of generic blocking rules. +! +! Good: .org/ads/ +! Bad: .org/ads/$domain=example.org (for instance, should be in speficic.txt) +! +! /video_onu_yeni.php?$~third-party,subdocument /_video_onu_yeni.php?$~third-party,subdocument .com/rek/ diff --git a/TurkishFilter/sections/specific.txt b/TurkishFilter/sections/specific.txt index 9dfe4d74281..35165e804fa 100644 --- a/TurkishFilter/sections/specific.txt +++ b/TurkishFilter/sections/specific.txt @@ -1,4 +1,11 @@ ! +! +! This section contains the list of domain-specific rules that block ads. +! +! Good: example.org###rek; ||example.com/ads/ +! Bad: example.org#$##rek { display: none !important; } (for instance, should be in general_extensions.txt) +! +! ! Images hosting. Used for advertising on many sites !+ NOT_OPTIMIZED ://i.hizliresim.com^$domain=bestdizi.com|fiilmizleyeni.com|filmizle.movie|iddaanet.com|bifilmizlesene.net|dizison.com|fulldiziizleyin.org|fanfilmizle.com|gameinsano.com|diziizleyin.org|sozlerisozu.com|bedavamacizle.tv|filmkeyif.com|ispor.net|macizlesene.tv|tekparthd.net|seyirlikfilm.org|ajans32.com|higshoes.com|sendeizlesene.net|limitsizfilmizle.net|hintfilmi.net|haber32.com.tr|buyuktorbali.com|dizison.pw|technopat.net|ertehaber.com|filmmom.org|fullhdizle720p.com|duzcetv.com|unyenethaber.com|medyayenigun.net|haberant.com|dizilost.com|medya32.com diff --git a/TurkishFilter/sections/whitelist.txt b/TurkishFilter/sections/whitelist.txt index f158ad0368d..96b43e5fd06 100644 --- a/TurkishFilter/sections/whitelist.txt +++ b/TurkishFilter/sections/whitelist.txt @@ -1,4 +1,10 @@ ! +! This section contains the list of rules that fix incorrect blocking. Rules must be domain-specific. +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! +! ! https://github.com/AdguardTeam/AdguardFilters/issues/106176 silahilanlari.com#@##adslider ! https://github.com/AdguardTeam/AdguardFilters/issues/103996 diff --git a/UsefulAdsFilter/sections/usefulads.txt b/UsefulAdsFilter/sections/usefulads.txt index 41950f7f36a..cb1e813ddb7 100644 --- a/UsefulAdsFilter/sections/usefulads.txt +++ b/UsefulAdsFilter/sections/usefulads.txt @@ -1,3 +1,12 @@ +! +! This section contains the list of the rules that unblock contextual (and only contextual) ads on the search engine result pages. Rules should be domain-specific. + +! +! Good: example.org#@#.ad +! Bad: @@||example.org^$stealth (should be in AdGuard Base - whitelist_stealth.txt) +! +! +! !-------------------------------------------------------------------------------! !----------------------------- Search engine result pages ----------------------! !-------------------------------------------------------------------------------!