├── .gitignore ├── .jshintrc ├── .travis.yml ├── LICENSE.txt ├── MANIFESTO.md ├── README.md ├── assets ├── checksums.txt ├── thirdparties │ ├── abp.mozilla-hispano.org │ │ └── nauscopio │ │ │ └── filtros.txt │ ├── adblock-chinalist.googlecode.com │ │ └── svn │ │ │ └── trunk │ │ │ └── adblock.txt │ ├── adblock-czechoslovaklist.googlecode.com │ │ └── svn │ │ │ └── filters.txt │ ├── adblock-plus-japanese-filter.googlecode.com │ │ └── hg │ │ │ └── abp_jp.txt │ ├── adblock.gardar.net │ │ └── is.abp.txt │ ├── adblock.schack.dk │ │ └── block.txt │ ├── cjxlist1.googlecode.com │ │ └── svn │ │ │ └── cjxlist.txt │ ├── dl.dropboxusercontent.com │ │ └── u │ │ │ └── 1289327 │ │ │ └── abpxfiles │ │ │ └── filtri.txt │ ├── easylist-downloads.adblockplus.org │ │ ├── advblock.txt │ │ ├── bitblock.txt │ │ ├── easylist.txt │ │ ├── easylist_noelemhide.txt │ │ ├── easylistchina.txt │ │ ├── easylistdutch.txt │ │ ├── easylistgermany.txt │ │ ├── easylistitaly.txt │ │ ├── easyprivacy.txt │ │ ├── fanboy-annoyance.txt │ │ ├── fanboy-social.txt │ │ └── liste_fr.txt │ ├── gitorious.org │ │ └── adblock-latvian │ │ │ └── adblock-latvian │ │ │ └── raw │ │ │ └── master_lists │ │ │ └── latvian-list.txt │ ├── home.fredfiber.no │ │ └── langsholt │ │ │ └── adblock.txt │ ├── hosts-file.net │ │ └── ad-servers │ ├── indonesianadblockrules.googlecode.com │ │ └── hg │ │ │ └── subscriptions │ │ │ └── abpindo.txt │ ├── liste-ar-adblock.googlecode.com │ │ └── hg │ │ │ └── Liste_AR.txt │ ├── margevicius.lt │ │ └── easylistlithuania.txt │ ├── mirror1.malwaredomains.com │ │ └── files │ │ │ ├── README.md │ │ │ ├── immortal_domains.txt │ │ │ └── justdomains │ ├── pgl.yoyo.org │ │ └── as │ │ │ ├── README.md │ │ │ └── serverlist │ ├── publicsuffix.org │ │ └── list │ │ │ └── effective_tld_names.dat │ ├── raw.githubusercontent.com │ │ ├── AdBlockPlusIsrael │ │ │ └── EasyListHebrew │ │ │ │ └── master │ │ │ │ └── EasyListHebrew.txt │ │ ├── adblockpolska │ │ │ └── Adblock_PL_List │ │ │ │ └── master │ │ │ │ └── adblock_polska.txt │ │ ├── cjx82630 │ │ │ └── cjxlist │ │ │ │ └── master │ │ │ │ └── cjxlist.txt │ │ ├── k2jp │ │ │ └── abp-japanese-filters │ │ │ │ └── master │ │ │ │ └── abp_jp.txt │ │ ├── reek │ │ │ └── anti-adblock-killer │ │ │ │ └── master │ │ │ │ └── anti-adblock-killer-filters.txt │ │ ├── szpeter80 │ │ │ └── hufilter │ │ │ │ └── master │ │ │ │ └── hufilter.txt │ │ ├── tomasko126 │ │ │ └── easylistczechandslovak │ │ │ │ └── master │ │ │ │ └── filters.txt │ │ └── wiltteri │ │ │ └── wiltteri.txt │ │ │ └── master │ │ │ └── wiltteri.txt │ ├── someonewhocares.org │ │ └── hosts │ │ │ └── hosts │ ├── spam404bl.com │ │ └── spam404scamlist.txt │ ├── stanev.org │ │ └── abp │ │ │ └── adblock_bg.txt │ ├── winhelp2002.mvps.org │ │ └── hosts.txt │ ├── www.fanboy.co.nz │ │ ├── enhancedstats.txt │ │ ├── fanboy-antifacebook.txt │ │ ├── fanboy-korean.txt │ │ ├── fanboy-swedish.txt │ │ ├── fanboy-ultimate.txt │ │ └── fanboy-vietnam.txt │ ├── www.hufilter.hu │ │ └── hufilter.txt │ ├── www.malwaredomainlist.com │ │ └── hostslist │ │ │ ├── README.md │ │ │ └── hosts.txt │ ├── www.void.gr │ │ └── kargig │ │ │ └── void-gr-filters.txt │ └── www.zoso.ro │ │ └── pages │ │ └── rolist.txt ├── ublock │ ├── filter-lists.json │ ├── filters.txt │ ├── mirror-candidates.txt │ └── privacy.txt ├── update-3p-mirror.sh ├── update-3rdparties.sh ├── update-checksums.sh └── update-git.sh ├── dist ├── README.md └── description │ ├── description-ar.txt │ ├── description-bg.txt │ ├── description-ca.txt │ ├── description-cs.txt │ ├── description-da.txt │ ├── description-de.txt │ ├── description-el.txt │ ├── description-en.txt │ ├── description-es.txt │ ├── description-et.txt │ ├── description-fa.txt │ ├── description-fi.txt │ ├── description-fil.txt │ ├── description-fr.txt │ ├── description-he.txt │ ├── description-hr.txt │ ├── description-hu.txt │ ├── description-id.txt │ ├── description-it.txt │ ├── description-ja.txt │ ├── description-ko.txt │ ├── description-lv.txt │ ├── description-nl.txt │ ├── description-no.txt │ ├── description-pl.txt │ ├── description-pt_BR.txt │ ├── description-pt_PT.txt │ ├── description-ro.txt │ ├── description-ru.txt │ ├── description-sv.txt │ ├── description-tr.txt │ ├── description-uk.txt │ ├── description-vi.txt │ ├── description-zh_CN.txt │ └── description-zh_TW.txt ├── doc ├── benchmarks │ ├── cpu-usage-overall-20141226.ods │ ├── cpu-usage-overall-chart-20141226.png │ ├── cpu-usage-overall-notes.txt │ ├── mem-usage-20140918-after.png │ ├── mem-usage-20140918-before.png │ ├── mem-usage-20141223-after.png │ ├── mem-usage-20141223-before.png │ ├── mem-usage-in-page-20140919-abp.png │ ├── mem-usage-in-page-20140919-none.png │ ├── mem-usage-in-page-20140919-ublock.png │ ├── mem-usage-in-page-20141224-abp-more.png │ ├── mem-usage-in-page-20141224-abp.png │ ├── mem-usage-in-page-20141224-none.png │ ├── mem-usage-in-page-20141224-ublock.png │ ├── mem-usage-overall-20141224.ods │ ├── mem-usage-overall-chart-20141224.png │ ├── mem-usage-overall-chart-20150205.png │ ├── mem-usage-overall-chart-safari-20150205.png │ ├── privex-201407-22.ods │ ├── privex-201409-30.ods │ ├── privex-201409-30.png │ └── ublock-vs-abp-timeline.ods ├── img │ ├── 3rd-party-filters-custom.png │ ├── abp-abe.png │ ├── abp-obr.png │ ├── abp-own-mem.png │ ├── abp-vs-ublock-page-1.png │ ├── acid3test-mem.png │ ├── behind-the-scene-popup.gif │ ├── bgpage-cpu-si.comx10.png │ ├── chrome-store-david-h-mason.png │ ├── df-dd-01.png │ ├── df-dd-02.png │ ├── df-dd-03.png │ ├── df-qg-01.png │ ├── df-qg-02.png │ ├── df-qg-03.png │ ├── df-qg-04.png │ ├── df-qg-05.png │ ├── df-qg-06.png │ ├── df-qg-07.png │ ├── df-qg-08.png │ ├── df-qg-09.png │ ├── df-qg-10.png │ ├── df-qg-11.png │ ├── df-tut-01.png │ ├── df-tut-02.png │ ├── df-tut-03.png │ ├── df-tut-04.png │ ├── df-tut-05.png │ ├── df-tut-06.png │ ├── dynamic-filtering-1.png │ ├── dynamic-filtering-2.png │ ├── dynamic-filtering-3.png │ ├── dynamic-filtering-4.png │ ├── dynamic-filtering-5.png │ ├── dynamic-filtering-6.png │ ├── dynamic-filtering-7.png │ ├── dynamic-filtering-8.png │ ├── dynamic-filtering-9.png │ ├── hn-abp.png │ ├── hn-alone.png │ ├── hn-ublock.png │ ├── leaverou-adblock-is-theft.png │ ├── local-mirroring-example-1.png │ ├── local-mirroring.png │ ├── mem-footprint-at-launch-time.png │ ├── opera-300x188.png │ ├── popup-1.png │ ├── popup-1a.png │ ├── popup-1b.png │ ├── popup-1c.png │ ├── popup-1d.png │ ├── popup-1e.png │ ├── popup-1f.png │ ├── popup-2.png │ ├── privacy-benchmark.png │ ├── profiling-cosmetic-filters-v0.3.png │ ├── profiling-cosmetic-filters-v0.4.png │ ├── ss-chromium-1.png │ ├── ss-chromium-2.png │ ├── ss-chromium-3.png │ ├── ss-chromium-4.png │ ├── ss-element-picker.png │ ├── ss-opera-1.png │ ├── ss-opera-2.png │ ├── ss-opera-3.png │ ├── tips-n-tricks-001.png │ ├── tips-n-tricks-002.png │ ├── ublock-obr.png │ ├── ublock-own-mem.png │ ├── ublock-vs-abp-memory-201409-a.png │ ├── ublock-vs-abp-memory-201409-b.png │ └── wiki-hphosts.png └── media │ ├── abp-vs-ublock-ns.webm │ ├── ublock-vs-abp-cpu-2.png │ ├── ublock-vs-abp-cpu-2.webm │ └── ublock-vs-none-ns.webm ├── platform ├── chromium │ ├── manifest.json │ ├── options_ui.html │ ├── options_ui.js │ ├── vapi-background.js │ ├── vapi-client.js │ ├── vapi-common.js │ └── vapi-popup.js ├── fennec │ └── vapi-background.js ├── firefox │ ├── bootstrap.js │ ├── chrome.manifest │ ├── frameModule.js │ ├── frameScript.js │ ├── install.rdf │ ├── vapi-background.js │ ├── vapi-client.js │ ├── vapi-common.js │ └── vapi-popup.js ├── opera │ └── manifest.json └── safari │ ├── Info.plist │ ├── Settings.plist │ ├── Update.plist │ ├── vapi-background.js │ ├── vapi-client.js │ ├── vapi-common.js │ └── vapi-popup.js ├── src ├── 1p-filters.html ├── 3p-filters.html ├── _locales │ ├── ar │ │ └── messages.json │ ├── bg │ │ └── messages.json │ ├── ca │ │ └── messages.json │ ├── cs │ │ └── messages.json │ ├── da │ │ └── messages.json │ ├── de │ │ └── messages.json │ ├── el │ │ └── messages.json │ ├── en │ │ └── messages.json │ ├── es │ │ └── messages.json │ ├── et │ │ └── messages.json │ ├── fa │ │ └── messages.json │ ├── fi │ │ └── messages.json │ ├── fil │ │ └── messages.json │ ├── fr │ │ └── messages.json │ ├── he │ │ └── messages.json │ ├── hi │ │ └── messages.json │ ├── hr │ │ └── messages.json │ ├── hu │ │ └── messages.json │ ├── id │ │ └── messages.json │ ├── it │ │ └── messages.json │ ├── ja │ │ └── messages.json │ ├── ko │ │ └── messages.json │ ├── lv │ │ └── messages.json │ ├── mr │ │ └── messages.json │ ├── nb │ │ └── messages.json │ ├── nl │ │ └── messages.json │ ├── pl │ │ └── messages.json │ ├── pt_BR │ │ └── messages.json │ ├── pt_PT │ │ └── messages.json │ ├── ro │ │ └── messages.json │ ├── ru │ │ └── messages.json │ ├── sq │ │ └── messages.json │ ├── sv │ │ └── messages.json │ ├── tr │ │ └── messages.json │ ├── uk │ │ └── messages.json │ ├── vi │ │ └── messages.json │ ├── zh_CN │ │ └── messages.json │ └── zh_TW │ │ └── messages.json ├── about.html ├── asset-viewer.html ├── background.html ├── css │ ├── 1p-filters.css │ ├── 3p-filters.css │ ├── about.css │ ├── common.css │ ├── dashboard-common.css │ ├── dashboard.css │ ├── devtool-log.css │ ├── devtools.css │ ├── dyna-rules.css │ ├── fonts │ │ ├── OFL.txt │ │ └── fontawesome-webfont.ttf │ ├── popup.css │ └── whitelist.css ├── dashboard.html ├── devtool-log.html ├── devtools.html ├── dyna-rules.html ├── epicker.html ├── img │ ├── browsericons │ │ ├── icon16-off.svg │ │ ├── icon16.png │ │ ├── icon16.svg │ │ ├── icon16@2x.png │ │ ├── icon19-off.png │ │ ├── icon19.png │ │ ├── icon38-off.png │ │ └── icon38.png │ ├── help16.png │ ├── icon_128.png │ ├── icon_16.png │ └── ublock.svg ├── js │ ├── 1p-filters.js │ ├── 3p-filters.js │ ├── about.js │ ├── asset-viewer.js │ ├── assets.js │ ├── async.js │ ├── background.js │ ├── contentscript-end.js │ ├── contentscript-start.js │ ├── contextmenu.js │ ├── cosmetic-filtering.js │ ├── dashboard-common.js │ ├── dashboard.js │ ├── devtool-log.js │ ├── devtools.js │ ├── dyna-rules.js │ ├── dynamic-net-filtering.js │ ├── element-picker.js │ ├── i18n.js │ ├── messaging.js │ ├── mirrors.js │ ├── pagestore.js │ ├── popup.js │ ├── profiler.js │ ├── settings.js │ ├── start.js │ ├── static-net-filtering.js │ ├── storage.js │ ├── tab.js │ ├── traffic.js │ ├── ublock.js │ ├── udom.js │ ├── uritools.js │ ├── utils.js │ ├── whitelist.js │ └── xal.js ├── lib │ ├── publicsuffixlist.js │ ├── punycode.js │ └── yamd5.js ├── popup.html ├── settings.html └── whitelist.html └── tools ├── import-crowdin.sh ├── make-chromium.sh ├── make-clean.sh ├── make-fennec.sh ├── make-firefox-meta.py ├── make-firefox.sh ├── make-noassets.sh ├── make-opera.sh ├── make-safari-meta.py └── make-safari.sh /.gitignore: -------------------------------------------------------------------------------- 1 | *.bak 2 | *.pem 3 | /dist/build/ -------------------------------------------------------------------------------- /.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "browser": true, 3 | "devel": true, 4 | "esnext": true, 5 | "globalstrict": true, 6 | "undef": true, 7 | "unused": true, 8 | "nonew": false, 9 | "sub": true, 10 | "boss": true, 11 | "laxbreak": true, 12 | "validthis": true, 13 | "newcap": false, 14 | "-W058": true, // suppress "Missing '()' invoking a constructor" message 15 | "globals": { 16 | "self": false, 17 | "vAPI": false, 18 | "chrome": false, 19 | "safari": false, 20 | "Components": false // global variable in Firefox 21 | } 22 | } -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: ruby 2 | sudo: false 3 | env: 4 | matrix: 5 | - BROWSER=chromium EXT=zip 6 | - BROWSER=firefox EXT=xpi 7 | script: ./tools/make-${BROWSER}.sh all 8 | deploy: 9 | provider: releases 10 | api_key: 11 | secure: BCCzIkUFHKotFPABHqPHHyPP8O6ZTPmtt6Ja/JltfO9XBwf6pk9jRiNuRmx5AeETGE2BpojvfqW622q9lCOpgtBit6xkHQC/r2NKt35qMBIPgGCb7GUr5KK7lHNTVOviK9gsOuxcVTeYw3w+zmGLUTpjieELgn4tyz9E8DcOeHE= 12 | file: dist/build/uBlock.${BROWSER}.${EXT} 13 | skip_cleanup: true 14 | on: 15 | repo: gorhill/uBlock 16 | tags: true 17 | all_branches: true -------------------------------------------------------------------------------- /MANIFESTO.md: -------------------------------------------------------------------------------- 1 | ### 这里是 µBlock 的声明 2 | 3 | 1. 让**用户来决定**浏览器可以看到什么样的网页内容。 4 | 5 | uBlock 项目不支持 Adblock Plus 的_"可接受广告声明"_, 6 | 因为_"可接受广告"_实际上就是一项营销活动,源自他们追逐利润的商业计划。 7 | 8 | 只有用户才能决定他们想看什么,所以 uBlock 的唯一目的就是提供途径让用户坚持他们的选择。 9 | -------------------------------------------------------------------------------- /assets/thirdparties/abp.mozilla-hispano.org/nauscopio/filtros.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/assets/thirdparties/abp.mozilla-hispano.org/nauscopio/filtros.txt -------------------------------------------------------------------------------- /assets/thirdparties/mirror1.malwaredomains.com/files/README.md: -------------------------------------------------------------------------------- 1 | : 2 | 3 | "This malware block lists provided here are for free for noncommercial use as part of the fight against malware." 4 | -------------------------------------------------------------------------------- /assets/thirdparties/pgl.yoyo.org/as/README.md: -------------------------------------------------------------------------------- 1 | : 2 | 3 | Site does encourage use of the list, and nowhere could I find terms and 4 | conditions to use the list. Assuming it can be used freely. 5 | -------------------------------------------------------------------------------- /assets/thirdparties/www.fanboy.co.nz/fanboy-antifacebook.txt: -------------------------------------------------------------------------------- 1 | [Adblock Plus 2.0] 2 | ! Checksum: IFigFzsyqA63eW9uc9dqWg 3 | ! Title: Anti-Facebook List 4 | ! Expires: 4 days (update frequency) 5 | ! Homepage: http://www.fanboy.co.nz 6 | ! 7 | ! Warning, will break on facebook-based comment sites and may also break on some facebook apps or games. 8 | ! 9 | ! Thirdparty Filters 10 | ! 11 | ||api-read.facebook.com/restserver.php?api_key=$third-party 12 | ||api.facebook.com^$third-party 13 | ||badge.facebook.com^$third-party 14 | ||connect.facebook.com^$third-party,domain=~facebook.net|~fb.com 15 | ||connect.facebook.net^$third-party,domain=~facebook.com|~fb.com 16 | ||facebook.com/connect/$third-party 17 | ||facebook.com/dialog/oauth?display=popup$popup,domain=humorhub.org 18 | ||facebook.com/plugins/activity.php?$third-party 19 | ||facebook.com/plugins/comments.php?$third-party 20 | ||facebook.com/plugins/facepile.php?$third-party 21 | ||facebook.com/plugins/fan.php?$third-party 22 | ||facebook.com/plugins/follow.php$third-party 23 | ||facebook.com/plugins/like.php?$third-party 24 | ||facebook.com/plugins/like_box.php$third-party 25 | ||facebook.com/plugins/likebox.php?$third-party 26 | ||facebook.com/plugins/recommendations.php?$third-party 27 | ||facebook.com/plugins/recommendations_bar.php?$third-party 28 | ||facebook.com/plugins/send.php?$third-party 29 | ||facebook.com/plugins/share_button.php?$third-party 30 | ||facebook.com/plugins/subscribe.php$third-party 31 | ||facebook.com/plugins/subscribe?$third-party 32 | ||facebook.com/restserver.php?*.getStats&$third-party 33 | ||facebook.com/whitepages/wpminiprofile.php$third-party 34 | ||facebook.com/widgets/activity.php?$third-party 35 | ||facebook.com/widgets/fan.php?$third-party 36 | ||facebook.com/widgets/like.php?$third-party 37 | ||facebook.com/widgets/recommendations.php?$third-party 38 | ||fbcdn-profile-a.akamaihd.net^$third-party,domain=~facebook.com 39 | ||google.com/js/plusone.js$third-party 40 | ||graph.facebook.com/?id=$third-party 41 | ||graph.facebook.com^$xmlhttprequest,third-party 42 | ||profile.ak.fbcdn.net^$third-party,domain=~facebook.com 43 | ||scontent-a.*.fbcdn.net^$third-party,domain=~facebook.com 44 | ||spot.im/embed/scripts/launcher.js$third-party 45 | ||static.ak.fbcdn.net^$third-party,domain=~facebook.com 46 | ! 47 | ! Test Filters (For Gannett sites, which don't work anyways with Facebook blocked) 48 | ! 49 | ##.util-bar-module-firefly-visible 50 | ! 51 | ! Whitelist Filters 52 | ! 53 | @@||akamaihd.net/rsrc.php/$domain=facebook.com 54 | @@||channel.facebook.com^$domain=facebook.com 55 | @@||facebook.com/ajax/browse/$domain=facebook.com 56 | @@||facebook.com/ajax/bz$domain=facebook.com 57 | @@||facebook.com/ajax/chat/buddy_list.php$domain=facebook.com 58 | @@||facebook.com/ajax/chat/hovercard/$domain=facebook.com 59 | @@||facebook.com/ajax/hovercard/$domain=facebook.com 60 | @@||facebook.com/ajax/litestand/$domain=facebook.com 61 | @@||facebook.com/ajax/notifications/$domain=facebook.com 62 | @@||facebook.com/ajax/pagelet/$domain=facebook.com 63 | @@||facebook.com/ajax/photos/$domain=facebook.com 64 | @@||facebook.com/ajax/presence/$domain=facebook.com 65 | @@||facebook.com/ajax/typeahead/$domain=facebook.com 66 | @@||facebook.com/ajax/webstorage/$domain=facebook.com 67 | @@||facebook.com/chat/$domain=facebook.com 68 | @@||facebook.com/images/$domain=facebook.com 69 | @@||fbcdn-photos-*.akamaihd.net^$domain=facebook.com 70 | @@||fbcdn-profile-*.akamaihd.net^$domain=facebook.com 71 | @@||fbcdn-sphotos-*.akamaihd.net^$domain=facebook.com 72 | @@||fbexternal-*.akamaihd.net^$domain=facebook.com 73 | @@||scontent-*.fbcdn.net^$domain=facebook.com 74 | ! 75 | ! Problematic sites 76 | ! 77 | @@||connect.facebook.net*/all.js$domain=salon.com|damnyouautocorrect.com|southpark.cc.com|sci2.tv|pogo.com|adultswim.com|interviewmagazine.com 78 | @@||google.com/js/plusone.js$domain=abcnews.go.com|watch.nba.com 79 | @@||graph.facebook.com^$xmlhttprequest,domain=theguardian.com 80 | -------------------------------------------------------------------------------- /assets/thirdparties/www.malwaredomainlist.com/hostslist/README.md: -------------------------------------------------------------------------------- 1 | : 2 | 3 | "Our list can be used for free by anyone. Feel free to use it." 4 | -------------------------------------------------------------------------------- /assets/ublock/mirror-candidates.txt: -------------------------------------------------------------------------------- 1 | # As of now 2014-10-11: 2 | # If no regex capture: use whole URL 3 | # If regex capture: use capture index 1 4 | ajax.googleapis.com 5 | ^ajax\.googleapis\.com\/ajax\/libs\/ 6 | fonts.googleapis.com 7 | ^fonts\.googleapis\.com 8 | www.googletagservices.com 9 | ^(www\.googletagservices\.com\/tag\/js\/gpt\.js) 10 | fonts.gstatic.com 11 | ^fonts\.gstatic\.com 12 | cdn.jsdelivr.net 13 | ^cdn\.jsdelivr\.net\/ 14 | cdnjs.cloudflare.com 15 | ^cdnjs\.cloudflare\.com\/ajax\/libs\/ 16 | code.jquery.com 17 | # https://github.com/gorhill/uBlock/issues/357 18 | # Avoid CSS-based themes, because relative URLs won't work from 19 | # within a data: URI 20 | ^code\.jquery\.com\/(?!.*\/themes\/.+\.css) 21 | maxcdn.bootstrapcdn.com 22 | ^maxcdn\.bootstrapcdn\.com\/bootstrap\/.+\/.+\.js 23 | netdna.bootstrapcdn.com 24 | ^netdna\.bootstrapcdn\.com\/bootstrap\/ 25 | ^netdna\.bootstrapcdn\.com\/font-awesome\/ 26 | ^netdna\.bootstrapcdn\.com\/twitter-bootstrap\/ 27 | platform.twitter.com 28 | ^platform\.twitter\.com\/widgets\.js 29 | 30 | # https://github.com/gorhill/uBlock/issues/270#issuecomment-57913228 31 | # Ref: http://www.asp.net/ajax/cdn 32 | ajax.aspnetcdn.com 33 | # Avoid CSS-based themes, because relative URLs won't work from 34 | # within a data: URI 35 | ^ajax\.aspnetcdn\.com\/ajax\/(?!.*\/themes\/.+\.css)[^?#]+ 36 | 37 | # Ref: https://tech.yandex.ru/jslibs/ 38 | yastatic.net 39 | ^yastatic\.net\/(?:angularjs|backbone|bootstrap|d3|dojo|ext-core|highlightjs|json2|jquery|jquery-ui|mochikit|modernizr|mootools|prototype|raphael|righjs|scriptaculous|swfobject|underscore|lodash)\/ 40 | 41 | #same as yastatic, deprecated domain but still widely used 42 | yandex.st 43 | ^yandex\.st\/(?:angularjs|backbone|bootstrap|d3|dojo|ext-core|highlightjs|json2|jquery|jquery-ui|mochikit|modernizr|mootools|prototype|raphael|righjs|scriptaculous|swfobject|underscore|lodash)\/ 44 | -------------------------------------------------------------------------------- /assets/ublock/privacy.txt: -------------------------------------------------------------------------------- 1 | # µBlock -- Privacy 2 | # Status: experimental 3 | # 4 | # Experimental list: use only if you don't mind potential breakage, I just 5 | # don't have the resource to deal with lists, I do it because blocking these 6 | # are in the interest of users. 7 | # 8 | # These filters make use of the `important` filter option, which purpose is 9 | # to guarantee that a filter won't be overriden by exception filters. 10 | # 11 | # I will use data from benchmarks to decide what to add here. 12 | # https://github.com/gorhill/uBlock/wiki/%C2%B5Block-and-others:-Blocking-ads,-trackers,-malwares 13 | 14 | # https://www.eff.org/deeplinks/2014/07/white-house-website-includes-unique-non-cookie-tracker-despite-privacy-policy 15 | ||addthis.com^$third-party,important 16 | ##.addthis_toolbox 17 | 18 | # I think web sites can live without this 19 | # Commented out on 2014-10-03: I don't see it anymore in benchmarks. Will see. 20 | # Commenting it out allows me to enable this one out-of-the-box. 21 | # ||linkedin.com^$third-party,important 22 | 23 | # https://github.com/gorhill/uBlock/issues/289 24 | # Commented out, breaks to many sites. See: 25 | # https://hg.adblockplus.org/easylist/rev/9f6e928c258a#l2.12 26 | # Users can still block this one through hpHosts, MVPS, Dan Pollock's or 27 | # manually through custom filters, or 3rd-party scripts 28 | # ||www.googletagservices.com/tag/js/gpt.js 29 | -------------------------------------------------------------------------------- /assets/update-3p-mirror.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | TEMPFILE=/tmp/httpsb-asset 6 | 7 | echo "*** uBlock: updating remote assets..." 8 | 9 | THIRDPARTY_REMOTEURLS=( 10 | 'http://mirror1.malwaredomains.com/files/immortal_domains.txt' 11 | 'http://mirror1.malwaredomains.com/files/justdomains' 12 | 'http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=1&startdate%5Bday%5D=&startdate%5Bmonth%5D=&startdate%5Byear%5D=&mimetype=plaintext' 13 | 'http://www.malwaredomainlist.com/hostslist/hosts.txt' 14 | 'http://hosts-file.net/.%5Cad_servers.txt' 15 | 'http://someonewhocares.org/hosts/hosts' 16 | 'http://winhelp2002.mvps.org/hosts.txt' 17 | 'https://publicsuffix.org/list/effective_tld_names.dat' 18 | ) 19 | 20 | THIRDPARTY_LOCALURLS=( 21 | 'thirdparties/mirror1.malwaredomains.com/files/immortal_domains.txt' 22 | 'thirdparties/mirror1.malwaredomains.com/files/justdomains' 23 | 'thirdparties/pgl.yoyo.org/as/serverlist' 24 | 'thirdparties/www.malwaredomainlist.com/hostslist/hosts.txt' 25 | 'thirdparties/hosts-file.net/ad-servers' 26 | 'thirdparties/someonewhocares.org/hosts/hosts' 27 | 'thirdparties/winhelp2002.mvps.org/hosts.txt' 28 | 'thirdparties/publicsuffix.org/list/effective_tld_names.dat' 29 | ) 30 | 31 | ENTRY_INDEX=0 32 | for THIRDPARTY_REMOTEURL in ${THIRDPARTY_REMOTEURLS[@]}; do 33 | THIRDPARTY_LOCALURL=${THIRDPARTY_LOCALURLS[ENTRY_INDEX]} 34 | echo "*** Downloading" $THIRDPARTY_REMOTEURL 35 | if wget -q -T 30 -O $TEMPFILE -- $THIRDPARTY_REMOTEURL; then 36 | if [ -s $TEMPFILE ]; then 37 | if ! cmp -s $TEMPFILE $THIRDPARTY_LOCALURL; then 38 | echo " New version found: $THIRDPARTY_LOCALURL" 39 | if [ "$1" != "dry" ]; then 40 | mv $TEMPFILE $THIRDPARTY_LOCALURL 41 | fi 42 | fi 43 | fi 44 | fi 45 | let ENTRY_INDEX+=1 46 | done 47 | 48 | -------------------------------------------------------------------------------- /assets/update-checksums.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock: generating checksums.txt file..." 6 | pushd .. 7 | truncate -s 0 assets/checksums.txt 8 | LIST="$(find assets/ublock assets/thirdparties -type f)" 9 | for ENTRY in $LIST; do 10 | echo `md5sum $ENTRY` >> assets/checksums.txt 11 | done 12 | popd 13 | 14 | echo "*** uBlock: checksums updated." 15 | 16 | -------------------------------------------------------------------------------- /assets/update-git.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock: git adding changed assets..." 6 | git add --update --ignore-removal --ignore-errors ./* 7 | echo "*** uBlock: git committing assets..." 8 | git commit -m 'update of third-party assets' 9 | echo "*** uBlock: git pushing assets to remote master..." 10 | git push origin master 11 | 12 | echo "*** uBlock: git done." 13 | 14 | -------------------------------------------------------------------------------- /dist/README.md: -------------------------------------------------------------------------------- 1 | ## INSTALL 2 | 3 | - Download and unzip `ublock_{version}.zip` ([latest release desirable](https://github.com/gorhill/uBlock/releases)). 4 | - Rename the unzipped directory to `ublock` 5 | - When you later update manually, replace the **content** of the `ublock` folder with the **content** of the latest zipped version. 6 | - This will ensure that all the extension settings will be preserved 7 | - As long as the extension loads **from same folder path from which it was originally installed**, all your settings will be preserved. 8 | - Go to chromium/chrome *Extensions*. 9 | - Click to check *Developer mode*. 10 | - Click *Load unpacked extension...*. 11 | - In the file selector dialog: 12 | - Select the directory `ublock` which was created above. 13 | - Click *Open*. 14 | 15 | The extension will now be available in your chromium/chromium-based browser. 16 | 17 | Remember that you have to update manually also. For some users, updating manually is actually an advantage because: 18 | - You can update when **you** want 19 | - If ever a new version sucks, you can easily just re-install the previous one 20 | -------------------------------------------------------------------------------- /dist/description/description-ar.txt: -------------------------------------------------------------------------------- 1 | مانع إعلانات كفوء: خفيف على الذاكرة و المعالج, على الرغم من قدرته على تحميل و تطبيق الألاف من الفلاتر أكثر من بعض أشهر مانعي الإعلانات. 2 | 3 | توضيح عام لكفاءة الإضافة: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | الإستخدام: زر التشغيل الكبير في النافذة المنبثقة هو لتعطيل أو تشغيل ميكروبلوك للموقع الحالي. هو ينطبق على الموقع الحالي فقط، و ليس زر تشغيل عام. 6 | 7 | *** 8 | 9 | مع مرونته، هو أكثر من مجرد "مانع إعلانات": بإمكانه أيضا قراءة و إنشاء فلاتر من ملفات الإستقبال. 10 | 11 | فلاتر حديثة، هذه القوائم من الفلاتر يتم تحميلها و تطبيقها: 12 | 13 | - EasyList 14 | - قائمة خادم الإعلانات لـPeter Lowe 15 | - EasyPrivacy 16 | - نطاقات البرامج الضارة 17 | - نطاقات البرامج الضارة الطويلة الأجل 18 | - قوائم نطاقات البرامج الضارة 19 | 20 | يوفر لك قوائم أكثر لتختار منها إذا كنت ترغب: 21 | 22 | قائم التتبع المحسنة لـFanboy 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - و الكثير من القوائم الأخرى. 28 | 29 | طبعا، كلما مكَّنتَ فلاتر أكثر، كلما ازداد أثرها على الذاكرة. حتى مع الرغم من إضافة القوائم الإضافية لـFanboy، و قوائم تتبع إعلان hpHost، ما زال بإمكان µBlock العمل بأدنى أثر على الذاكرة أفضل من بعض أشهر قوائم التتبع. 30 | 31 | أيضا، كن على علم أن تحديد بعض من هذه القوائم الإضافية قد يؤدي إلى إمكانية أعلى لتعطيل المواقع -- خصوصا تلك القوائم التي تستخدم عادة كملفات مضيفة. 32 | 33 | *** 34 | 35 | بدون وجود قوائم الفلترات, هذه الإضافة عديمة القيمة. إذن إن كانت لديك الرغبة في المساهمة، فكر في أولئك الذين يعملون بجد لصيانة قوائم الفلترات التي تستخدمها، التي تمت إتاحتها لك لتسخدمها مجَّاناََ. 36 | 37 | *** 38 | 39 | مجاناً. 40 | مفتوح المصدر مع رخصة (GPLv3) 41 | للمستخدمين من طرف مستخدمين أخرين. 42 | 43 | المساهمون في Github: 44 | https://github.com/gorhill/uBlock/graphs/contributors 45 | المساهمون في Crowdin: 46 | https://crowdin.net/project/ublock 47 | 48 | *** 49 | 50 | الإضافة في قيد الإنجاز، خذ هذا في عين الإعتبار عندما تستعرضها. 51 | 52 | سجل التغييرات للمشروع: 53 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-bg.txt: -------------------------------------------------------------------------------- 1 | Ефикасен блокер: с малко използване на паметта и процесора, но същевременно способен да зарежда и налага хиляди допълнителни филтри в сравнение с други популярни блокери. 2 | 3 | Илюстрация на неговата ефикасност: 4 | https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 5 | 6 | Използване: Големият бутон за "Включване" в изскачащият прозорец служи за трайно включване/изключване на µBlock за текущия сайт. Той се отнася само за текущия сайт, не е глобален бутон за включване. 7 | 8 | *** 9 | 10 | Гъвкав, той е повече от "блокер на реклами": може да чете и създава филтри от hosts файлове. 11 | 12 | При първоначално използване са заредени и наложени следните списъци с филтри: 13 | 14 | - EasyList 15 | - Списък с рекламни сървъри от Peter Lowe 16 | - EasyPrivacy 17 | - Вредоносни домейни 18 | - Вредоносни домейни с дълъг живот 19 | - Списък с вредоносни домейни 20 | 21 | Aко желаете, на разположение са допълнителни списъци, които да изберете: 22 | 23 | - разширен проследяващ списък от Fanboy 24 | - хост файл от Dan Pollock 25 | - рекламни и проследяващи сървъри от hpHosts 26 | - MVPS HOSTS 27 | - Spam404 28 | - и много други 29 | 30 | Разбира се, колкото повече списъци включите, толкова по-голямо е използването на паметта. Въпреки това, дори и след добавяне на двата допълнителни списъка от Fanboy, рекламните и проследяващи сървъри от hpHosts, µBlock използва по-малко памет в сравнение с други много популярни блокери на пазара. 31 | 32 | Също така, имайте предвид, че избирането на някои от допълнителните списъци може да доведе до по-голяма вероятност от неправилно функциониране на уебсайтове -- особено тези списъци, които по принцип се използват като хост файлове. 33 | 34 | *** 35 | 36 | Без предварително зададените списъци с филтри, това разширение е нищо. Така че, ако някога наистина искате да допринесете с нещо, помислете за хората, работещи усилено по поддържането на списъците с филтри, предоставени ви за безплатно използване от всички. 37 | 38 | *** 39 | 40 | Безплатно. 41 | Отворен код с публичен лиценз (GPLv3) 42 | За потребители от потребителите. 43 | 44 | Сътрудници @ Github: https://github.com/gorhill/uBlock/graphs/contributors 45 | Сътрудници @ Crowdin: https://crowdin.net/project/ublock 46 | 47 | *** 48 | 49 | Това е доста ранна версия, имайте го предвид, когато я разглеждате. 50 | 51 | Списък с промени на проекта: 52 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-ca.txt: -------------------------------------------------------------------------------- 1 | Un bloquejador eficient: el consum de memòria i de processador és baix però, no obstant això, pot carregar i aplicar milers de filtres més que altres bloquejadors coneguts. 2 | 3 | Gràfic de l'eficiència: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Ús: El gran botó d'engegada de la finestra emergent serveix per a desactivar/activar permanentment el µBlock per al lloc web actual. No és un botó d'engegada general de l'extensió. 6 | 7 | *** 8 | 9 | Flexible, és més que un "bloquejador d'anuncis": també pot llegir i crear filtres a partir de fitxers hosts. 10 | 11 | Per defecte, es carreguen i s'apliquen aquestes llistes de filtres: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Dominis de malware 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Si voleu, podeu seleccionar altres llistes disponibles: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - I altres 28 | 29 | Òbviament, com més filtres activeu, més gran serà el consum de memòria. Però fins i tot després d'afegir dues llistes extra de Fanboy, hpHosts’s Ad and tracking servers, el µBlock encara té un consum de memòria inferior al d'altres bloquejadors coneguts. 30 | 31 | També heu de ser conscient que seleccionant algunes d'aquestes llistes extra és més probable trobar-se amb llocs webs inservibles -- especialment aquelles llistes que s'utilitzen normalment com a fitxer de hosts. 32 | 33 | *** 34 | 35 | Sense les llistes predefinides de filtres, aquesta extensió no és res. Així que, si en cap moment voleu fer una aportació, penseu en les persones que treballen durament per a mantenir les llistes de filtres que utilitzeu, a disposició de tothom de manera gratuïta. 36 | 37 | *** 38 | 39 | Lliure. 40 | Codi obert amb llicència pública (GPLv3) 41 | Per usuaris per a usuaris. 42 | 43 | Col·laboradors a Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Col·laboradors a Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Aquesta és, en certa manera, una versió primitiva. Tingueu-ho en compte quan en doneu la vostra opinió. 49 | 50 | Registre de canvis del projecte: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-cs.txt: -------------------------------------------------------------------------------- 1 | Efektivní blokovač: nezanechává velké stopy, nezatěžuje paměť a CPU, a přesto může načítat a využívat o několik tisíc filtrů více, než jiné populární blockery. 2 | 3 | Grafický přehled jeho účinnosti: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Použití: Velký vypínač ve vyskakovacím okně trvale povolí/zakáže µBlock pro otevřenou stránku. Funguje pouze pro aktivní webovou stránku, není to obecný vypínač. 6 | 7 | *** 8 | 9 | Flexibilní, více než jen "blokovač reklam": umí také číst a vytvářet filtry z hosts souborů. 10 | 11 | Po instalaci jsou načteny a použity tyto filtry: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Pokud chcete, můžete si vybrat tyto další filtry: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - A mnoho dalších 28 | 29 | Čím více filtrů je povoleno, tím je samozřejmě větší stopa v paměti. I přesto má ale µBlock i po přidání dvou dalších seznamů od Fanboye a "hpHosts’s Ad and tracking servers" menší vliv na paměť než mnohé další velmi populární blockery. 30 | 31 | Dále mějte na paměti, že vybírání více filtrů zvyšuje šanci chybného zobrazení webů -- především u seznamů, které se normálně používají jako hosts soubory. 32 | 33 | *** 34 | 35 | Bez předvolených seznamů filtrů by toto rozšíření bylo k ničemu. Pokud tedy opravdu budete chtít něčím přispět, myslete na lidi, kteří spravují vámi používané seznamy filtrů a uvolňují je pro všechny zdarma. 36 | 37 | *** 38 | 39 | Svobodný software. 40 | Open source s veřejnou licencí (GPLv3) 41 | Od uživatelů pro uživatele. 42 | 43 | Přispěvatelé na Githubu: https://github.com/gorhill/uBlock/graphs/contributors 44 | Přispěvatelé na Crowdinu: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Jde o poměrně ranou verzi, mějte to na paměti při recenzování. 49 | 50 | Change log projektu: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-da.txt: -------------------------------------------------------------------------------- 1 | En effektiv blocker: let på hukommelse og CPU fodaftryk, og endnu kan indlæse og håndhæve tusindvis flere filtre end andre populære blokkere derude. 2 | 3 | Illustreret oversigt over dens effektivitet: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP :-Efficiency-compared 4 | 5 | Brug: Den Store power knap i pop-up-vinduet er til permanent deaktivere/aktivere µBlock for det aktuelle websted. Det gælder kun for det aktuelle websted , det er ikke en global afbryderknap. 6 | 7 | *** 8 | 9 | Fleksibel, det er mere end en "ad blocker": det kan også læse og oprette filtre fra hosts-filer. 10 | 11 | Ud af boksen, er disse lister over filtre indlæses og håndhævet: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Flere lister er tilgængelige for dig at vælge når du ønsker det: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - Osv. 28 | 29 | Selvfølgelig, jo flere aktive filtre mere jo højere hukommelse fodtryk. Endnu, selv efter at tilføje Fanboys to ekstra lister, Hphosts's annonce og tracking servere, µBlock stadig har en ringere hukommelse footprint end andre meget populære blokkere derude. 30 | 31 | Desuden være opmærksom på at vælge nogle af disse ekstra lister kan føre til højere sandsynlighed for webstedet brud - især de lister, der normalt anvendes som host-filel. 32 | 33 | *** 34 | 35 | Uden de forudindstillede lister over filtre er denne udvidelse intet. Så hvis du nogensinde virkelig ønsker at bidrage med noget, tænk på de mennesker, der arbejder hårdt for at vedligeholde filterlister, du bruger, som blev stillet til rådighed til brug af alle gratis. 36 | 37 | *** 38 | 39 | Gratis. 40 | Open source med offentlige licens (GPLv3) 41 | For brugere af brugere. 42 | 43 | Bidragydere @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Bidragydere @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Det er ganske en tidlig version, holde dette i tankerne, når du gennemser. 49 | 50 | Projekt Ændringslog: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-de.txt: -------------------------------------------------------------------------------- 1 | Ein effizienter Blocker: Geringer Speicherbedarf und niedrige CPU-Belastung - und dennoch werden Tausende an Filtern mehr angewendet als bei anderen populären Blockern. 2 | 3 | Ein illustrierter Überblick über seine Effizienz: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Benutzung: Der An-/Ausschaltknopf beim Klicken des Erweiterungssymbols dient zum An-/Ausschalten von µBlock auf der aktuellen Webseite. Dies wirkt sich also nur auf die aktuelle Webseite aus und nicht global. 6 | 7 | *** 8 | 9 | µBlock ist flexibel, denn es ist mehr als ein "Werbeblocker": Es verarbeitet auch Filter aus mehreren hosts-Dateien. 10 | 11 | Standardmäßig werden folgende Filterlisten geladen und angewandt: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Auf Wunsch können zusätzliche Listen ausgewählt werden: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - etc. 28 | 29 | Natürlich ist der Speicherbedarf umso höher, desto mehr Filter angewandt werden. Aber selbst mit den zwei zusätzlichen Listen von Fanboy und hpHosts’s Ad and tracking servers ist der Speicherbedarf von µBlock geringer als bei anderen sehr populären Blockern. 30 | 31 | Bedenke allerdings, dass durch die Wahl zusätzlicher Listen die Wahrscheinlichkeit größer wird, dass bestimmte Webseiten nicht richtig geladen werden - vor allem bei Listen, die normalerweise als hosts-Dateien verwendet werden. 32 | 33 | *** 34 | 35 | Ohne die vorgegebenen Filterlisten ist diese Erweiterung nichts. Wenn du also etwas beitragen möchtest, dann denke an die Menschen, die hart dafür arbeiten, die von dir benutzten Filterlisten zu pflegen, und diese für uns alle frei verfügbar gemacht haben. 36 | 37 | *** 38 | 39 | Kostenlos. 40 | Open source mit Public License (GPLv3) 41 | Für Benutzer von Benutzern. 42 | 43 | Mitwirkende @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Mitwirkende @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Dies ist eine ziemlich frühe Version - bitte denke daran, wenn du sie bewertest. 49 | 50 | Change log des Projekts: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-el.txt: -------------------------------------------------------------------------------- 1 | Ένας αποτελεσματικός blocker: παρόλο το ελαφρύ αποτύπωμα του στη μνήμη και στον επεξεργαστή μπορεί να εφαρμόσει χιλιάδες περισσότερα φίλτρα σε σχέση με τους υπόλοιπους διάσημους blockers. 2 | 3 | Εικονογραφημένη επισκόπηση της αποτελεσματικότητάς του: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP :-efficiency-compared 4 | 5 | Χρήση: Το μεγάλο on/off κουμπί στο αναδυόμενο παράθυρο απενεργοποιεί/ενεργοποιεί μόνιμα την τρέχουσα ιστοσελίδα. Αυτό ισχύει για την τρέχουσα τοποθεσία web μόνο, δεν είναι ένα καθολικό κουμπί λειτουργίας. 6 | 7 | *** 8 | 9 | Ευέλικτο, είναι περισσότερο από ένα "ad blocker": μπορεί επίσης να διαβάσει και να δημιουργήσει φίλτρα από αρχεία hosts. 10 | 11 | Εξ'αρχής, αυτές οι λίστες είναι φορτωμένες και ενεργοποιημένες: 12 | 13 | - EasyList 14 | - Λίστα διαφημίσεων του Peter Lowe 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Περισσότερες λίστες είναι διαθέσιμες για επιλογή εάν το επιθυμείτε: 21 | 22 | - Ενισχυμένη tracking λίστα του Fanboy 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - και άλλα... 28 | 29 | Φυσικά, όσο περισσότερα φίλτρα ενεργοποιούνται, τόσο μεγαλύτερη η χρήση μνήμης. Παρ'όλα αυτά, ακόμα κι αν προστεθούν οι δύο έξτρα λίστες του Fanboy, το hpHosts's Ad και tracking εξυπηρετητές, το μBlock ακόμα χρησιμοποιεί χαμηλότερη μνήμη από άλλους δημοφιλείς blockers εκεί έξω. 30 | 31 | Επίσης, έχετε υπ'όψην ότι διαλέγοντας μερικές από τις έξτρα λίστες μπορεί να οδηγήσει σε πιθανό σφάλμα στην ιστοσελίδα -- ειδικά εκείνες που κανονικά χρησιμοποιούνται σαν host αρχεία. 32 | 33 | *** 34 | 35 | Χωρίς τις υπάρχουσες λίστες φίλτρων, αυτή η επέκταση είναι ένα τίποτα. Εάν ποτέ θελήσετε πραγματικά να συνεισφέρετε, σκεφτείτε τους ανθρώπους που εργάζονται σκληρά για να διατηρήσουν τις λίστες φίλτρων που χρησιμοποιείτε, οι οποίες διατέθηκαν σε όλους δωρεάν. 36 | 37 | *** 38 | 39 | Δωρεάν. 40 | Ανοιχτού κώδικα με άδεια δημόσιας χρήσης (GPLv3) 41 | Από τους χρήστες για τους χρήστες. 42 | 43 | Συνεισφέροντες @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Συνεισφέροντες @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Είναι μια αρκετά πρόωρη έκδοση, λάβετε το υπόψη κατά την εξέταση. 49 | 50 | Αρχείο αλλαγών του πρότζεκτ: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-en.txt: -------------------------------------------------------------------------------- 1 | An efficient blocker: easy on memory and CPU footprint, and yet can load and enforce thousands more filters than other popular blockers out there. 2 | 3 | Illustrated overview of its efficiency: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Usage: The big power button in the popup is to permanently disable/enable µBlock for the current web site. It applies to the current web site only, it is not a global power button. 6 | 7 | *** 8 | 9 | Flexible, it's more than an "ad blocker": it can also read and create filters from hosts files. 10 | 11 | Out of the box, these lists of filters are loaded and enforced: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | More lists are available for you to select if you wish: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - And many others 28 | 29 | Of course, the more filters enabled, the higher the memory footprint. Yet, even after adding Fanboy's two extra lists, hpHosts’s Ad and tracking servers, µBlock still has a lower memory footprint than other very popular blockers out there. 30 | 31 | Also, be aware that selecting some of these extra lists may lead to higher likelihood of web site breakage -- especially those lists which are normally used as hosts file. 32 | 33 | *** 34 | 35 | Without the preset lists of filters, this extension is nothing. So if ever you really do want to contribute something, think about the people working hard to maintain the filter lists you are using, which were made available to use by all for free. 36 | 37 | *** 38 | 39 | Free. 40 | Open source with public license (GPLv3) 41 | For users by users. 42 | 43 | Contributors @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Contributors @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | It's quite an early version, keep this in mind when you review. 49 | 50 | Project change log: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-es.txt: -------------------------------------------------------------------------------- 1 | Un bloqueador eficiente: con bajo consumo de memoria y CPU, es capaz de cargar y aplicar miles más de filtros en comparación con otros bloqueadores populares. 2 | 3 | Ejemplo con imágenes ilustrando su eficiencia (en inglés): https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Uso: El botón grande de apagado/encendido en la ventana de la aplicación, es para desactivar/activar µBlock permanentemente en el sitio web actual. Aplica solo al sitio web actual, no activa o desactiva la extensión de forma general. 6 | 7 | *** 8 | 9 | Flexible, es más que un "ad blocker": también puede leer y crear filtros desde archivos hosts. 10 | 11 | Por defecto ya trae configuradas las siguientes listas de filtros: 12 | 13 | - EasyList 14 | - Lista de servidores de anuncios de Peter Lowe 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Otras listas disponibles pueden ser seleccionadas, si se desea: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - Etc. 28 | 29 | Por supuesto, mientras más filtros se activen, mayor será el consumo de memoria. No obstante, incluso después de agregar las dos listas adicionales de Fanboy y la 'hpHosts’s Ad and tracking servers', µBlock consume menos memoria que otros bloqueadores similares. 30 | 31 | También tenga en cuenta que seleccionar algunas de estas listas adicionales puede conducir a una mayor probabilidad de aparición de problemas al mostrar un sitio web -- especialmente las listas utilizadas normalmente como archivo hosts. 32 | 33 | *** 34 | 35 | Sin las listas preestablecidas de filtros, esta extensión no sería nada. Así que si alguna vez realmente quieres aportar algo, piensa en las personas que trabajan duro para mantener estas listas de filtros, disponibles de forma gratuita para todos. 36 | 37 | *** 38 | 39 | Libre. 40 | Código abierto con licencia pública (GPLv3) 41 | Hecho para usuarios por los usuarios. 42 | 43 | Colaboradores @ Github (en inglés): https://github.com/gorhill/uBlock/graphs/contributors 44 | Colaboradores @ Crowdin (en inglés): https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Esta es una versión en desarrollo, por favor tómelo en cuenta a la hora de dar su evaluación. 49 | 50 | Registro de cambios del proyecto: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-et.txt: -------------------------------------------------------------------------------- 1 | Tõhus blokeerija: kasutab vähe mälu ja protsessorit ning sellegipoolest suudab laadida ja kasutada mitu korda rohkem filtreid kui teised tuntud blokeerijad. 2 | 3 | Laienduse kasulikkuse täpne ülevaade: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Kasutamine: hüpikaknas oleva suure rohelise nupu kaudu on võimalik µBlock praegusel lehel püsivalt keelata/lubada. See käib ainult hetkel avatud lehe, mitte kõikide saitide kohta. 6 | 7 | *** 8 | 9 | Paindlik, midagi rohkemat kui ainult "reklaamide blokeerija" - laiendus suudab lugeda ja luua filtreid ka domeenifailidest. 10 | 11 | Laienduse installimisel kasutatakse järgnevaid soovitatud filtreid: 12 | 13 | - EasyList 14 | - Peter Lowe reklaamiserveri loend 15 | - EasyPrivacy 16 | - Pahavara levitavad domeenid 17 | - Aegunud pahavara domeenid 18 | - Pahavara domeenide loend 19 | 20 | Lisaks neile on veel saadaval: 21 | 22 | - Fanboy täiustatud jälitusloend 23 | - Dan Pollock'i domeenifail 24 | - hpHosts'i reklaami- ja jälitusserverid 25 | - MVPS HOSTS 26 | - Spam404 27 | - Ja paljud teised 28 | 29 | Mida rohkem filtreid on kasutusel, seda suurem on mälu kasutatavus. Siiski, pärast Fanboy kahe lisaloendi - hpHosts'i reklaami- ja jälitusserverite lisamist kasutab µBlock palju vähem mälu kui ülejäänud tuntud blokeerijad. 30 | 31 | Lisaks pidage meeles, et täiendavate loendite lisamine tõstab saitide valesti kuvamise ohtu -- eriti domeenilistide puhul. 32 | 33 | *** 34 | 35 | Ilma soovitatud loenditeta poleks laienduse kasutamisel mõtet. Kui peaksite kunagi tahtma lisada oma panuse siis mõelge nende peale, kes on töötanud kogu südamest selle nimel, et loendid oleksid kasutamiskõlblikud ning tasuta kättesaadavad. 36 | 37 | *** 38 | 39 | Tasuta. 40 | Avatud lähtekoodiga avaliku litsentsiga (GPLv3) 41 | Kasutajatelt kasutajaile. 42 | 43 | Toetajad Github'is: 44 | https://github.com/gorhill/uBlock/graphs/contributors 45 | Toetajad Crowdin'is: https://crowdin.net/project/ublock 46 | 47 | *** 48 | 49 | Laienduse kasutamisel pange tähele, et tegemist on uue laiendusega. 50 | 51 | Projekti muudatuste logi: 52 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-fa.txt: -------------------------------------------------------------------------------- 1 | یک بلاکر موثر: نیاز به پردازش حافظه و سی پی یو کمتر و در عین حال اجرای هزاران فیلتر بیشتر از سایر رقبای بلاکر موجود. 2 | 3 | بررسی تصویری از کارایی این محصول: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | کاربرد: دکمه ی پاور بزرگ در پنجره برای فعال یا غیر فعال کردن µBlock برای صفحه ی جاری است. فقط برای همین سایت اعمال میشود، دکمه ی پاوری برای تمام سایت ها نیست. 6 | 7 | *** 8 | 9 | انعطاف پذیری آن بیشتر از "ad blocker" است: همچنین می تواند فیلتر ها را از هاست میزبان، بخواند و بسازد. 10 | 11 | بیرون از جعبه، این لیست فیلترها بارگذاری و اجرا میشوند: 12 | 13 | - EasyList 14 | - لیست سرور تبلیغاتی Peter Lowe 15 | - EasyPrivacy 16 | -دامنه های تروجان 17 | -دامنه های مخرب با عمر طولانی 18 | - لیست دامنه های تروجان 19 | 20 | اگر میخواهید لیست های بیشتر برای انتخاب شما در دسترس هستند: 21 | 22 | - ردیابی لیست پیشرفته ی Fanboy 23 | - میزبانی فایل Dan Pollock 24 | - تبلیغ و ردیابی سرور hpHosts 25 | - هاست های MVPS 26 | - اسپم 404 27 | - و بسیاری دیگر 28 | 29 | البته هرچه فیلترهای بیشتری فعال باشند، حافظه ی بیشتری اشغال خواهد شد. با اینحال، حتی پس از اضافه کردن دو لیست اضافی Fanboy و سرور های ردیابی و تبلیغ hpHosts ، میبینیم که µBlock هنوز حافظه پایین تری از دیگر برنامه های مشابه اشغال میکند. 30 | 31 | همچنین، بدانید که انتخاب برخی از این لیست ها ممکن است افزایش احتمال شکستگی وب سایت--به ویژه آنهایی که به طور معمول به عنوان میزبان فایل شناخته میشوند را در پی داشته باشد. 32 | 33 | *** 34 | 35 | بدون فهرست از پیش تعیین شده ی فیلتر، این افزونه هیچ است. پس اگر واقعا می خواهید کمکی کرده باشید، به افرادی فکر کنید که برای حفظ لیست فیلتر مورد استفاده شما سخت کار میکنند که برای استفاده همه به رایگان در دسترس باشد. 36 | 37 | *** 38 | 39 | رایگان. 40 | متن باز با مجوز عمومی (GPLv3) 41 | برای کاربران توسط کاربران. 42 | 43 | مشارکت کنندگان در گیت هاب: https://github.com/gorhill/uBlock/graphs/contributors 44 | مشارکت کنندگان در کرادین https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | این کاملا یک نسخه اولیه است، هنگام بررسی اینرا بخاطر داشته باشید. 49 | 50 | تغییرات اخیر پروژه: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-fi.txt: -------------------------------------------------------------------------------- 1 | Tehokas mainosten estäjä – käyttää vähän resursseja, mutta silti voit ladata ja pakottaa tuhansia suodatinsääntöjä enemmän kuin muut suositut mainoksia estävät lisäosat. 2 | 3 | Kuvitettu yleiskatsaus tehokkuudesta: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Käyttö: Iso virtanappi ponnahdusikkunassa on tarkoitettu pysyvästi estämään/sallimaan µBlock kyseisellä sivulla. Tämä koskee vain nykyistä sivua, ei kaikkia sivuja. 6 | 7 | *** 8 | 9 | Joustava, tämä lisäosa on enemmän kuin perinteinen "mainosten estäjä". Voit lukea ja luoda suodattimia myös hosts-tiedostoista. 10 | 11 | Nämä suodatinlistat ovat automaattisesti ladattuna ja kytketty päälle: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Halutessasi voit valita käyttöösi lisää listoja: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - Ja monia muita 28 | 29 | Jos sinulla on useita listoja käytössä, keskusmuistia kuluu enemmän. Tästä huolimatta, vaikka lisäisit Fanboyn kaksi lisälistaa ja hpHostsin listan, µBlockilla on silti pienempi muistinkulutus kuin muilla suosituilla mainosten estäjillä. 30 | 31 | Useiden listojen lisääminen saattaa aiheuttaa sivujen kaatumisen tai hajoamisen. Etenkin listat, joita käytetään normaalisti hosts-tiedostona, voivat aiheuttaa ongelmia. 32 | 33 | *** 34 | 35 | Tämä lisäosa ei tee mitään ilman suodatinlistoja. Jos siis haluat osallistua jotenkin, muistathan kaikki ne ihmiset jotka työskentelevät pitääkseen käyttämäsi suodatinlistat ajan tasalla ja saatavilla ilmaiseksi. 36 | 37 | *** 38 | 39 | Ilmainen. 40 | Avoimen lähdekoodin julkinen lisenssi (GPLv3) 41 | Käyttäjiltä käyttäjille. 42 | 43 | Kehittäjät @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Kehittäjät @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Otathan huomioon testatessasi, että käytössäsi on varsin varhainen versio. 49 | 50 | Projektin muutosloki: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-fil.txt: -------------------------------------------------------------------------------- 1 | Isang episyenteng blocker: magaan sa memorya at CPU footprint, pero naka-loload at nag-eenforce ng libo-libong mga filters kaysa sa mga ibang sikat na blockers. 2 | 3 | Isinalarawan pangkalahatang-ideya ng kahusayan ng uBlock: 4 | https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 5 | 6 | Paggamit: Ang malaking button sa sa popup ay upang permanenteng huwag paganahin / paganahin ang μBlock para sa kasalukuyang web site. Nalalapat ito sa kasalukuyang web site lamang , hindi ito pangkalahatang button. 7 | 8 | *** 9 | 10 | May kakayahang umangkop. Ito ay higit pa sa isang "ad blocker " : Maaari rin itong magtakda at lumikha ng mga filter mula sa mga host ng mga files. 11 | 12 | Ang mga listahang ito ng mga filter nag-loload at ipinapatupad : 13 | 14 | - EasyList 15 | - Peter Lowe’s Ad server list 16 | - EasyPrivacy 17 | - Malware domains 18 | - Long-lived malware domains 19 | - Malware Domains List 20 | 21 | Higit pang mga listahan ay magagamit para sa iyo upang piliin kung nanaisin: 22 | 23 | - Fanboy’s Enhanced Tracking List 24 | - Dan Pollock’s hosts file 25 | - hpHosts’s Ad and tracking servers 26 | - MVPS HOSTS 27 | - Spam404 28 | - At iba pa. 29 | 30 | Siyempre, mas maraming pinapaganang mga filter , mas mataas ang memory footprint. Ngunit , kahit ang pagdaragdag ng dalawang extra na mga listahan ng Fanboy , hpHosts’s Ad at tracking servers, ang μBlock pa rin ay may mas mababang memory footprint kaysa sa iba pang mga sikat na blockers. 31 | 32 | Gayundin, magkaroon ng kamalayan na ang pagpili ng ilan sa mga dagdag na mga listahan ay maaaring humantong sa mas mataas na posibilidad ng pagkasira ng web site - lalo na ang mga listahan na palaging ginagamit na hosts file. 33 | 34 | *** 35 | 36 | Kung walang mga preset na listahan na mga filters, ang extension na ito ay wala kwenta. Kaya kung sakaling nais mong tumulong, isipin ang mga tao nagsusumikap upang mapanatili ang mga listahan ng filter na ginagamit mo , na ginawang libre para sa lahat. 37 | 38 | *** 39 | 40 | Libre. 41 | Open source with public license (GPLv3) 42 | Para sa users by users. 43 | 44 | Mga nag-aambag @ Github: 45 | https://github.com/gorhill/uBlock/graphs/contributors 46 | Mga nag-aambag @ Crowdin: https://crowdin.net/project/ublock 47 | 48 | *** 49 | 50 | Kakalabas lang nito kaya't pag-isipan ang mga komentaryo bago magbigay ng review. 51 | 52 | Mga pagbabago sa proyekto: 53 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-fr.txt: -------------------------------------------------------------------------------- 1 | µBlock est une extension qui bloque les publicités et les pisteurs, légère en empreinte mémoire et en utilisation du processeur et qui pourtant, est capable d'utiliser et de traiter des milliers de filtres de plus que la plupart des autres bloqueurs. 2 | 3 | Consultez cette page en Anglais pour avoir une vue d'ensemble illustrée de son efficacité : https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Utilisation : Le gros bouton power dans la fenêtre pop-up permet de désactiver/activer en permanence µBlock pour le site Web en cours de consultation. Cela s'applique uniquement au site Web actuel, ce n'est pas un bouton power qui affecte entièrement le fonctionnement de l'extension. 6 | 7 | *** 8 | 9 | Flexible, µBlock ne prend pas en charge que les filtres de type Adblock, elle peut également lire et créer des filtres depuis des fichiers hosts. 10 | 11 | Par défaut, ces listes de filtrage sont chargées et traitées : 12 | 13 | - EasyList (Liste anti-publicités maintenue fréquemment à jour par la communauté) 14 | - Peter Lowe’s Ad server list (Liste de serveurs publicitaires maintenue à jour par Peter Lowe) 15 | - EasyPrivacy (Liste anti-pisteurs maintenue fréquemment à jour par la communauté) 16 | - Malware domains (Liste de protection contre des domaines malveillants) 17 | - Long-lived malware domains (Liste de protection contre des domaines malveillants existant depuis longtemps) 18 | - Malware Domains List (Autre liste de protection contre des domaines malveillants) 19 | 20 | Davantage de listes sont disponibles si vous souhaitez renforcer le blocage : 21 | 22 | - Fanboy’s Enhanced Tracking List (Liste de protection avancée contre le pistage maintenue à jour par Fanboy) 23 | - Dan Pollock’s hosts file (Fichier Hosts bloquant publicités, domaines malveillants et autres pisteurs, maintenue fréquemment à jour par Dan Pollock) 24 | - hpHosts’s Ad and tracking servers (Fichier Hosts bloquant des serveurs publicitaires et des serveurs pistant, maintenue à jour par hpHosts) 25 | - MVPS HOSTS (Fichier Hosts bloquant publicités, domaines malveillants et autres pisteurs, maintenue à jour par MVPS) 26 | - Spam404 (Liste de protection contre les spams, maintenue fréquemment à jour par la communauté) 27 | - Et plein d'autres 28 | 29 | Bien évidemment, plus vous activez de filtres, plus l'empreinte mémoire augmentera. Pourtant, même après avoir ajouté deux listes supplémentaires crées par Fanboy et le fichier Hosts d'hpHosts, µBlock utilise moins de mémoire vive que tous les autres bloqueurs de pubs populaires. 30 | 31 | Veuillez tout de même prendre en compte que le fait de choisir parmi ces listes supplémentaires peut conduire à quelques incompatibilités sur les sites Web que vous visitez, bien que ces listes soient maintenues à jour par leurs auteurs. 32 | 33 | *** 34 | 35 | Sans les listes prédéfinies de filtres, cette extension (comme d'autres) ne serait rien. Alors si vous tenez vraiment à contribuer d'une quelconque manière, pensez aux personnes travaillant dur pour maintenir à jour ces listes de filtres que vous utilisez, qui plus est proposées gratuitement à tout le monde. 36 | 37 | *** 38 | 39 | GRATUIT. 40 | Source libre avec une licence publique GPLv3 41 | Fait par des utilisateurs pour des utilisateurs. 42 | 43 | Contributeurs @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Contributeurs @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Il s'agit d'une version relativement préliminaire, veuillez garder ça à l'esprit lors de votre évaluation de l'extension. 49 | 50 | Consultez ici en Anglais le Journal des changements concernant le projet : 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-he.txt: -------------------------------------------------------------------------------- 1 | חוסם יעיל: חותמת נמוכה של המעבד והזיכרון, ועדיין יכול לטעון ולאפשר אלפי מסננים יותר מאשר חוסמים פופולריים אחרים. 2 | 3 | סקירה כוללת על היעילות שלו: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | שימוש: לחצן ההפעלה הגדול בחלון הפופאפ הוא בשביל לבטל/להפעיל את µBlock עבור האתר הנוכחי. הוא חל על האתר הנוכחי בלבד, זהו לא לחצן הפעלה גלובלי. 6 | 7 | *** 8 | 9 | גמיש, יותר מ "חוסם פרסומות": הוא יכול גם לקרוא וליצור מסננים מקבצי hosts. 10 | 11 | היישר מהקופסה, רשימות המסננים הללו נטענות ומאופשרות: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | רשימות נוספות אלו זמינות לבחירתך אם תרצה: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - ועוד רבים אחרים 28 | 29 | כמובן שככל שכמות מסננים גדולה יותר מופעלת, ככה גם חתימת הזיכרון גדולה יותר. ובכל זאת, אפילו לאחר הוספת שתי הרשימות הנוספות של Fanboy ו hpHosts’s Ad and tracking servers, ל µBlock עדיין יש חתימת זיכרון נמוכה יותר מלחוסמים פופולריים אחרים שם בחוץ. 30 | 31 | כמו כן, תהיה מודע שבחירה של חלק מהרשימות הנוספות הללו עלולה להוביל בסבירות גבוהה לשבירה של אתרי אינטרנט -- במיוחד הרשימות אשר בדרך כלל משומשות כקובץ hosts. 32 | 33 | *** 34 | 35 | ללא רשימות מסננים מוגדרים מראש, תוסף זה לא שווה כלום. אז אם אי פעם תרצה באמת לתרום משהו, תחשוב על האנשים שעובדים לילות כימים כדי לתחזק את רשימות המסננים שאתה משתמש בהן, אשר הובאו לשימוש על ידי כולם ללא כל תשלום. 36 | 37 | *** 38 | 39 | חינם. 40 | קוד פתוח עם רשיון ציבורי (GPLv3) 41 | בשביל המשתמשים על ידי המשתמשים. 42 | 43 | תורמים @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | תורמים @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | קח בחשבון שזוהי גרסה מוקדמת בזמן הסקירה שלך. 49 | 50 | רשימת השינויים של הפרויקט: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-hr.txt: -------------------------------------------------------------------------------- 1 | Efikasan bloker: radi sa malo memorije i CPU-a i još može učitati i primijeniti više tisuća filtera od drugih popularnih blokera. 2 | 3 | Ilustrirani pregled njegove efikasnosti: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Korištenje: Veliki gumb u skočnom prozorčiću je za trajno omogućavanje i onemogućavanje µBlock-a na trenutnom web-mjestu. To se odnosi samo na trenutno web-mjesto te nije za kompletno isključivanje. 6 | 7 | *** 8 | 9 | Fleksibilan, nije samo "reklamni bloker": može i čitati i napraviti filtre iz hosts datoteka. 10 | 11 | Odmah po instalaciji slijedeći popisi filtera su pokrenuti i provode se: 12 | 13 | - EasyList 14 | - Peter Loweov popis reklamnih poslužitelja 15 | - EasyPrivacy 16 | - Zloćudne domene 17 | - Dugovječne zloćudne domene 18 | - Lista zloćudnih domena 19 | 20 | Ostale liste su dostupne za odabir ako ih želite: 21 | 22 | - Fanboy poboljšani popis praćenja 23 | - Dan Pollockova hosts datoteka 24 | - hpHosts serveri za reklame i praćenje 25 | - MVPS HOSTS 26 | - Spam404 27 | - I mnogi drugi 28 | 29 | Naravno, više omogućenih filtera, veći je memorijski otisak. Ipak, čak i nakon dodavanja Fanboyova dva dodatna popisa, hpHosts servera za reklame i praćenje, µBlock još uvijek ima manji memorijski otisak od drugih popularnih blokera. 30 | 31 | Također, imajte na umu da odabirom nekih od ovih pomoćnih popisa možete povećati šanse kvara web-mjesta -- posebno onih popisa koji se obično koriste kao hosts datoteke. 32 | 33 | *** 34 | 35 | Bez prvotne liste filtera, ovo proširenje ništa ne radi. Tako da ako ikad želite doprinijeti nešto razmislite o ljudima koji rade naporno održavajući popise filtera koje koristite i koji su dostupni besplatno za korištenje od strane svih uključenih. 36 | 37 | *** 38 | 39 | Besplatno. 40 | Otvorenog kôda sa javnom licencom (GPLv3) 41 | Za korisnike od strane korisnika. 42 | 43 | Suradnici @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Suradnici @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Ovo je rana verzija, imajte to na umu kada budete ocjenjivali. 49 | 50 | Popis promjena: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-hu.txt: -------------------------------------------------------------------------------- 1 | Egy hatékony blokkoló: kíméletes a processzorral és a memóriával, mégis képes nagyságrendekkel több szűrő betöltésére és alkalmazására a többi népszerű blokkolóhoz viszonyítva. 2 | 3 | Szemléltetett áttekintés a hatékonyságáról: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Használat: a nagy bekapcsológomb a kiegészítő tiltására/engedélyezésére szolgál a jelenlegi webhelyen. A gomb kizárólag a jelenleg aktív webhelyre érvényes, nem pedig globálisan. 6 | 7 | *** 8 | 9 | Több mint egy egyszerű reklámblokkoló: képes hosts fájlok bejegyzéseit is értelmezni, és azokból szűrőket létrehozni. 10 | 11 | Alapértelmezetten a következő szűrőlisták kerülnek betöltésre és alkalmazásra: 12 | 13 | - EasyList 14 | - Peter Lowe hirdetési szerverlistája 15 | - EasyPrivacy 16 | - Kártékony domének 17 | - Hosszúéletű kártékony domének 18 | - Malware Domains List 19 | 20 | Egyéb listák is kiválaszthatók a felhasználó igénye szerint: 21 | 22 | - Fanboy bővített követők listája 23 | - Dan Pollock hosts fájlja 24 | - hpHosts hirdetés és követőszerverek listája 25 | - MVPS HOSTS 26 | - Spam404 27 | - És sok más 28 | 29 | Természetesen, több szűrő használatával a memóriaigény is növekszik. Ennek ellenére Fanboy két extra listája és a hpHosts (reklám és követőszerverek) lista hozzáadásával a µBlock memóriafogyasztása még mindig alacsonyabb, mint a legnépszerűbb blokkolóké. 30 | 31 | Emellett, néhány extra lista kiválasztásával megnövekszik az esély arra, hogy a weboldalak használhatatlanná válnak -- főleg azon listákról van szó, melyek normál esetben hosts fájlként használatosak. 32 | 33 | *** 34 | 35 | A szűrőlisták nélkül a kiegészítő nem sokat érne. Tehát, ha valaha is eszedbe jutna támogatást kínálni, akkor előbb gondolj azokra, akik keményen dolgoznak a listák karbantartásával, illetve ingyenesen hozzáférhetővé teszik azokat mindenki számára. 36 | 37 | *** 38 | 39 | Ingyenes. 40 | Nyílt forráskódú nyilvános licenccel (GPLv3) 41 | Felhasználóknak felhasználóktól. 42 | 43 | Közreműködők a Github-on: https://github.com/gorhill/uBlock/graphs/contributors 44 | Közreműködők a Crowdin-en: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | A kiegészítő még gyerekcipőben jár, amit illik szem előtt tartani vélemény nyilvánításakor. 49 | 50 | Változások listája: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-id.txt: -------------------------------------------------------------------------------- 1 | Pemblokir yang efisien: ringan penggunaan memori dan CPU, namun dapat memuat dan menjalankan ribuan filter lain dibanding pemblokir populer lain di luar sana. 2 | 3 | Ringkasan ilustrasi efisiensi: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP :-Efficiency-Compared 4 | 5 | Penggunaan: Tombol daya yang besar dalam popup berfungsi menonaktifkan/mengaktifkan µBlock secara permanen untuk situs yang sedang dibuka. Berlaku untuk situs yang sedang dibuka saja, bukan tombol daya global. 6 | 7 | *** 8 | 9 | Fleksibel, lebih dari sekedar "pemblokir iklan": juga dapat membaca dan membuat filter dari berkas host. 10 | 11 | Langsung bekerja, daftar filter berikut ini dimuat dan dijalankan: 12 | 13 | - EasyList 14 | - Daftar server iklan Peter Lowe 15 | - EasyPrivacy 16 | - Domain malware 17 | - Domain malware berumur panjang 18 | - Daftar Domain Malware 19 | 20 | Jika anda ingin, masih banyak tersedia daftar lain untuk anda pilih: 21 | 22 | - Daftar Pelacakan Fanboy yang DItingkatkan 23 | - Berkas host Dan Pollock 24 | - Server iklan dan pelacakan hpHosts 25 | - HOST MVPS 26 | - Spam404 27 | - dan banyak lainnya 28 | 29 | Tentu saja, semakin banyak filter yang diaktifkan, semakin besar penggunaan memori. Namun, bahkan setelah menambahkan 2 daftar ekstra Fanboy, server iklan dan pelacakan hpHosts, penggunaan memori µBlock masih lebih kecil dibanding pemblokir iklan populer lain di luar sana. 30 | 31 | Perlu diketahui juga bahwa memilih beberapa daftar ekstra juga berpeluang lebih tinggi menyebabkan kerusakan situs -- terutama daftar yang biasanya digunakan sebagai berkas host. 32 | 33 | *** 34 | 35 | Tanpa daftar filter yang ada, ekstensi ini bukanlah apa-apa. Jadi, jika Anda benar-benar ingin berkontribusi sesuatu, berpikirlah tentang orang-orang yang bekerja keras mengelola daftar filter yang anda gunakan, yang dibuat dan tersedia untuk digunakan oleh semua dengan gratis. 36 | 37 | *** 38 | 39 | Gratis. 40 | Sumber terbuka dengan lisensi publik (GPLv3) 41 | Untuk pengguna oleh pengguna. 42 | 43 | Kontributor @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Kontributor @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Masih dalam versi yang amat awal, mohon diperhatikan ketika anda membuat ulasan. 49 | 50 | Catatan perubahan proyek: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-it.txt: -------------------------------------------------------------------------------- 1 | µBlock è un efficiente ad-blocker: occupa poca memoria e poca cpu, ma può usare migliaia di filtri in più rispetto ad altri software simili. 2 | 3 | Consulta questa pagina (in Inglese) per verificare la sua efficacia https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Uso: Il pulsante power nel popup serve per disabilitare/abilitare permanentemente µBlock nel sito che stai visitando, e non serve per disabilitare/abilitare l'estensione. 6 | 7 | *** 8 | 9 | Molto più che un ad-blocker: può anche creare filtri dal file host. 10 | 11 | Per default sono attivate queste liste: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Puoi anche attivare moltre altre liste: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - Ecc. 28 | 29 | Ovviamente, più liste attivi, maggiore sarà l'impatto sulla memoria. Anche se aggiungendo altre due liste di Fanboy e hpHosts’s Ad and tracking servers, µBlock userà meno memoria di moltri altri ad-blockers. 30 | 31 | Selezionando alcuni di questi filtri può portare ad una maggiore probabilità di problemi nel visualizzare alcuni siti web. 32 | 33 | *** 34 | 35 | Senza queste liste di filtri, questa estensione non è niente. osì se vuoi contribuire, pensa alle persone che lavorano duramente per mantenere queste liste che stai usando, che sono disponibili gratuitamente. 36 | 37 | *** 38 | 39 | Gratuito. 40 | Open source with public license (GPLv3) 41 | Fatto dagli utenti per gli utenti. 42 | 43 | Collaboratori @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Collaboratori @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Questa è una versione preliminare, ricordalo quando scriverai una recensione. 49 | 50 | Per leggere le novità di ogni versione consulta questa pagina (In Inlgese): 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-ja.txt: -------------------------------------------------------------------------------- 1 | 効率的なブロッカー:コンピュータのメモリとCPUのフットプリントはより少なく 2 | 、別の人気のブロッカーよりも何千ものフィルタをロードし、強制的にブロックができます 3 | 4 | 他ソフトとの比較は以下のとおり: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 5 | 6 | 使用法: 大きなボタンは永久にこのエクステンションを現在のサイトで有効か無効にします。 現在のサイトのみに適用されます、グローバルボタンではありません。 7 | 8 | *** 9 | 10 | ただの「広告ブロッカー」より柔軟です:ホストファイルを読み込みフィルターを作成できます。 11 | 12 | 要するに、以下のフィルターが読み込まれ、適用されます: 13 | 14 | - EasyList 15 | - Peter Lowe’s Ad server list 16 | - EasyPrivacy 17 | - Malware domains 18 | - Long-lived malware domains 19 | - Malware Domains List 20 | 21 | ご希望であればさらに多くのリストがご利用できます: 22 | 23 | - Fanboy’s Enhanced Tracking List 24 | - Dan Pollock’s hosts file 25 | - hpHosts’s Ad and tracking servers 26 | - MVPS HOSTS 27 | - Spam404 28 | - Etc. 29 | 30 | もちろん、多くのフィルターを適用すれば使用メモリーは増えます。 ただ、それでも、Fanboy's Special Blocking List、Fanboy's Enhanced Tracking List、hpHost's Ad and tracking serversの三つのリストを追加で適用しても、µBlockは他の人気のブロッカーより少ないメモリー消費を実現しています。 31 | 32 | それと、多くのリストの適用は(特にホストファイルとしてよく使われているリスト)ウェブサイトの崩壊を起こしかねないことに注意してください。 33 | 34 | *** 35 | 36 | この拡張機能は、あらかじめ設定されているフィルターのリストが無ければ意味を成しません。 ですので、何かしらの形で貢献したいと考えることがあった時は、これらのリストを無料で懸命に更新し続けている方々を思い出してください。 37 | 38 | *** 39 | 40 | 無料. 41 | パブリックライセンス(GPLv3)のオープンソース 42 | ユーザーによって作られた、ユーザーのための物。 43 | 44 | 貢献者 @ Github: https://github.com/gorhill/uBlock/graphs/contributors 45 | 貢献者 @ Crowdin: https://crowdin.net/project/ublock 46 | 47 | *** 48 | 49 | これは割と初期のバージョンですので、それを念頭にレビューをお願いします。 50 | 51 | プロジェクト変更ログ: 52 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-ko.txt: -------------------------------------------------------------------------------- 1 | 효율적인 차단기: 메모리와 CPU에 부담이 적고, 다른 인기있는 차단기에 비해 수 천 가지의 필터를 사용할 수 있습니다. 2 | 3 | µBlock의 효율성을 설명한 사진: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | 사용 방법: 해당 웹사이트에서 팝업의 큰 전원 버튼을 눌러 µBlock을 켜고 끌 수 있습니다. 적용은 현재 웹사이트만 적용되며, 전체적으로 적용되지 않습니다. 6 | 7 | *** 8 | 9 | "AdBlocker" 보다 더 융통성있는 기능: 호스트 파일들로부터 필터를 만들고 볼 수 있습니다. 10 | 11 | 특별한 설치 없이도 아래 목록들을 불러오고 적용할 수 있습니다: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | 당신이 원한다면 더 많은 목록을 선택할 수 있습니다: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - 그리고 무수히 많은 다른 목록들 28 | 29 | 물론, 더 많은 필터를 활성화하면 할수록, 메모리 사용량도 높아집니다. 하지만 Fanboy's two extra lists와 hpHosts’s Ad and tracking servers 필터를 추가한 후에도 µBlock은 다른 인기있는 차단기에 비해 메모리 사용량이 적습니다. 30 | 31 | 또, 이러한 일부 추가 목록(특히 일반적으로 사용되는 호스트 파일) 중 선택시 높은 확률로 웹사이트가 파손될 수 있음을 명심해주시기 바랍니다. 32 | 33 | *** 34 | 35 | 필터에 필터 목록이 하나도 없다면, 이 확장기능은 아무 쓸모가 없어집니다. 그래서 만약 당신이 정말 어떤것으로든 기여하고 싶을때는, 당신이 사용중인 필터 리스트를 만들고 유지하기 위해 노력중인 사람들을 생각해주세요. 필터들은 모두 무료로 사용이 가능하게 되어있습니다. 36 | 37 | *** 38 | 39 | 완전히 무료입니다. 40 | 오픈소스이며, 공개 라이센스(GPLv3)를 따릅니다. 41 | 유저를 위한, 유저에 의한. 42 | 43 | 기여자 @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | 기여자 @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | 이것은 완전히 초기 버전입니다, 리뷰할 때 이 점을 명심하세요. 49 | 50 | 프로젝트 변경사항: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-lv.txt: -------------------------------------------------------------------------------- 1 | Efektīvs reklāmu bloķētājs: nepārslogo procesoru un atmiņu, un var ielādēt un pielietot tūkstošiem filtru vairāk nekā citi populāri bloķētāji. 2 | 3 | Ilustrēts apskats par tā efektivitāti: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP :-Efficiency-compared 4 | 5 | Izmantošana: nospiediet lielo pogu uznirstošajā logā, lai izslēgtu/ieslēgtu µBlock pašreizējā web vietnē. Šī poga attiecas tikai uz pašreizējo tīmekļa vietni. 6 | 7 | *** 8 | 9 | Elastīgs, tas ir vairāk nekā "reklāmu bloķētājs": tas var arī lasīt un izveidot filtrus no sistēmas hostu failiem. 10 | 11 | Pēc noklusējuma, ielādē un izpilda šos filtru sarakstus: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Ja vēlaties, ir pieejami daudz vairāk sarakstu, no kuriem jūs varat izvēlēties: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - Un daudzi citi 28 | 29 | Protams, jo vairāk papildus filtri tiks lietoti, jo lielāks atmiņas patēriņš. Tomēr pat pēc tam, kad pievienoti Fanboy divi papildu saraksti, hpHosts reklāmas un sekošanas serveriem, µBlock patērē mazāku atmiņas daudzumu, nekā citi populāri bloķētāji. 30 | 31 | Arī jāapzinās, ka izvēloties dažus no šiem papildus sarakstiem, tas var izraisīt lielāku iespējamību, ka tīmekļa vietne tiks nepareizi parādīta — īpaši sarakstos, kurus parasti izmanto kā hosts failu. 32 | 33 | *** 34 | 35 | Bez filtru sarakstiem, šis paplašinājums nav nekas. Tātad, ja vēlēsieties sniegt atbalstu, padomājiet par cilvēkiem, kas strādā, lai uzturētu filtru sarakstus, ko lietojat, tie ir pieejami lietošanai visiem par brīvu. 36 | 37 | *** 38 | 39 | Bezmaksas. 40 | Pirmkods ar publisko licenci (GPLv3) 41 | Lietotājiem no lietotājiem. 42 | 43 | Autori @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Autori @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Šī ir ļoti agrīna versija, paturiet to prātā, kad jūs to lietojat. 49 | 50 | Projekta izmaiņu žurnāls: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-nl.txt: -------------------------------------------------------------------------------- 1 | Een efficiënte blokkeerder: licht geheugen- en CPU-verbruik. Toch kan het duizenden filters meer laden en gebruiken dan andere populaire blokkeerders. 2 | 3 | Geïllustreerd overzicht van de efficiëntie: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Hoe te gebruiken: De grote aan/uit-knop in de popup is om µBlock permanent in/uit te schakelen voor de huidige website. Het wordt enkel op de huidige website toegepast. Het is geen globale aan/uit-knop. 6 | 7 | *** 8 | 9 | Flexibel, het is meer dan een "advertentieblokkeerder": het kan ook filters lezen en creëren van hostsbestanden. 10 | 11 | Standaard worden de volgende filterlijsten geladen en toegepast: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Meer lijsten zijn beschikbaar om te selecteren indien gewenst: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - En nog vele anderen 28 | 29 | Natuurlijk wordt het geheugenverbruik groter naarmate er meer filters worden ingeschakeld. Maar zelfs na Fanboy's two extra lijsten, hpHosts’s Ad en tracking servers toe te voegen heeft µBlock een lager geheugenverbruik dan andere populaire blokkeerders. 30 | 31 | Let op, het gebruik van sommige van deze extra lijsten verhoogt de kans dat websites breken -- zeker de lijsten die normaal als hosts-bestand worden gebruikt. 32 | 33 | *** 34 | 35 | Zonder de standaard filterlijst doet deze extensie niets. Dus als je ooit echt een bijdrage wilt leveren, denk dan aan de mensen die hard werken om de filterlijsten die je aan het gebruiken bent te onderhouden, die allemaal gratis beschikbaar en te gebruiken zijn. 36 | 37 | *** 38 | 39 | Gratis. 40 | Open source met publieke licentie (GPLv3) 41 | Voor gebruikers, door gebruikers. 42 | 43 | Medewerkers @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Medewerkers @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Het is een hele vroege verse, onthoud dit wanneer je een review maakt. 49 | 50 | Projectwijzigingenlogboek: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-no.txt: -------------------------------------------------------------------------------- 1 | Effektiv blokkering av reklame, sporing mm., lavt CPU- og minnebruk, og kan likevel laste og bruke tusenvis av flere filtre enn andre populære utvidelser for blokkering. 2 | 3 | Illustrert oversikt over effektiviteten: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Anvendelse: Den store av/på-knappen i oppsprettsvinduet er for å permanent deaktivere/aktivere µBlock for det aktuelle nettstedet. Dette gjelder bare for det aktuelle nettstedet, det er ikke en global av/på-knapp. 6 | 7 | *** 8 | 9 | Fleksibel, µBlock er mer enn en "reklameblokkerer": µBlock kan også lese og opprette filtre fra vertsfiler. 10 | 11 | Som standard er disse filterlistene lastet og i bruk: 12 | 13 | - EasyList 14 | - Peter Lowe's Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Flere lister er tilgjengelige om du ønsker: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - Og mange andre 28 | 29 | Jo flere filtre som er aktivert, jo høyere minnebruk. Men selv etter å ha lagt til Fanboys to ekstra lister og "hpHosts’s Ad and tracking servers", har µBlock fortsatt lavere minnebruk enn andre populære utvidelser for blokkering. 30 | 31 | Vær også oppmerksom på at å velge noen av disse ekstra listene kan lede til høyere sannsynlighet for at nettsider ikke lastes riktig -- spesielt de listene som normalt brukes som vertsfil. 32 | 33 | *** 34 | 35 | Uten de forhåndsgitte filterlistene er denne utvidelsen ubrukelig. Så hvis du ønsker å bidra med noe, tenk på folkene som arbeider hardt for å opprettholde filterlistene du bruker, som blir gjort tilgjengelige for alle - helt gratis. 36 | 37 | *** 38 | 39 | Gratis. 40 | Åpen kildekode med offentlig lisens (GPLv3) 41 | For brukere, av brukere. 42 | 43 | Bidragsytere @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Bidragsytere @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Dette er en tidlig versjon, ha det i tankene når du anmelder. 49 | 50 | Endringslogg for prosjektet: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-pl.txt: -------------------------------------------------------------------------------- 1 | Wydajny bloker: małe zużycie pamięci i CPU, możliwość załadowania i egzekwowania tysięcy filtrów więcej niż inne popularne blokery. 2 | 3 | Ilustrowany przegląd jego skuteczności: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-Efficiency-Compared 4 | 5 | Sposób użycia: Przycisk zasilania w popup służy aby włączyć/wyłączyć µBlocka dla bieżącej witryny sieci web. Przycisk dotyczy tylko bieżącej witryny sieci web, nie działa ogólnie na wszystkie. 6 | 7 | *** 8 | 9 | Elastyczny, to coś więcej niż "ad blocker": może także czytać i tworzyć filtry plików z hostów. 10 | 11 | Po zainstalowaniu te listy filtrów są ładowane i egzekwowane: 12 | 13 | - EasyList 14 | - Serwer listy reklam Peter Lowe'a 15 | - EasyPrivacy 16 | - Domeny malware 17 | - Długotrwałe domeny malware 18 | - Lista domen malware 19 | 20 | Więcej list jest dostępnych dla Ciebie do wyboru, jeśli chcesz: 21 | 22 | - Ulepszone śledzenie listy dla fanboy'ów 23 | - Plik hosts Dan Pollocka 24 | - Serwery reklam i śledzenia hpHosts 25 | - MVPS HOSTS 26 | - Spam404 27 | - I wiele innych 28 | 29 | Oczywiście, jeśli więcej filtrów jest włączonych, tym wyższe jest zużycie pamięci. Jednak nawet po dodaniu dwóch dodatkowych list filtrów od fanów, hpHosts Ad i śledzenie serwerów, µBlock ma ciągle niższe zużycie pamięci niż inne bardzo popularne blokery. 30 | 31 | Należy również pamiętać, że niektóre z tych dodatkowych list wyboru mogą prowadzić do większego prawdopodobieństwa uszkodzenia witryny sieci web - zwłaszcza te listy, które są zwykle używane jako plik hosts. 32 | 33 | *** 34 | 35 | Bez zaprogramowanej listy filtrów to rozszerzenie jest niczym. Więc jeśli kiedykolwiek naprawdę chcesz wnieść coś, pomyśl o osobach, które ciężko pracują, aby utrzymać listy filtrów, które używasz, aby zostały one udostępnione do wykorzystania przez wszystkich za darmo. 36 | 37 | *** 38 | 39 | Darmowe rozszerzenie. 40 | Otwarte źródło z licencją publiczną (GPLv3) 41 | Dla użytkowników przez użytkowników. 42 | 43 | Współtwórcy rozszerzenia na GitHub: https://github.com/gorhill/uBlock/graphs/contributors 44 | Współtwórcy tłumaczeń na Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Jest to dość wczesna wersja, należy o tym pamiętać podczas oceniania. 49 | 50 | Lista zmian projektu: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-pt_BR.txt: -------------------------------------------------------------------------------- 1 | Um bloqueador eficaz: Com baixo consumo de memória e CPU e ainda pode carregar e aplicar milhares de filtros. Mais do que outros bloqueadores populares lá fora. 2 | 3 | Visão geral ilustrada de sua eficiência: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP :-Efficiency-compared 4 | 5 | Como usar: O botão grande no popup serve para desativar/ativar o µBlock para o site atual. Aplica-se somente ao site atual, não é um botão global. 6 | 7 | *** 8 | 9 | Flexível, é mais do que um "ad blocker": também pode ler e criar filtros de arquivos de hosts. 10 | 11 | Por padrão essas são as listas de filtros que são carregadas e aplicadas: 12 | 13 | - EasyList 14 | - Peter Lowe’s Ad server list 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Mais listas estão disponíveis para você escolher, se desejar: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - hpHosts’s Ad and tracking servers 25 | - MVPS HOSTS 26 | - Spam404 27 | - Etc. 28 | 29 | Claro, quanto mais filtros habilitados, maior o consumo de memória. Ainda, mesmo após a adição do Fanboy's duas listas extras, hpHosts’s e servidores de rastreamento, µBlock ainda tem o uso de memória menor do que outros bloqueadores populares lá fora. 30 | 31 | Também, estar ciente de que selecionar algumas dessas listas extras pode levar à maior probabilidade de quebra do layout do site, especialmente aquelas listas que são normalmente usadas como arquivo hosts. 32 | 33 | *** 34 | 35 | Sem as listas predefinidas de filtros, esta extensão não é nada. Então, se você realmente quiser contribuir com alguma coisa, pense sobre as pessoas que trabalham duro para manter as listas de filtro que você está usando, que foram feitas disponíveis para uso por todos para livre. 36 | 37 | *** 38 | 39 | Gratuito 40 | Código aberto com licença pública (GPLv3) 41 | De usuários para usuários. 42 | 43 | Colaboradores @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Colaboradores @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Essa é uma versão inicial, tenha isso em mente quando você avaliar. 49 | 50 | Registro de alterações do projeto: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-pt_PT.txt: -------------------------------------------------------------------------------- 1 | Um bloqueador eficiente: leve na memória e processador e, no entanto, consegue carregar e aplicar milhares de filtros a mais do que outros bloqueadores populares disponíveis. 2 | 3 | Visão geral ilustrada da sua eficiência: 4 | https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 5 | 6 | Uso: O botão grande de energia na janela serve para desativar/ativar permanentemente o µBlock para o web site atual. Aplica-se unicamente ao web site atual, não sendo um botão de energia global. 7 | 8 | *** 9 | 10 | Flexível, é mais do que um "ad blocker": pode também ler e criar filtros a partir de ficheiros de hosts. 11 | 12 | Por predefinição, estas listas de filtros são carregadas e aplicadas: 13 | 14 | - EasyList 15 | - Peter Lowe’s Ad server list 16 | - EasyPrivacy 17 | - Malware domains 18 | - Long-lived malware domains 19 | - Malware Domains List 20 | 21 | Mais listas estão disponíveis para seleccionar se desejar: 22 | 23 | - Fanboy’s Enhanced Tracking List 24 | - Dan Pollock’s hosts file 25 | - hpHosts’s Ad and tracking servers 26 | - MVPS HOSTS 27 | - Spam404 28 | - Etc. 29 | 30 | Obviamente que quanto maior o número de filtros ativados, maior será o consumo de memória. No entanto, mesmo após adicionar as duas listas extra do Fanboy, hpHosts Ad e servidores de monitorização, o µBlock continua a consumir menos memória do que outros bloqueadores populares disponíveis. 31 | 32 | Esteja ciente de que se seleccionar mais listas extra pode resultar numa probabilidade acrescida de ruptura em web sites -- especialmente nos referenciados em listas normalmente usadas como ficheiro host. 33 | 34 | *** 35 | 36 | Sem as listas de filtros predefinidas, esta extensão não é nada. Se realmente quiser contribuir com algo, pense nas pessoas que trabalham duro para manter as listas de filtros que usa, que foram tornadas disponíveis para uso por todos sem custos. 37 | 38 | *** 39 | 40 | Grátis. 41 | Código aberto com licença pública (GPLv3) 42 | Para utilizadores de utilizadores. 43 | 44 | Contribuidores @ Github: https://github.com/gorhill/uBlock/graphs/contributors 45 | Contribuidores @ Crowdin: https://crowdin.net/project/ublock 46 | 47 | *** 48 | 49 | Esta é uma versão inicial, tenha isso em mente quando avaliar. 50 | 51 | Registo de alterações no projecto: 52 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-ro.txt: -------------------------------------------------------------------------------- 1 | Un paravan de protecție eficient: folosește procesorul și memoria foarte puțin și totuși poate încărca și aplica filtre cu mii în plus față de alte paravane. 2 | 3 | O ilustrare a eficienței poate fi observată la: 4 | https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 5 | 6 | Utilizare: Acel buton de pornire/oprire în fereastra paravanului este pentru a activa/debloca µBlock pentru siteul curent. Funcția este valabilă doar pentru siteul curent, nu la nivel global. 7 | 8 | *** 9 | 10 | Flexibil, mai mult decât un „paravan de protecție”: acesta poate citi și crea filtre din fișierele hosts. 11 | 12 | În mod implicit, aceste liste și filtre sunt încărcate și aplicate: 13 | 14 | - EasyList 15 | - Lista de reclame a lui Peter Lowe 16 | - EasyPrivacy 17 | - Domenii malițioase 18 | - Domenii malițioase încă active 19 | - Lista de domenii malițioase 20 | 21 | De asemenea, mai sunt disponibile și alte liste precum: 22 | 23 | - Lista îmbunătățită pentru urmărire a lui Fanboy 24 | - Lista de gazde a lui Dan Pollock 25 | - Lista de reclame și urmărire hpHosts 26 | - Gazdele MVPS 27 | - Spam404 28 | - Etc. 29 | 30 | Desigur, cu cât sunt mai multe filtre active cu atât mai mult este utilizată memoria. Totuși chiar și după adăugarea în plus a două liste Fanboy și hPhosts Ad, µBlock tot folosește mai puțină memorie decât restul paravanelor. 31 | 32 | De ținut minte, că odată cu selectarea în plus a unora dintre liste poate conduce la afectarea aspectului siteurilor -- în special listele care sunt în mod normal fișiere hosts. 33 | 34 | *** 35 | 36 | Fără lista de filtre implicită, aceasta extensie nu face nimic. Așadar, dacă totuși vreți să contribuiți, gândiți-vă la persoanele care muncesc să întrețină aceste filtre pe care le utilizați, care sunt oferite pentru utilizare gratuită. 37 | 38 | *** 39 | 40 | Gratuit. 41 | Cu sursă liberă și licență publică (GPLv3) 42 | Pentru utilizatori de la utilizatori. 43 | 44 | Contribuitori pe Github: 45 | https://github.com/gorhill/uBlock/graphs/contributors 46 | Contribuitori pe Crowdin: https://crowdin.net/project/ublock 47 | 48 | *** 49 | 50 | Este încă o aplicație recentă, gândiți-vă la acest lucru când lăsați un comentariu. 51 | 52 | Lista de schimbări a proiectului: 53 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-ru.txt: -------------------------------------------------------------------------------- 1 | Эффективный блокировщик: низкая нагрузка на ЦП и оперативную память, однако, может загружать и применять на тысячи больше фильтров, чем популярные блокировщики. 2 | 3 | Иллюстрированный обзор его эффективности: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Использование: Нажмите большую кнопку «Включение» в выпадающем окне, чтобы включить или отключить µBlock для текущего сайта. Эта кнопка применяется только на текущий веб-сайт, она не глобальна. 6 | 7 | *** 8 | 9 | Будучи гибким, это нечто большее, чем просто «блокировщик рекламы»: он также может считывать и создавать фильтры из хост-файлов. 10 | 11 | По умолчанию следующие списки фильтров будут загружены и применены: 12 | 13 | - EasyList 14 | - Список рекламных серверов Питера Лоу 15 | - EasyPrivacy 16 | - Вредоносные домены 17 | - Долговечные вредоносные домены 18 | - Список вредоносных доменов 19 | 20 | Также на выбор доступны другие списки: 21 | 22 | - Фанатский улучшенный список отслеживания 23 | - Хост-файл Дэна Поллока 24 | - Рекламные и отслеживающие сервера hpHosts 25 | - MVPS HOSTS 26 | - Spam404 27 | - И т. д. 28 | 29 | Конечно, чем больше фильтров, тем выше использование памяти. Тем не менее, даже после добавления трёх дополнительных списков, µBlock всё ещё использует меньше памяти, чем другие популярные блокировщики. 30 | 31 | Также имейте в виду, что некоторые их этих списков имеют высокую вероятность поломать веб-сайт, особенно те, что созданы из хост-файлов. 32 | 33 | *** 34 | 35 | Без предустановленных списков фильтров это расширение — ничто. Так что, если вы действительно хотите внести свой вклад, подумайте о людях, усердно поддерживающих списки фильтров, предоставленные Вам для бесплатного использования. 36 | 37 | *** 38 | 39 | Бесплатно. 40 | Открытый исходный код, публичная лицензия (GPLv3). 41 | Для пользователей от пользователей. 42 | 43 | Участники на Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Участники на Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Это ещё очень ранняя версия, имейте это в виду, оценивая программу. 49 | 50 | Список изменений: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-sv.txt: -------------------------------------------------------------------------------- 1 | En effektiv blockerare: lätt på minne och CPU-fotavtryck, som ändå kan ladda och applicera tusentals fler filter jämfört med andra populära blockerare där ute. 2 | 3 | Illustrerad översikt av dess effektivitet: 4 | https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 5 | 6 | Användning: Den stora strömbrytarikonen i popuprutan är till för att avaktivera/aktivera µBlock på den aktuella webbplatsen permanent. Detta gäller enbart för den aktuella webbplatsen, det är inte en global strömbrytare. 7 | 8 | *** 9 | 10 | µBlock är inte enbart en "reklamblockerare": den kan också läsa och skapa filter från hosts-filer. 11 | 12 | Som standard är följande filterlistor laddade och applicerade: 13 | 14 | - EasyList 15 | - Peter Lowe’s Ad server list 16 | - EasyPrivacy 17 | - Malware domains 18 | - Long-lived malware domains 19 | - Malware Domains List 20 | 21 | Fler filterlistor finns tillgängliga att använda om du vill: 22 | 23 | - Fanboy’s Enhanced Tracking List 24 | - Dan Pollock’s hosts file 25 | - hpHosts’s Ad and tracking servers 26 | - MVPS HOSTS 27 | - Spam404 28 | - m.fl. 29 | 30 | Ju fler aktiverade filter, desto högre minnesanvändning. Men även efter att ha lagt till Fanboys två extra filterlistor och hpHosts' Ad and tracking servers så använder µBlock mindre minne än andra väldigt populära blockerare. 31 | 32 | Tänk på att genom att aktivera vissa av dessa extra filterlistor finns det större risk att webbplatser går sönder - särskilt de listor som i normala fall används som hosts-filer. 33 | 34 | *** 35 | 36 | µBlock vore ingenting utan filterlistorna. Så om du vill bidra med någonting, tänk på människorna som arbetar hårt med att upprätthålla de filterlistor du använder, vilka är fritt tillgängliga för allas användning. 37 | 38 | *** 39 | 40 | Gratis. 41 | Öppen källkod med offentlig licens (GPLv3) 42 | För användare, av användare. 43 | 44 | Bidragsgivare @ Github: https://github.com/gorhill/uBlock/graphs/contributors 45 | Bidragsgivare @ Crowdin: https://crowdin.net/project/ublock 46 | 47 | *** 48 | 49 | Det är en ganska tidig version, tänk på detta när du skriver en recension. 50 | 51 | Projektets ändringslogg: 52 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-tr.txt: -------------------------------------------------------------------------------- 1 | Etkili bir engelleyici: binlerce popüler engelleyiciye göre bellek ve CPU dostu, ve daha fazla reklam engelleyebiliyor. 2 | 3 | Resimli etkililiğe genel bakış: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP :-Karşılaştırması 4 | 5 | Kullanımı: Arayüzündeki µBlock büyük güç düğmesi ile mevcut sayfada kalıcı olarak devre dışı bırakıp/etkinleştirilebilir. Bu yalnızca o anki sayfada geçerlidir, eklentinin tüm işlevini sonlandırmaz. 6 | 7 | *** 8 | 9 | Esnek, bir "reklam engelleyici"den öte: aynı zamanda host dosyanızdan okuyarak filtre oluşturabilir. 10 | 11 | Bunun dışında, aşağıdaki filtre listeleri yüklenmiştir ve uygulanır: 12 | 13 | -EasyList 14 | -Peter Lowe'uns reklam sunucuları listesi 15 | -EasyPrivacy 16 | -Zararlı websiteleri 17 | -Uzun vadeli zararlı alan adları 18 | - Malware Domains List 19 | 20 | Daha fazla listeyi de seçerek kullanılabilirsiniz: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’un hosts dosyası 24 | -hpHosts'ın reklam ve izleme sunucuları 25 | -MVP HOSTS 26 | -Spam404 27 | - Ve daha başkaları 28 | 29 | Tabii ki, daha fazla filtre etkinleştirmek, yüksek bellek kullanımına yol açar. Ama, Fanboy'nın iki ekstra listesini, hpHosts'ın reklam ve izleme sunucusu ekledikten sonra dahi µBlock hala bir çok popüler blokerlerdan daha az bellek tüketir. 30 | 31 | Ayrıca, bazı ekstra listelerin seçilmesi web sitelerinin bozulmasına yol açabilir unutmayın-- özellikle hosts dosyası olarak normalde kullanılan listeler neden olabilir. 32 | 33 | *** 34 | 35 | Halihazırda yüklü geen listeler olmadan, bu eklenti hiçbir işe yaramaz. Eğer gerçekten birşeylerle katkıda bulunmak istiyorsanız, kullandığınız filtre listeleri oluşturmak için çalışan insanları düşünün, bu listeleri kullanımı özgür ve herkes tarafından kullanılabilir yapmışlar. 36 | 37 | *** 38 | 39 | Ücretsiz. 40 | Açık Kaynaklı (GPLv3) Kamu Lisansı 41 | Kullanıcılar tarafından kullanıcılara. 42 | 43 | Destekçiler @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Destekçiler @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Bu çok erken bir sürümü, gözden geçirirken, bunu göz önünde bulundurun. 49 | 50 | Proje değişiklik günlüğü: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-uk.txt: -------------------------------------------------------------------------------- 1 | Ефективний блокувальник реклами: сильно не навантажує пам’ять та процесор і може працювати з набагато більшою кількістю фільтрів ніж інші блокувальники. 2 | 3 | Ілюстрований огляд ефективності: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Використання: Ця велика кнопка живлення у виринаючому вікні дозволяє вимкнути або увімкнути µBlock для поточного веб-сайту. Ефект розповсюджується тільки на поточний веб-сайт. Це не глобальна кнопка живлення. 6 | 7 | *** 8 | 9 | Будучи універсальним, це більш ніж просто "блокувальник реклами". Він також може створювати фільтри з файлів hosts. 10 | 11 | За замовчуванням завантажено та застосовано наступні списки фільтрів: 12 | 13 | – EasyList 14 | – список рекламних серверів Петра Лоу 15 | – EasyPrivacy 16 | – шкідливі домени 17 | – довготривалі шкідливі домени 18 | – список доменів шкідливих програм 19 | 20 | Наступні списки можна можна увімкнути за бажанням: 21 | 22 | – покращений список слідкування від Fanboy 23 | – файл хостів Дена Полока 24 | – сервери реклами та слідкування hpHosts 25 | – MVPS HOSTS 26 | – Spam404 27 | – тощо. 28 | 29 | Звичайно ж, чим більше фільтрів ви увімкнете тим більшим буде використання пам’яті. Однак, навіть після додання двох додаткових списків Fanboy, серверів слідкування та реклами phHosts, µBlock споживає менше пам’яті ніж інші популярні блокувальники. 30 | 31 | Також майте на увазі, що задіяння деяких додаткових списків може спричинити збільшення ймовірності пошкодження функціонування сайту. Особливо ті списки, які зазвичай використовуються як hosts-файл. 32 | 33 | *** 34 | 35 | Без встановлених списків фільтрів це розширення – ніщо. Тому, якщо ви дійсно хочете зробити свій внесок, подумайте про людей, які тяжко працюють для підтримки списків фільтрів якими ви користуєтесь безкоштовно. 36 | 37 | *** 38 | 39 | Безкоштовно. 40 | Відкритий джерельний код та публічна ліцензія (GPLv3) 41 | Для користувачів від користувачів. 42 | 43 | Учасники @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Перекладачі @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Це ще дуже дочасна версія, тому майте на увазі, коли робите огляд. 49 | 50 | Журнал змін проекту: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-vi.txt: -------------------------------------------------------------------------------- 1 | Một công cụ chặn quảng cáo hiệu quả: sử dụng ít bộ nhớ, CPU và có thể nạp, áp dụng hàng ngàn bộ lọc so với những công cụ chặn quảng cáo hiện nay. 2 | 3 | Minh hoạ tổng quan về tính hiệu quả của µBlock: https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 4 | 5 | Sử dụng: Nút nguồn lớn trong hộp thoại popup để vô hiệu/kích hoạt vĩnh viễn µBlock cho website hiện tại. Nó chỉ áp dụng cho trang hiện tại, không phải tất cả website. 6 | 7 | *** 8 | 9 | Linh hoạt, hơn cả một "công cụ chặn quảng cáo": µBlock có thể đọc và tạo bộ lọc từ tập tin hosts. 10 | 11 | Ngay lập tức, những bộ lọc này được nạp và áp dụng: 12 | 13 | - EasyList 14 | - Danh sách máy chủ quảng cáo của Peter Lowe 15 | - EasyPrivacy 16 | - Malware domains 17 | - Long-lived malware domains 18 | - Malware Domains List 19 | 20 | Có thêm nhiều danh sách để bạn lựa chọn: 21 | 22 | - Fanboy’s Enhanced Tracking List 23 | - Dan Pollock’s hosts file 24 | - Máy chủ quảng cáo và theo dõi hpHosts 25 | - MVPS HOSTS 26 | - Spam404 27 | - Và nhiều hơn nữa 28 | 29 | Dĩ nhiên, khi kích hoạt thêm bộ lọc, tiện ích sẽ dùng nhiều bộ nhớ hơn. Tuy vậy, sau khi thêm hai danh sách Fanboy, máy chủ quảng cáo và theo dõi của hpHosts, µBlock vẫn dùng ít bộ nhớ hơn so với những công cụ chặn quảng cáo rất phổ biến khác. 30 | 31 | Ngoài ra, lưu ý rằng chọn thêm một số danh sách có thể dẫn đến khả năng một số website hiển thị không đúng cách -- đặc biệt là những danh sách thường được dùng như tập tin hosts. 32 | 33 | *** 34 | 35 | Không có danh sách bộ lọc cài sẵn, tiện ích mở rộng này chẳng là gì cả. Vậy nên nếu bạn thật sự muốn đóng góp gì đó, hãy nghĩ về những người đang chăm chỉ duy trì danh sách bộ lọc hoàn toàn miễn phí mà bạn đang dùng. 36 | 37 | *** 38 | 39 | Miễn phí. 40 | Nguồn mở với giấy phép công cộng (GPLv3) 41 | Làm vì người dùng bởi người dùng. 42 | 43 | Những người đóng góp @ Github: https://github.com/gorhill/uBlock/graphs/contributors 44 | Những người đóng góp @ Crowdin: https://crowdin.net/project/ublock 45 | 46 | *** 47 | 48 | Đây là một phiên bản khá mới, hãy ghi nhớ điều này khi bạn đánh giá. 49 | 50 | Thay đổi của dự án: 51 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-zh_CN.txt: -------------------------------------------------------------------------------- 1 | 一款高效的请求过滤工具:占用极低的内存和CPU,和其他常见的过滤工具相比,它能够加载并执行上千条过滤规则。 2 | 3 | 效率概述说明: 4 | https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 5 | 6 | 用法:点击弹出窗口中的电源按钮,µBlock 将对当前网页永久禁用/启用过滤功能。 它只控制当前网页的请求过滤,而不是一个全局开关。 7 | 8 | *** 9 | 10 | 它不只是一个广告拦截工具,它还可以从 hosts 文件里读取和创建过滤规则。 11 | 12 | 初始默认加载和执行下列过滤规则列表: 13 | 14 | - EasyList 15 | - Peter Lowe’s Ad server list 16 | - EasyPrivacy 17 | - Malware domains 18 | - Long-lived malware domains 19 | - Malware Domains List 20 | 21 | 这里还有更多的规则列表供你选择: 22 | 23 | - Fanboy’s Enhanced Tracking List 24 | - Dan Pollock’s hosts file 25 | - hpHosts’s Ad and tracking servers 26 | - MVPS HOSTS 27 | - Spam404 28 | - 等等 29 | 30 | 当然,启用越多的过滤规则就会产生越高的内存占用。 然而,即使再添加 Fanboy 额外的两个规则列表,如 hpHosts’s Ad 和 tracking servers,µBlock 的内存占用依然比其他常见的过滤工具要低的多。 31 | 32 | 另外请注意,选择一些额外的列表可能会导致网页破损可能性增高 —— 尤其是那些通常被用作 hosts 文件的列表。 33 | 34 | *** 35 | 36 | 没有这些过滤规则列表,这个扩展就没有了意义。 所以如果你真的想做点贡献,想想那些维护过滤规则的人们,是他们让所有人能够免费使用这一切变得可能。 37 | 38 | *** 39 | 40 | 免费。 41 | 遵从 GPLv3 公共许可协议开源。 42 | 一切为了用户。 43 | 44 | 贡献者 @ Github: 45 | https://github.com/gorhill/uBlock/graphs/contributors 46 | 贡献者 @ Crowdin: 47 | https://crowdin.net/project/ublock 48 | 49 | *** 50 | 51 | 它还是一个相当早期的版本,在您评论的时候请记住这一点。 52 | 53 | 项目更新日志: 54 | https://github.com/gorhill/uBlock/releases -------------------------------------------------------------------------------- /dist/description/description-zh_TW.txt: -------------------------------------------------------------------------------- 1 | 一款高效率的廣告攔截工具:只使用超低的記憶體和CPU使用量,和其他常見的廣告攔截工具相比,可以載入並執行上千條過濾規則。 2 | 3 | 效率概述說明: 4 | https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared 5 | 6 | 用法:點選快顯視窗中的電源按鈕,μBlock將會在目前正在瀏覽的網頁永久停用/啟用廣告攔截功能。 它只適用於目前正在瀏覽的網頁,而不是全域按鈕。 7 | 8 | *** 9 | 10 | 這不只是一個廣告攔截工具,它還可以非常有彈性的從hosts檔裡讀取和建立過濾規則。 11 | 12 | 初始預設載入和執行下列過濾規則: 13 | 14 | - EasyList 15 | - Peter Lowe’s Ad server list 16 | - EasyPrivacy 17 | - Malware domains 18 | - Long-lived malware domains 19 | - Malware Domains List 20 | 21 | 這裡還擁有更多的過濾規則供你選擇: 22 | 23 | - Fanboy’s Enhanced Tracking List 24 | - Dan Pollock’s hosts file 25 | - hpHosts’s Ad and tracking servers 26 | - MVPS HOSTS 27 | - Spam404 28 | - 其他 29 | 30 | 啟用越多的過濾規則就會佔用越多的記憶體。 然而,即使在加入 Fanboy 額外的兩個規則和 hpHosts’s Ad and tracking servers,μBlock 的記憶體佔用依然比其他常見的過濾工具要小的多。 31 | 32 | 另外,請注意選擇的一些額外的清單可能會導致網頁破損可能性增高 — — 尤其是那些通常用來當作hosts檔案的清單。 33 | 34 | *** 35 | 36 | 沒有這些過濾規則清單,這個擴充套件就沒有了意義。 所以如果你真的想要做些貢獻,試著想想那些努力維護廣告過濾規則清單的人們,至少他們讓大家可以免費使用這一切。 37 | 38 | *** 39 | 40 | 自由、免費。 41 | 開放原始程式碼與公共許可證 (GPLv3) 42 | 一切都是為了使用者。 43 | 44 | 貢獻者@ Github: 45 | https://github.com/gorhill/uBlock/graphs/contributors 46 | 貢獻者 @ Crowdin: 47 | https://crowdin.net/project/ublock 48 | 49 | *** 50 | 51 | 這還只是一個非常初期的版本,當您留下建議的時候請手下留情。 52 | 53 | 專案更新日誌: 54 | https://github.com/gorhill/uBlock/releases 55 | -------------------------------------------------------------------------------- /doc/benchmarks/cpu-usage-overall-20141226.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/cpu-usage-overall-20141226.ods -------------------------------------------------------------------------------- /doc/benchmarks/cpu-usage-overall-chart-20141226.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/cpu-usage-overall-chart-20141226.png -------------------------------------------------------------------------------- /doc/benchmarks/cpu-usage-overall-notes.txt: -------------------------------------------------------------------------------- 1 | Steps, roughly: 2 | 3 | Capture Task Manager using SimpleScreenRecorder 4 | 5 | Launch reference benchmark 6 | 7 | Stop and save capture once reference benchmark completes 8 | 9 | Extract/crop/scale area to OCR (the CPU figures) 10 | 11 | avconv -i ublock-cpu.webm -r 4 -vsync 1 -vf "[in] crop=40:86:310:100 [T1], [T1] scale=160:360 [out]" -t 2400 img/img-%04d.png 12 | 13 | Execute tesseract custom script: 14 | 15 | ./tessall 16 | 17 | `all.txt` contains a csv of the results. 18 | Paste in spreadsheet. Etc. 19 | 20 | 21 | `tessal` script: 22 | 23 | #!/bin/sh 24 | rm all.txt 25 | echo 26 | for i in img/img*.png; do 27 | echo -ne '\r' $i 28 | b=`basename $i .png` 29 | tesseract $i out -psm 6 digits 1>/dev/null 2>&1 30 | cat out.txt | perl -p -000 -e 's/(\d+)\s+/\1,/g' | perl -pe 's/,$/\n/' >> all.txt 31 | done -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-20140918-after.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-20140918-after.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-20140918-before.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-20140918-before.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-20141223-after.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-20141223-after.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-20141223-before.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-20141223-before.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-in-page-20140919-abp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-in-page-20140919-abp.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-in-page-20140919-none.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-in-page-20140919-none.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-in-page-20140919-ublock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-in-page-20140919-ublock.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-in-page-20141224-abp-more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-in-page-20141224-abp-more.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-in-page-20141224-abp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-in-page-20141224-abp.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-in-page-20141224-none.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-in-page-20141224-none.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-in-page-20141224-ublock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-in-page-20141224-ublock.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-overall-20141224.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-overall-20141224.ods -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-overall-chart-20141224.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-overall-chart-20141224.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-overall-chart-20150205.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-overall-chart-20150205.png -------------------------------------------------------------------------------- /doc/benchmarks/mem-usage-overall-chart-safari-20150205.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/mem-usage-overall-chart-safari-20150205.png -------------------------------------------------------------------------------- /doc/benchmarks/privex-201407-22.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/privex-201407-22.ods -------------------------------------------------------------------------------- /doc/benchmarks/privex-201409-30.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/privex-201409-30.ods -------------------------------------------------------------------------------- /doc/benchmarks/privex-201409-30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/privex-201409-30.png -------------------------------------------------------------------------------- /doc/benchmarks/ublock-vs-abp-timeline.ods: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/benchmarks/ublock-vs-abp-timeline.ods -------------------------------------------------------------------------------- /doc/img/3rd-party-filters-custom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/3rd-party-filters-custom.png -------------------------------------------------------------------------------- /doc/img/abp-abe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/abp-abe.png -------------------------------------------------------------------------------- /doc/img/abp-obr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/abp-obr.png -------------------------------------------------------------------------------- /doc/img/abp-own-mem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/abp-own-mem.png -------------------------------------------------------------------------------- /doc/img/abp-vs-ublock-page-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/abp-vs-ublock-page-1.png -------------------------------------------------------------------------------- /doc/img/acid3test-mem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/acid3test-mem.png -------------------------------------------------------------------------------- /doc/img/behind-the-scene-popup.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/behind-the-scene-popup.gif -------------------------------------------------------------------------------- /doc/img/bgpage-cpu-si.comx10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/bgpage-cpu-si.comx10.png -------------------------------------------------------------------------------- /doc/img/chrome-store-david-h-mason.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/chrome-store-david-h-mason.png -------------------------------------------------------------------------------- /doc/img/df-dd-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-dd-01.png -------------------------------------------------------------------------------- /doc/img/df-dd-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-dd-02.png -------------------------------------------------------------------------------- /doc/img/df-dd-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-dd-03.png -------------------------------------------------------------------------------- /doc/img/df-qg-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-01.png -------------------------------------------------------------------------------- /doc/img/df-qg-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-02.png -------------------------------------------------------------------------------- /doc/img/df-qg-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-03.png -------------------------------------------------------------------------------- /doc/img/df-qg-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-04.png -------------------------------------------------------------------------------- /doc/img/df-qg-05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-05.png -------------------------------------------------------------------------------- /doc/img/df-qg-06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-06.png -------------------------------------------------------------------------------- /doc/img/df-qg-07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-07.png -------------------------------------------------------------------------------- /doc/img/df-qg-08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-08.png -------------------------------------------------------------------------------- /doc/img/df-qg-09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-09.png -------------------------------------------------------------------------------- /doc/img/df-qg-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-10.png -------------------------------------------------------------------------------- /doc/img/df-qg-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-qg-11.png -------------------------------------------------------------------------------- /doc/img/df-tut-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-tut-01.png -------------------------------------------------------------------------------- /doc/img/df-tut-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-tut-02.png -------------------------------------------------------------------------------- /doc/img/df-tut-03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-tut-03.png -------------------------------------------------------------------------------- /doc/img/df-tut-04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-tut-04.png -------------------------------------------------------------------------------- /doc/img/df-tut-05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-tut-05.png -------------------------------------------------------------------------------- /doc/img/df-tut-06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/df-tut-06.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-1.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-2.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-3.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-4.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-5.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-6.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-7.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-8.png -------------------------------------------------------------------------------- /doc/img/dynamic-filtering-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/dynamic-filtering-9.png -------------------------------------------------------------------------------- /doc/img/hn-abp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/hn-abp.png -------------------------------------------------------------------------------- /doc/img/hn-alone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/hn-alone.png -------------------------------------------------------------------------------- /doc/img/hn-ublock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/hn-ublock.png -------------------------------------------------------------------------------- /doc/img/leaverou-adblock-is-theft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/leaverou-adblock-is-theft.png -------------------------------------------------------------------------------- /doc/img/local-mirroring-example-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/local-mirroring-example-1.png -------------------------------------------------------------------------------- /doc/img/local-mirroring.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/local-mirroring.png -------------------------------------------------------------------------------- /doc/img/mem-footprint-at-launch-time.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/mem-footprint-at-launch-time.png -------------------------------------------------------------------------------- /doc/img/opera-300x188.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/opera-300x188.png -------------------------------------------------------------------------------- /doc/img/popup-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/popup-1.png -------------------------------------------------------------------------------- /doc/img/popup-1a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/popup-1a.png -------------------------------------------------------------------------------- /doc/img/popup-1b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/popup-1b.png -------------------------------------------------------------------------------- /doc/img/popup-1c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/popup-1c.png -------------------------------------------------------------------------------- /doc/img/popup-1d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/popup-1d.png -------------------------------------------------------------------------------- /doc/img/popup-1e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/popup-1e.png -------------------------------------------------------------------------------- /doc/img/popup-1f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/popup-1f.png -------------------------------------------------------------------------------- /doc/img/popup-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/popup-2.png -------------------------------------------------------------------------------- /doc/img/privacy-benchmark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/privacy-benchmark.png -------------------------------------------------------------------------------- /doc/img/profiling-cosmetic-filters-v0.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/profiling-cosmetic-filters-v0.3.png -------------------------------------------------------------------------------- /doc/img/profiling-cosmetic-filters-v0.4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/profiling-cosmetic-filters-v0.4.png -------------------------------------------------------------------------------- /doc/img/ss-chromium-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ss-chromium-1.png -------------------------------------------------------------------------------- /doc/img/ss-chromium-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ss-chromium-2.png -------------------------------------------------------------------------------- /doc/img/ss-chromium-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ss-chromium-3.png -------------------------------------------------------------------------------- /doc/img/ss-chromium-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ss-chromium-4.png -------------------------------------------------------------------------------- /doc/img/ss-element-picker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ss-element-picker.png -------------------------------------------------------------------------------- /doc/img/ss-opera-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ss-opera-1.png -------------------------------------------------------------------------------- /doc/img/ss-opera-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ss-opera-2.png -------------------------------------------------------------------------------- /doc/img/ss-opera-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ss-opera-3.png -------------------------------------------------------------------------------- /doc/img/tips-n-tricks-001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/tips-n-tricks-001.png -------------------------------------------------------------------------------- /doc/img/tips-n-tricks-002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/tips-n-tricks-002.png -------------------------------------------------------------------------------- /doc/img/ublock-obr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ublock-obr.png -------------------------------------------------------------------------------- /doc/img/ublock-own-mem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ublock-own-mem.png -------------------------------------------------------------------------------- /doc/img/ublock-vs-abp-memory-201409-a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ublock-vs-abp-memory-201409-a.png -------------------------------------------------------------------------------- /doc/img/ublock-vs-abp-memory-201409-b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/ublock-vs-abp-memory-201409-b.png -------------------------------------------------------------------------------- /doc/img/wiki-hphosts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/img/wiki-hphosts.png -------------------------------------------------------------------------------- /doc/media/abp-vs-ublock-ns.webm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/media/abp-vs-ublock-ns.webm -------------------------------------------------------------------------------- /doc/media/ublock-vs-abp-cpu-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/media/ublock-vs-abp-cpu-2.png -------------------------------------------------------------------------------- /doc/media/ublock-vs-abp-cpu-2.webm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/media/ublock-vs-abp-cpu-2.webm -------------------------------------------------------------------------------- /doc/media/ublock-vs-none-ns.webm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/doc/media/ublock-vs-none-ns.webm -------------------------------------------------------------------------------- /platform/chromium/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | 4 | "name": "µBlock", 5 | "version": "0.8.8.1", 6 | 7 | "default_locale": "en", 8 | "description": "__MSG_extShortDesc__", 9 | "icons": { 10 | "16": "img/icon_16.png", 11 | "128": "img/icon_128.png" 12 | }, 13 | 14 | "browser_action": { 15 | "default_icon": { 16 | "19": "img/browsericons/icon19-off.png", 17 | "38": "img/browsericons/icon38-off.png" 18 | }, 19 | "default_title": "µBlock", 20 | "default_popup": "popup.html" 21 | }, 22 | 23 | "author": "The µBlock Development Team", 24 | "background": { 25 | "page": "background.html" 26 | }, 27 | "content_scripts": [ 28 | { 29 | "matches": ["http://*/*", "https://*/*"], 30 | "js": ["js/vapi-client.js", "js/contentscript-start.js"], 31 | "run_at": "document_start", 32 | "all_frames": true 33 | }, 34 | { 35 | "matches": ["http://*/*", "https://*/*"], 36 | "js": ["js/contentscript-end.js"], 37 | "run_at": "document_end", 38 | "all_frames": true 39 | } 40 | ], 41 | "minimum_chrome_version": "22.0", 42 | "options_page": "dashboard.html", 43 | "options_ui": { 44 | "page": "options_ui.html" 45 | }, 46 | "permissions": [ 47 | "contextMenus", 48 | "storage", 49 | "tabs", 50 | "unlimitedStorage", 51 | "webNavigation", 52 | "webRequest", 53 | "webRequestBlocking", 54 | "http://*/*", 55 | "https://*/*" 56 | ] 57 | } 58 | -------------------------------------------------------------------------------- /platform/chromium/options_ui.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /platform/chromium/options_ui.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a browser extension to block requests. 4 | Copyright (C) 2015 The µBlock authors 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /******************************************************************************/ 23 | 24 | (function() { 25 | 26 | /******************************************************************************/ 27 | 28 | 'use strict'; 29 | 30 | var messager = vAPI.messaging.channel('_open'); 31 | messager.send({ 32 | what: 'gotoURL', 33 | details: { 34 | url: 'dashboard.html', 35 | index: -1 36 | } 37 | }); 38 | window.close(); 39 | 40 | /******************************************************************************/ 41 | 42 | })(); 43 | 44 | /******************************************************************************/ 45 | -------------------------------------------------------------------------------- /platform/chromium/vapi-common.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a browser extension to block requests. 4 | Copyright (C) 2014 The µBlock authors 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | // For background page or non-background pages 23 | 24 | /* global self */ 25 | 26 | /******************************************************************************/ 27 | /******************************************************************************/ 28 | 29 | (function() { 30 | 31 | 'use strict'; 32 | 33 | self.vAPI = self.vAPI || {}; 34 | 35 | var chrome = self.chrome; 36 | var vAPI = self.vAPI; 37 | 38 | /******************************************************************************/ 39 | 40 | // http://www.w3.org/International/questions/qa-scripts#directions 41 | 42 | var setScriptDirection = function(language) { 43 | document.body.setAttribute( 44 | 'dir', 45 | ['ar', 'he', 'fa', 'ps', 'ur'].indexOf(language) !== -1 ? 'rtl' : 'ltr' 46 | ); 47 | }; 48 | 49 | /******************************************************************************/ 50 | 51 | vAPI.download = function(details) { 52 | if ( !details.url ) { 53 | return; 54 | } 55 | 56 | var a = document.createElement('a'); 57 | 58 | if ( 'download' in a ) { 59 | a.href = details.url; 60 | a.setAttribute('download', details.filename || ''); 61 | a.dispatchEvent(new MouseEvent('click')); 62 | return; 63 | } 64 | var messager = vAPI.messaging.channel('_download'); 65 | messager.send({ 66 | what: 'gotoURL', 67 | details: { 68 | url: details.url, 69 | index: -1 70 | } 71 | }); 72 | messager.close(); 73 | }; 74 | 75 | /******************************************************************************/ 76 | 77 | vAPI.insertHTML = function(node, html) { 78 | node.innerHTML = html; 79 | }; 80 | 81 | /******************************************************************************/ 82 | 83 | vAPI.getURL = chrome.runtime.getURL; 84 | 85 | /******************************************************************************/ 86 | 87 | vAPI.i18n = chrome.i18n.getMessage; 88 | 89 | setScriptDirection(vAPI.i18n('@@ui_locale')); 90 | 91 | /******************************************************************************/ 92 | 93 | vAPI.closePopup = function() { 94 | window.open('','_self').close(); 95 | }; 96 | 97 | /******************************************************************************/ 98 | 99 | })(); 100 | 101 | /******************************************************************************/ 102 | -------------------------------------------------------------------------------- /platform/chromium/vapi-popup.js: -------------------------------------------------------------------------------- 1 | /* Chromium: no platform-specific code */ -------------------------------------------------------------------------------- /platform/firefox/chrome.manifest: -------------------------------------------------------------------------------- 1 | content ublock ./ 2 | -------------------------------------------------------------------------------- /platform/firefox/frameScript.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a browser extension to block requests. 4 | Copyright (C) 2014 The µBlock authors 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | 'use strict'; 23 | 24 | /******************************************************************************/ 25 | 26 | Components.utils.import( 27 | Components.stack.filename.replace('Script', 'Module'), 28 | null 29 | ); 30 | 31 | /******************************************************************************/ 32 | -------------------------------------------------------------------------------- /platform/firefox/install.rdf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {{2b10c1c8-a11f-4bad-fe9c-1c11e82cac42}} 5 | {version} 6 | {name} 7 | {description} 8 | {homepage} 9 | {author} 10 | 2 11 | true 12 | true 13 | 3 14 | chrome://ublock/content/dashboard.html 15 | {localized} 16 | 17 | 18 | 19 | 20 | {{ec8030f7-c20a-464f-9b0e-13a3a9e97384}} 21 | 24.0 22 | 39.0 23 | 24 | 25 | 26 | 27 | 28 | 29 | {{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}} 30 | 2.21 31 | 2.36 32 | 33 | 34 | 35 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /platform/firefox/vapi-popup.js: -------------------------------------------------------------------------------- 1 | /* Firefox: no platform-specific code */ -------------------------------------------------------------------------------- /platform/opera/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | 4 | "name": "µBlock", 5 | "version": "0.8.7.0", 6 | 7 | "default_locale": "en", 8 | "description": "__MSG_extShortDesc__", 9 | "icons": { 10 | "16": "img/icon_16.png", 11 | "128": "img/icon_128.png" 12 | }, 13 | 14 | "browser_action": { 15 | "default_icon": { 16 | "19": "img/browsericons/icon19-off.png", 17 | "38": "img/browsericons/icon38-off.png" 18 | }, 19 | "default_title": "µBlock", 20 | "default_popup": "popup.html" 21 | }, 22 | 23 | "author": "The µBlock Development Team", 24 | "background": { 25 | "page": "background.html" 26 | }, 27 | "content_scripts": [ 28 | { 29 | "matches": ["http://*/*", "https://*/*"], 30 | "js": ["js/vapi-client.js", "js/contentscript-start.js"], 31 | "run_at": "document_start", 32 | "all_frames": true 33 | }, 34 | { 35 | "matches": ["http://*/*", "https://*/*"], 36 | "js": ["js/contentscript-end.js"], 37 | "run_at": "document_end", 38 | "all_frames": true 39 | } 40 | ], 41 | "minimum_chrome_version": "22.0", 42 | "options_page": "dashboard.html", 43 | "permissions": [ 44 | "contextMenus", 45 | "storage", 46 | "tabs", 47 | "unlimitedStorage", 48 | "webNavigation", 49 | "webRequest", 50 | "webRequestBlocking", 51 | "http://*/*", 52 | "https://*/*" 53 | ] 54 | } 55 | -------------------------------------------------------------------------------- /platform/safari/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Author 6 | Chris Aljoudi 7 | Builder Version 8 | 534.57.2 9 | CFBundleDisplayName 10 | {name} 11 | CFBundleIdentifier 12 | net.gorhill.uBlock 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleShortVersionString 16 | {version} 17 | CFBundleVersion 18 | {buildNumber} 19 | Chrome 20 | 21 | Database Quota 22 | 52428800 23 | Global Page 24 | background.html 25 | Popovers 26 | 27 | 28 | Filename 29 | popup.html 30 | Identifier 31 | popover 32 | 33 | 34 | Toolbar Items 35 | 36 | 37 | Identifier 38 | toolbarItem 39 | Image 40 | img/browsericons/icon16.png 41 | Label 42 | {name} 43 | Palette Label 44 | {name} 45 | Popover 46 | popover 47 | Tool Tip 48 | {name} {version} 49 | 50 | 51 | 52 | Content 53 | 54 | Scripts 55 | 56 | End 57 | 58 | js/contentscript-end.js 59 | 60 | Start 61 | 62 | js/vapi-client.js 63 | js/contentscript-start.js 64 | 65 | 66 | Whitelist 67 | 68 | http://*/* 69 | https://*/* 70 | 71 | 72 | Description 73 | {description} 74 | ExtensionInfoDictionaryVersion 75 | 1.0 76 | Permissions 77 | 78 | Website Access 79 | 80 | Include Secure Pages 81 | 82 | Level 83 | All 84 | 85 | 86 | Update Manifest URL 87 | https://chrismatic.io/ublock/Update.plist 88 | Website 89 | https://chrismatic.io/ 90 | 91 | 92 | -------------------------------------------------------------------------------- /platform/safari/Settings.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | DefaultValue 7 | 8 | FalseValue 9 | 10 | Key 11 | open_prefs 12 | Secure 13 | 14 | Title 15 | Click to see the Preferences 16 | TrueValue 17 | 18 | Type 19 | CheckBox 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /platform/safari/Update.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Extension Updates 6 | 7 | 8 | CFBundleIdentifier 9 | net.gorhill.uBlock 10 | Developer Identifier 11 | 96G4BAKDQ9 12 | CFBundleShortVersionString 13 | {version} 14 | CFBundleVersion 15 | {buildNumber} 16 | URL 17 | https://chrismatic.io/ublock/ublock-latest.safariextz 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /platform/safari/vapi-common.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a browser extension to block requests. 4 | Copyright (C) 2014 The µBlock authors 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | // For background page or non-background pages 23 | 24 | /******************************************************************************/ 25 | 26 | (function() { 27 | 28 | 'use strict'; 29 | 30 | var vAPI = self.vAPI = self.vAPI || {}; 31 | 32 | /******************************************************************************/ 33 | 34 | // http://www.w3.org/International/questions/qa-scripts#directions 35 | 36 | var setScriptDirection = function(language) { 37 | document.body.setAttribute( 38 | 'dir', 39 | ['ar', 'he', 'fa', 'ps', 'ur'].indexOf(language) !== -1 ? 'rtl' : 'ltr' 40 | ); 41 | }; 42 | 43 | /******************************************************************************/ 44 | 45 | vAPI.download = function(details) { 46 | if ( !details.url ) { 47 | return; 48 | } 49 | 50 | var a = document.createElement('a'); 51 | 52 | if ( 'download' in a ) { 53 | a.href = details.url; 54 | a.setAttribute('download', details.filename || ''); 55 | a.dispatchEvent(new MouseEvent('click')); 56 | return; 57 | } 58 | var messager = vAPI.messaging.channel('_download'); 59 | messager.send({ 60 | what: 'gotoURL', 61 | details: { 62 | url: details.url, 63 | index: -1 64 | } 65 | }); 66 | messager.close(); 67 | }; 68 | 69 | /******************************************************************************/ 70 | 71 | vAPI.insertHTML = function(node, html) { 72 | node.innerHTML = html; 73 | }; 74 | 75 | /******************************************************************************/ 76 | 77 | vAPI.getURL = function(path) { 78 | return safari.extension.baseURI + path; 79 | }; 80 | 81 | /******************************************************************************/ 82 | 83 | // Supported languages 84 | // First language is the default 85 | 86 | vAPI.i18nData = [ 87 | 'en', 'ar', 'ca', 'cs', 'da', 'de', 'el', 'es', 'et', 'fi', 'fil', 88 | 'fr', 'he', 'hi', 'hr', 'hu', 'id', 'it', 'ja', 'mr', 'nb', 'nl', 'pl', 89 | 'pt-BR', 'pt-PT', 'ro', 'ru', 'sv', 'tr', 'uk', 'vi', 'zh-CN', 'zh-TW' 90 | ]; 91 | 92 | vAPI.i18n = navigator.language; 93 | 94 | if ( vAPI.i18nData.indexOf(vAPI.i18n) === -1 ) { 95 | vAPI.i18n = vAPI.i18n.slice(0, 2); 96 | 97 | if ( vAPI.i18nData.indexOf(vAPI.i18n) === -1 ) { 98 | vAPI.i18n = vAPI.i18nData[0]; 99 | } 100 | } 101 | 102 | setScriptDirection(vAPI.i18n); 103 | 104 | var xhr = new XMLHttpRequest; 105 | xhr.overrideMimeType('application/json;charset=utf-8'); 106 | xhr.open('GET', './_locales/' + vAPI.i18n + '.json', false); 107 | xhr.send(); 108 | vAPI.i18nData = JSON.parse(xhr.responseText); 109 | 110 | vAPI.i18n = function(s) { 111 | return this.i18nData[s] || ''; 112 | }; 113 | 114 | /******************************************************************************/ 115 | 116 | vAPI.closePopup = function() { 117 | var popover = safari.extension.popovers[0]; 118 | if ( popover ) { 119 | popover.hide(); 120 | } 121 | }; 122 | 123 | })(); 124 | -------------------------------------------------------------------------------- /platform/safari/vapi-popup.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2015 The µBlock authors 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | (function() { 22 | 'use strict'; 23 | 24 | var whenSizeChanges = function(elm, callback) { 25 | var reset = function() { 26 | k.style.width = grow.offsetWidth + 10 + "px"; 27 | k.style.height = grow.offsetHeight + 10 + "px"; 28 | grow.scrollLeft = grow.scrollWidth; 29 | grow.scrollTop = grow.scrollHeight; 30 | shrink.scrollLeft = shrink.scrollWidth; 31 | shrink.scrollTop = shrink.scrollHeight; 32 | w = elm.offsetWidth; 33 | h = elm.offsetHeight; 34 | } 35 | var aux = document.createElement("div"); 36 | aux.style.cssText = "position:absolute;left:0;top:0;right:0;bottom:0;overflow:scroll;z-index:-1;visibility:hidden"; 37 | aux.innerHTML = '
\ 38 |
\ 39 |
\ 40 |
\ 41 |
\ 42 |
'; 43 | elm.appendChild(aux); 44 | var grow = aux.childNodes[0], 45 | k = grow.childNodes[0], 46 | shrink = aux.childNodes[1]; 47 | var w, h; 48 | reset(); 49 | grow.addEventListener("scroll", function() { 50 | (elm.offsetWidth > w || elm.offsetHeight > h) && callback(); 51 | reset(); 52 | }); 53 | shrink.addEventListener("scroll", function() { 54 | (elm.offsetWidth < w || elm.offsetHeight < h) && callback(); 55 | reset(); 56 | }); 57 | }; 58 | var onLoaded = function() { 59 | var body = document.body, popover = safari.self; 60 | var updateSize = function() { 61 | popover.width = body.clientWidth; 62 | popover.height = body.clientHeight; 63 | }; 64 | body.style.position = "relative"; // Necessary for size change detection 65 | whenSizeChanges(body, updateSize); 66 | }; 67 | window.addEventListener('load', onLoaded); 68 | })(); 69 | -------------------------------------------------------------------------------- /src/1p-filters.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | µBlock — Your filters 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 |

15 |

16 | 17 |

  18 | 19 |

20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /src/3p-filters.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | µBlock — Ubiquitous rules 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
    15 |
  • 16 | 17 | 18 |
  • 19 | 20 |
    21 |
  • 22 |
23 |
    24 |
25 | 26 |
27 |

28 | 29 |

30 |
31 | 32 |
33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /src/about.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | µBlock — About 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |

14 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /src/asset-viewer.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | µBlock — Asset 6 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /src/background.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | µBlock 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /src/css/1p-filters.css: -------------------------------------------------------------------------------- 1 | div > p:first-child { 2 | margin-top: 0; 3 | } 4 | div > p:last-child { 5 | margin-bottom: 0; 6 | } 7 | .userFilters { 8 | font-size: small; 9 | width: 48em; 10 | height: 40em; 11 | white-space: pre; 12 | text-align: left; 13 | } 14 | -------------------------------------------------------------------------------- /src/css/3p-filters.css: -------------------------------------------------------------------------------- 1 | ul { 2 | padding: 0; 3 | list-style-type: none; 4 | } 5 | #options { 6 | margin-top: 0; 7 | } 8 | #options li { 9 | margin-bottom: 0.5em; 10 | } 11 | #lists { 12 | margin: 0.5em 0 0 0; 13 | padding-left: 1em; 14 | padding-right: 0em; 15 | } 16 | body[dir=rtl] #lists { 17 | padding-left: 0em; 18 | padding-right: 1em; 19 | } 20 | #lists > li { 21 | margin: 0.5em 0 0 0; 22 | padding: 0; 23 | font-size: 15px; 24 | list-style-type: none; 25 | } 26 | #lists > li > ul { 27 | margin: 0.25em 0 0 0; 28 | } 29 | li.listDetails { 30 | font-size: 14px; 31 | margin: 0 auto 0 auto; 32 | margin-left: 1em; 33 | margin-right: 0em; 34 | } 35 | body[dir=rtl] li.listDetails { 36 | margin-left: 0em; 37 | margin-right: 1em; 38 | } 39 | li.listDetails > * { 40 | unicode-bidi: embed; 41 | } 42 | li.listDetails > a:nth-of-type(2) { 43 | font-size: 13px; 44 | opacity: 0.5; 45 | } 46 | .dim { 47 | opacity: 0.5; 48 | } 49 | /* I designed the button with: http://charliepark.org/bootstrap_buttons/ */ 50 | button.custom { 51 | padding: 5px; 52 | border: 1px solid transparent; 53 | border-color: #80b3ff #80b3ff hsl(216, 100%, 75%); 54 | border-radius: 3px; 55 | background-color: hsl(216, 100%, 75%); 56 | background-image: linear-gradient(#a8cbff, #80b3ff); 57 | background-repeat: repeat-x; 58 | color: #222; 59 | cursor: pointer; 60 | opacity: 0.8; 61 | } 62 | button.custom.disabled { 63 | border-color: #dddddd #dddddd hsl(36, 0%, 85%); 64 | background-color: hsl(36, 0%, 72%); 65 | background-image: linear-gradient(#f2f2f2, #dddddd); 66 | color: #aaa; 67 | pointer-events: none; 68 | } 69 | button.custom:hover { 70 | opacity: 1.0; 71 | } 72 | button.custom.reloadAll:not(.disabled) { 73 | border-color: #ffcc7f #ffcc7f hsl(36, 100%, 73%); 74 | background-color: hsl(36, 100%, 75%); 75 | background-image: linear-gradient(#ffdca8, #ffcc7f); 76 | } 77 | #buttonApply { 78 | position: fixed; 79 | display: initial; 80 | top: 1em; 81 | right: 1em; 82 | } 83 | body[dir=rtl] #buttonApply { 84 | right: auto; 85 | left: 1em; 86 | } 87 | #buttonApply.disabled { 88 | display: none; 89 | } 90 | span.status { 91 | margin: 0; 92 | border: 1px solid transparent; 93 | padding: 1px 2px; 94 | display: inline-block; 95 | font-size: 11px; 96 | opacity: 0.7; 97 | } 98 | span.purge { 99 | border-color: #ddd; 100 | color: #444; 101 | background-color: #eee; 102 | cursor: pointer; 103 | } 104 | span.purge:hover { 105 | opacity: 1; 106 | } 107 | span.obsolete { 108 | border-color: hsl(36, 100%, 73%); 109 | color: #222; 110 | background-color: hsl(36, 100%, 75%); 111 | } 112 | #externalListsDiv { 113 | margin: 2em auto 0 2em; 114 | } 115 | body[dir=rtl] #externalListsDiv { 116 | margin: 2em 2em 0; 117 | } 118 | #externalLists { 119 | font-size: smaller; 120 | width: 48em; 121 | height: 8em; 122 | white-space: pre; 123 | } 124 | body #busyOverlay { 125 | position: fixed; 126 | top: 0; 127 | right: 0; 128 | bottom: 0; 129 | left: 0; 130 | background-color: white; 131 | opacity: 0.5; 132 | cursor: wait; 133 | display: none; 134 | z-index: 1000; 135 | } 136 | body.busy #busyOverlay { 137 | display: block; 138 | } 139 | -------------------------------------------------------------------------------- /src/css/about.css: -------------------------------------------------------------------------------- 1 | ul { 2 | padding-__MSG_@@bidi_start_edge__: 1em; 3 | margin-__MSG_@@bidi_start_edge__: 1em; 4 | } 5 | -------------------------------------------------------------------------------- /src/css/common.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'FontAwesome'; 3 | src: url('fonts/fontawesome-webfont.ttf') format('truetype'); 4 | font-weight: normal; 5 | font-style: normal; 6 | } 7 | .fa { 8 | font-family: FontAwesome; 9 | font-style: normal; 10 | font-weight: normal; 11 | line-height: 1; 12 | vertical-align: baseline; 13 | display: inline-block; 14 | } 15 | 16 | /* https://developer.mozilla.org/en-US/docs/Web/CSS/::after#Tooltips */ 17 | [data-tip] { 18 | cursor: pointer; 19 | position: relative; 20 | } 21 | body:not(.advancedUser) [data-tip]:after { 22 | background-color: #ffffee; 23 | border: 1px solid gray; 24 | border-radius: 3px; 25 | box-shadow: 1px 1px 3px gray; 26 | color: black; 27 | content: attr(data-tip); 28 | font: 12px sans-serif; 29 | left: 0; 30 | line-height: 130%; 31 | min-width: 55%; 32 | padding: 4px 6px; 33 | position: absolute; 34 | text-align: left; 35 | top: 110%; 36 | white-space: pre-line; 37 | z-index: 20; 38 | pointer-events: none; 39 | opacity: 0; 40 | } 41 | [data-tip]:hover:after { 42 | opacity: 1 !important; 43 | -webkit-transition: opacity 0.2s 0.4s; 44 | transition: opacity 0.2s 0.4s; 45 | } 46 | body[dir=rtl] [data-tip]:hover:after { 47 | text-align: right; 48 | } 49 | 50 | body [data-tip][data-tip-anchor="top"]:hover:after { 51 | bottom: 140%; 52 | top: auto; 53 | } 54 | body[dir=ltr] [data-tip][data-tip-anchor="top"]:hover:after { 55 | left: -500%; 56 | right: 0; 57 | } 58 | body[dir=rtl] [data-tip][data-tip-anchor="top"]:hover:after { 59 | left: 0; 60 | right: -500%; 61 | } 62 | 63 | .hiddenFileInput { 64 | visibility: hidden; 65 | width: 0; 66 | height: 0; 67 | } 68 | -------------------------------------------------------------------------------- /src/css/dashboard-common.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | padding: 0 0.5em 5em 0.5em; 4 | font: 14px sans-serif; 5 | } 6 | h2, h3 { 7 | margin: 1em 0; 8 | font-family: sans-serif; 9 | } 10 | h2 { 11 | font-size: 18px; 12 | } 13 | h2:nth-of-type(1) { 14 | margin-top: 0; 15 | } 16 | h3 { 17 | font-size: 16px; 18 | } 19 | a { 20 | text-decoration: none; 21 | } 22 | button { 23 | padding: 0.33em; 24 | } 25 | div > p:first-child { 26 | margin-top: 0; 27 | } 28 | div > p:last-child { 29 | margin-bottom: 0; 30 | } 31 | 32 | .para { 33 | width: 40em; 34 | } 35 | .whatisthis { 36 | margin: 0 0 0 8px; 37 | border: 0; 38 | padding: 0 0 4px 0; 39 | width: 16px; 40 | height: 16px; 41 | background: url('../img/help16.png') no-repeat; 42 | cursor: pointer; 43 | opacity: 0.5; 44 | vertical-align: middle; 45 | } 46 | .whatisthis:hover { 47 | opacity: 1.0; 48 | } 49 | .whatisthis-expandable { 50 | margin: 0.5em 0 1em 1.25em; 51 | padding: 0.5em; 52 | display: none; 53 | border: 1px dotted black; 54 | background-color: #F8F8F8; 55 | font-size: 13px; 56 | } 57 | .whatisthis-expandable > p { 58 | margin-top: 1em; 59 | margin-bottom: 0; 60 | } 61 | .whatisthis-expandable > p:first-child { 62 | margin-top: 0; 63 | } 64 | .whatisthis-expandable.whatisthis-expanded { 65 | display: block; 66 | } 67 | .warn { 68 | margin: 0; 69 | padding: 5px; 70 | background-color: #FEDAE0; 71 | } 72 | -------------------------------------------------------------------------------- /src/css/dashboard.css: -------------------------------------------------------------------------------- 1 | html, body { 2 | margin: 0; 3 | border: 0; 4 | padding: 0; 5 | font: 15px httpsb,sans-serif; 6 | position: relative; 7 | width: 100%; 8 | height: 100%; 9 | overflow: hidden; 10 | } 11 | #dashboard-nav { 12 | margin: 0; 13 | border: 0; 14 | padding: 0; 15 | position: absolute; 16 | width: 100%; 17 | top: 0; 18 | height: 50px; 19 | z-index: 10; 20 | } 21 | #dashboard-nav-widgets { 22 | margin: 0; 23 | border-bottom: 1px solid #ccc; 24 | padding: 4px 0 0; 25 | white-space: nowrap; 26 | background-color: white; 27 | } 28 | #dashboard-nav-widgets span { 29 | padding: 0 0.5em; 30 | font-size: larger; 31 | } 32 | .tabButton { 33 | margin: 0; 34 | border: 1px solid #ccc; 35 | border-top-left-radius: 3px; 36 | border-top-right-radius: 3px; 37 | border-bottom: 1px solid #ccc; 38 | padding: 4px; 39 | display: inline-block; 40 | position: relative; 41 | top: 1px; 42 | color: black; 43 | background-color: #eee; 44 | font: inherit; 45 | cursor: pointer; 46 | text-decoration: none; 47 | } 48 | .tabButton:focus { 49 | outline: 0; 50 | } 51 | .tabButton:active,.tabButton:visited { 52 | color: inherited; 53 | } 54 | .tabButton.selected { 55 | border-bottom: 1px solid white; 56 | background-color: white; 57 | border-bottom: 1px solid white; 58 | } 59 | iframe { 60 | margin: 0; 61 | border: 0; 62 | padding: 0; 63 | background-color: transparent; 64 | width: 100%; 65 | height: 100%; 66 | border-top: 50px solid transparent; 67 | box-sizing: border-box; 68 | -moz-box-sizing: border-box; 69 | } 70 | -------------------------------------------------------------------------------- /src/css/devtool-log.css: -------------------------------------------------------------------------------- 1 | body { 2 | border: 0; 3 | box-sizing: border-box; 4 | -moz-box-sizing: border-box; 5 | font: 12px monospace; 6 | margin: 0; 7 | overflow-x: hidden; 8 | padding: 0; 9 | white-space: nowrap; 10 | width: 100%; 11 | } 12 | #toolbar { 13 | padding: 8px 0; 14 | position: fixed; 15 | text-align: center; 16 | top: 0; 17 | width: 4em; 18 | } 19 | #toolbar .button { 20 | background-color: white; 21 | border: none; 22 | cursor: pointer; 23 | display: block; 24 | font-size: large; 25 | margin: 0; 26 | padding: 0.5em 0; 27 | } 28 | #toolbar .button:hover { 29 | background-color: #eee; 30 | } 31 | #content { 32 | width: calc(100% - 4em); 33 | } 34 | body[dir="ltr"] #content { 35 | margin-left: 4em; 36 | } 37 | body[dir="rtl"] #content { 38 | margin-right: 4em; 39 | } 40 | #content table { 41 | border: 0; 42 | border-collapse: collapse; 43 | direction: ltr; 44 | width: 100%; 45 | } 46 | #content table tr.blocked { 47 | background-color: rgba(192, 0, 0, 0.1) 48 | } 49 | #content table tr.allowed { 50 | background-color: rgba(0, 160, 0, 0.1) 51 | } 52 | #content table tr.allowed.mirrored { 53 | background-color: rgba(255, 255, 0, 0.3) 54 | } 55 | #content table tr.maindoc { 56 | background-color: #eee; 57 | } 58 | #content table tr td { 59 | border: 1px solid #ccc; 60 | padding: 3px; 61 | vertical-align: top; 62 | } 63 | #content table tr td:nth-of-type(1) { 64 | padding: 3px 0; 65 | text-align: center; 66 | } 67 | #content table tr td:nth-of-type(2) { 68 | white-space: normal; 69 | width: 25%; 70 | word-break: break-all; 71 | word-wrap: break-word; 72 | } 73 | #content table tr td:nth-of-type(3) { 74 | white-space: nowrap; 75 | } 76 | #content table tr td:nth-of-type(4) { 77 | border-right: none; 78 | white-space: normal; 79 | width: 60%; 80 | word-break: break-all; 81 | word-wrap: break-word; 82 | } 83 | #content table tr td:nth-of-type(4) b { 84 | font-weight: normal; 85 | } 86 | #content table tr.blocked td:nth-of-type(4) b { 87 | background-color: rgba(192, 0, 0, 0.2); 88 | } 89 | #content table tr.allowed td:nth-of-type(4) b { 90 | background-color: rgba(0, 160, 0, 0.2); 91 | } -------------------------------------------------------------------------------- /src/css/devtools.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-size: 13px; 3 | margin: 0; 4 | overflow-y: hidden; 5 | padding: 0; 6 | } 7 | #toolbar { 8 | background-color: #eee; 9 | border: none; 10 | box-sizing: border-box; 11 | -moz-box-sizing: border-box; 12 | height: 4em; 13 | padding: 1em; 14 | position: fixed; 15 | top: 0; 16 | width: 100%; 17 | } 18 | #toolbar > * { 19 | display: inline-block; 20 | vertical-align: middle; 21 | } 22 | #toolbar button { 23 | background-color: transparent; 24 | border: none; 25 | cursor: pointer; 26 | font-size: 2em; 27 | margin: 0 0 0 1em; 28 | vertical-align: middle; 29 | } 30 | #toolbar #refresh { 31 | margin-left: 4px; 32 | } 33 | select { 34 | padding: 2px 0; 35 | font-size: 14px; 36 | min-width: 20em; 37 | max-width: 40em; 38 | } 39 | select option { 40 | max-width: 40em; 41 | } 42 | #content { 43 | border: 0; 44 | box-sizing: border-box; 45 | -moz-box-sizing: border-box; 46 | height: calc(100vh - 4em); 47 | margin-top: 4em; 48 | overflow-y: auto; 49 | padding: 0; 50 | width: 100%; 51 | } 52 | -------------------------------------------------------------------------------- /src/css/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/css/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /src/css/whitelist.css: -------------------------------------------------------------------------------- 1 | div > p:first-child { 2 | margin-top: 0; 3 | } 4 | div > p:last-child { 5 | margin-bottom: 0; 6 | } 7 | #whitelist { 8 | font-size: small; 9 | width: 48em; 10 | height: 40em; 11 | white-space: pre; 12 | text-align: left; 13 | } 14 | #whitelist.bad { 15 | background-color: #fee; 16 | } 17 | -------------------------------------------------------------------------------- /src/dashboard.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/devtool-log.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | µBlock log 8 | 9 | 10 |
11 | 12 | 13 |
14 |
15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /src/devtools.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /src/dyna-rules.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | µMatrix — Dynamic filtering rules 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |

14 |

15 |
16 |
17 |
18 |

19 | 20 | 21 |
22 |
23 |
    24 |
    25 |
    26 |
    27 |
    28 |

    29 | 30 | 31 | 32 | 33 | 34 |
    35 |
    36 | 37 |
      38 |
      39 |
      40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /src/epicker.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 140 | 141 | 142 | 143 | 144 | 159 | 160 | -------------------------------------------------------------------------------- /src/img/browsericons/icon16-off.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/img/browsericons/icon16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/browsericons/icon16.png -------------------------------------------------------------------------------- /src/img/browsericons/icon16.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/img/browsericons/icon16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/browsericons/icon16@2x.png -------------------------------------------------------------------------------- /src/img/browsericons/icon19-off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/browsericons/icon19-off.png -------------------------------------------------------------------------------- /src/img/browsericons/icon19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/browsericons/icon19.png -------------------------------------------------------------------------------- /src/img/browsericons/icon38-off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/browsericons/icon38-off.png -------------------------------------------------------------------------------- /src/img/browsericons/icon38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/browsericons/icon38.png -------------------------------------------------------------------------------- /src/img/help16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/help16.png -------------------------------------------------------------------------------- /src/img/icon_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/icon_128.png -------------------------------------------------------------------------------- /src/img/icon_16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fang5566/uBlock/cdca1cfc2245d885c631392930cd5788a54b602a/src/img/icon_16.png -------------------------------------------------------------------------------- /src/js/about.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* global vAPI, uDom */ 23 | 24 | /******************************************************************************/ 25 | 26 | uDom.onLoad(function() { 27 | 28 | 'use strict'; 29 | 30 | /******************************************************************************/ 31 | 32 | var messager = vAPI.messaging.channel('about.js'); 33 | 34 | /******************************************************************************/ 35 | 36 | var onAppDataReady = function(appData) { 37 | uDom('#aboutNameVer').html(appData.name + ' v' + appData.version); 38 | }; 39 | 40 | messager.send({ what: 'getAppData' }, onAppDataReady); 41 | 42 | /******************************************************************************/ 43 | 44 | }); 45 | -------------------------------------------------------------------------------- /src/js/asset-viewer.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* global vAPI, uDom */ 23 | 'use strict'; 24 | 25 | /******************************************************************************/ 26 | 27 | (function() { 28 | 29 | /******************************************************************************/ 30 | 31 | var messager = vAPI.messaging.channel('asset-viewer.js'); 32 | 33 | /******************************************************************************/ 34 | 35 | var onAssetContentReceived = function(details) { 36 | uDom('#content').html(details && (details.content || '')); 37 | }; 38 | 39 | /******************************************************************************/ 40 | 41 | var q = window.location.search; 42 | var matches = q.match(/^\?url=([^&]+)/); 43 | if ( !matches || matches.length !== 2 ) { 44 | return; 45 | } 46 | 47 | messager.send({ what : 'getAssetContent', url: matches[1] }, onAssetContentReceived); 48 | 49 | /******************************************************************************/ 50 | 51 | })(); 52 | -------------------------------------------------------------------------------- /src/js/contextmenu.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* global vAPI, µBlock */ 23 | 'use strict'; 24 | 25 | /******************************************************************************/ 26 | 27 | // New namespace 28 | 29 | µBlock.contextMenu = (function() { 30 | 31 | /******************************************************************************/ 32 | 33 | var µb = µBlock; 34 | var enabled = false; 35 | 36 | /******************************************************************************/ 37 | 38 | var onContextMenuClicked = function(details, tab) { 39 | if ( details.menuItemId !== 'blockElement' ) { 40 | return; 41 | } 42 | if ( tab === undefined ) { 43 | return; 44 | } 45 | if ( /^https?:\/\//.test(tab.url) === false ) { 46 | return; 47 | } 48 | var tagName = details.tagName || ''; 49 | var src = details.frameUrl || details.srcUrl || details.linkUrl || ''; 50 | 51 | if ( !tagName ) { 52 | if ( typeof details.frameUrl === 'string' ) { 53 | tagName = 'iframe'; 54 | } else if ( typeof details.srcUrl === 'string' ) { 55 | if ( details.mediaType === 'image' ) { 56 | tagName = 'img'; 57 | } else if ( details.mediaType === 'video' ) { 58 | tagName = 'video'; 59 | } else if ( details.mediaType === 'audio' ) { 60 | tagName = 'audio'; 61 | } 62 | } else if ( typeof details.linkUrl === 'string' ) { 63 | tagName = 'a'; 64 | } 65 | } 66 | 67 | µb.elementPickerExec(tab.id, tagName + '\t' + src); 68 | }; 69 | 70 | /******************************************************************************/ 71 | 72 | var toggleMenu = function(on) { 73 | // This needs to be local scope: we can't reuse it for more than one 74 | // menu creation call. 75 | var menuCreateDetails = { 76 | id: 'blockElement', 77 | title: vAPI.i18n('pickerContextMenuEntry'), 78 | contexts: ['page', 'editable', 'frame', 'link', 'image', 'video'], 79 | documentUrlPatterns: ['https://*/*', 'http://*/*'] 80 | }; 81 | 82 | if ( on === true && enabled === false ) { 83 | vAPI.contextMenu.create(menuCreateDetails, onContextMenuClicked); 84 | enabled = true; 85 | } else if ( on !== true && enabled === true ) { 86 | vAPI.contextMenu.remove(); 87 | enabled = false; 88 | } 89 | }; 90 | 91 | /******************************************************************************/ 92 | 93 | return { 94 | toggle: toggleMenu 95 | }; 96 | 97 | /******************************************************************************/ 98 | 99 | })(); 100 | -------------------------------------------------------------------------------- /src/js/dashboard-common.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* global uDom */ 23 | 'use strict'; 24 | 25 | /******************************************************************************/ 26 | 27 | uDom.onLoad(function() { 28 | // Open links in the proper window 29 | uDom('a').attr('target', '_blank'); 30 | uDom('a[href*="dashboard.html"]').attr('target', '_parent'); 31 | uDom('.whatisthis').on('click', function() { 32 | uDom(this) 33 | .parent() 34 | .descendants('.whatisthis-expandable') 35 | .toggleClass('whatisthis-expanded'); 36 | }); 37 | }); 38 | -------------------------------------------------------------------------------- /src/js/dashboard.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* global uDom */ 23 | 'use strict'; 24 | 25 | /******************************************************************************/ 26 | 27 | (function() { 28 | 29 | /******************************************************************************/ 30 | 31 | var loadDashboardPanel = function(tab, q) { 32 | var tabButton = uDom('[href="#' + tab + '"]'); 33 | if ( !tabButton ) { 34 | return; 35 | } 36 | q = q || ''; 37 | uDom('iframe').attr('src', tab + q); 38 | uDom('.tabButton').toggleClass('selected', false); 39 | tabButton.toggleClass('selected', true); 40 | }; 41 | 42 | /******************************************************************************/ 43 | 44 | var onTabClickHandler = function(e) { 45 | loadDashboardPanel(this.hash.slice(1)); 46 | e.preventDefault(); 47 | }; 48 | 49 | /******************************************************************************/ 50 | 51 | uDom.onLoad(function() { 52 | var matches = window.location.search.slice(1).match(/\??(tab=([^&]+))?(.*)$/); 53 | var tab = '', q = ''; 54 | if ( matches && matches.length === 4 ) { 55 | tab = matches[2]; 56 | q = matches[3]; 57 | if ( q !== '' && q.charAt(0) === '&' ) { 58 | q = '?' + q.slice(1); 59 | } 60 | } 61 | if ( !tab ) { 62 | tab = 'settings'; 63 | } 64 | loadDashboardPanel(tab + '.html', q); 65 | uDom('.tabButton').on('click', onTabClickHandler); 66 | }); 67 | 68 | /******************************************************************************/ 69 | 70 | })(); 71 | -------------------------------------------------------------------------------- /src/js/i18n.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* global vAPI, uDom */ 23 | 'use strict'; 24 | 25 | /******************************************************************************/ 26 | 27 | // Helper to deal with the i18n'ing of HTML files. 28 | 29 | uDom.onLoad(function() { 30 | uDom('[data-i18n]').forEach(function(elem) { 31 | elem.html(vAPI.i18n(elem.attr('data-i18n'))); 32 | }); 33 | uDom('[title]').forEach(function(elem) { 34 | var title = vAPI.i18n(elem.attr('title')); 35 | if ( title ) { 36 | elem.attr('title', title); 37 | } 38 | }); 39 | uDom('[data-i18n-tip]').forEach(function(elem) { 40 | elem.attr( 41 | 'data-tip', 42 | vAPI.i18n(elem.attr('data-i18n-tip')).replace(/
      /g, '') 43 | ); 44 | }); 45 | }); 46 | -------------------------------------------------------------------------------- /src/js/profiler.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* exported quickProfiler */ 23 | 'use strict'; 24 | 25 | /******************************************************************************/ 26 | 27 | var quickProfiler = (function() { 28 | var timer = window.performance || Date; 29 | var time = 0; 30 | var count = 0; 31 | var tstart = 0; 32 | var lastlog = timer.now(); 33 | var prompt = ''; 34 | var reset = function() { 35 | time = 0; 36 | count = 0; 37 | tstart = 0; 38 | }; 39 | var avg = function() { 40 | return count > 0 ? time / count : 0; 41 | }; 42 | var start = function(s) { 43 | prompt = s || ''; 44 | tstart = timer.now(); 45 | }; 46 | var stop = function(period) { 47 | if ( period === undefined ) { 48 | period = 10000; 49 | } 50 | var now = timer.now(); 51 | count += 1; 52 | time += (now - tstart); 53 | if ( (now - lastlog) >= period ) { 54 | console.log('µBlock> %s: %s ms (%d samples)', prompt, avg().toFixed(3), count); 55 | lastlog = now; 56 | } 57 | }; 58 | return { 59 | reset: reset, 60 | start: start, 61 | stop: stop 62 | }; 63 | })(); 64 | 65 | /******************************************************************************/ 66 | -------------------------------------------------------------------------------- /src/js/utils.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* global µBlock */ 23 | 'use strict'; 24 | 25 | /******************************************************************************/ 26 | 27 | // This will inserted as a module in the µBlock object. 28 | 29 | µBlock.utils = (function() { 30 | 31 | /******************************************************************************/ 32 | 33 | var exports = {}; 34 | 35 | /******************************************************************************/ 36 | 37 | exports.formatCount = function(count) { 38 | if ( typeof count !== 'number' ) { 39 | return ''; 40 | } 41 | var s = count.toFixed(0); 42 | if ( count >= 1000 ) { 43 | if ( count < 10000 ) { 44 | s = '>' + s.slice(0,1) + 'k'; 45 | } else if ( count < 100000 ) { 46 | s = s.slice(0,2) + 'k'; 47 | } else if ( count < 1000000 ) { 48 | s = s.slice(0,3) + 'k'; 49 | } else if ( count < 10000000 ) { 50 | s = s.slice(0,1) + 'M'; 51 | } else { 52 | s = s.slice(0,-6) + 'M'; 53 | } 54 | } 55 | return s; 56 | }; 57 | 58 | // https://www.youtube.com/watch?v=DyvzfyqYm_s 59 | 60 | /******************************************************************************/ 61 | 62 | return exports; 63 | 64 | /******************************************************************************/ 65 | 66 | })(); 67 | 68 | /******************************************************************************/ 69 | -------------------------------------------------------------------------------- /src/js/xal.js: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | 3 | µBlock - a Chromium browser extension to block requests. 4 | Copyright (C) 2014 Raymond Hill 5 | 6 | This program is free software: you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation, either version 3 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program. If not, see {http://www.gnu.org/licenses/}. 18 | 19 | Home: https://github.com/gorhill/uBlock 20 | */ 21 | 22 | /* global µBlock */ 23 | 'use strict'; 24 | 25 | /******************************************************************************/ 26 | 27 | µBlock.XAL = (function(){ 28 | 29 | /******************************************************************************/ 30 | 31 | var exports = {}; 32 | var noopFunc = function(){}; 33 | 34 | 35 | /******************************************************************************/ 36 | 37 | exports.keyvalSetOne = function(key, val, callback) { 38 | var bin = {}; 39 | bin[key] = val; 40 | vAPI.storage.set(bin, callback || noopFunc); 41 | }; 42 | 43 | /******************************************************************************/ 44 | 45 | exports.keyvalSetMany = function(dict, callback) { 46 | vAPI.storage.set(dict, callback || noopFunc); 47 | }; 48 | 49 | /******************************************************************************/ 50 | 51 | exports.keyvalRemoveOne = function(key, callback) { 52 | vAPI.storage.remove(key, callback || noopFunc); 53 | }; 54 | 55 | /******************************************************************************/ 56 | 57 | exports.keyvalRemoveAll = function(callback) { 58 | vAPI.storage.clear(callback || noopFunc); 59 | }; 60 | 61 | /******************************************************************************/ 62 | 63 | return exports; 64 | 65 | /******************************************************************************/ 66 | 67 | })(); 68 | -------------------------------------------------------------------------------- /src/popup.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | µBlock 9 | 10 | 11 | 12 | 13 |
      14 |
      15 |

      16 |

      17 |

      18 |

      19 |   20 |   21 | 22 |

      23 |

      ?

      24 |

      25 |

      ?

      26 |

      27 |

      28 |
      29 |
      30 |
      31 |
      32 |
      33 |
      34 |
      35 |
      36 |
      37 |
      38 |
      39 |
      40 |
      41 | 42 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /src/settings.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | µBlock — Settings 6 | 7 | 8 | 17 | 18 | 19 | 20 | 21 |
        22 |
      • 23 |
      • 24 |
      • 25 |
      • 26 | 27 | 28 |
      29 | 30 |
      31 | 32 |
      33 |

        34 | 35 | 36 |

      37 |

      38 |

      39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /src/whitelist.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | µBlock — Whitelist 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
      14 |

      15 |

      16 | 17 |

        18 | 19 |

      20 |
      21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /tools/import-crowdin.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock: Importing from Crowdin archive" 6 | 7 | SRC=~/Downloads/crowdin 8 | rm -r $SRC 9 | unzip -q ~/Downloads/ublock.zip -d $SRC 10 | 11 | DES=./src/_locales 12 | cp $SRC/ar/messages.json $DES/ar/messages.json 13 | cp $SRC/bg/messages.json $DES/bg/messages.json 14 | cp $SRC/ca/messages.json $DES/ca/messages.json 15 | cp $SRC/cs/messages.json $DES/cs/messages.json 16 | cp $SRC/da/messages.json $DES/da/messages.json 17 | cp $SRC/de/messages.json $DES/de/messages.json 18 | cp $SRC/el/messages.json $DES/el/messages.json 19 | cp $SRC/es-ES/messages.json $DES/es/messages.json 20 | cp $SRC/et/messages.json $DES/et/messages.json 21 | cp $SRC/fa/messages.json $DES/fa/messages.json 22 | cp $SRC/fi/messages.json $DES/fi/messages.json 23 | cp $SRC/fil/messages.json $DES/fil/messages.json 24 | cp $SRC/fr/messages.json $DES/fr/messages.json 25 | cp $SRC/he/messages.json $DES/he/messages.json 26 | cp $SRC/hi/messages.json $DES/hi/messages.json 27 | cp $SRC/hr/messages.json $DES/hr/messages.json 28 | cp $SRC/hu/messages.json $DES/hu/messages.json 29 | cp $SRC/id/messages.json $DES/id/messages.json 30 | cp $SRC/it/messages.json $DES/it/messages.json 31 | cp $SRC/ja/messages.json $DES/ja/messages.json 32 | cp $SRC/ko/messages.json $DES/ko/messages.json 33 | cp $SRC/lv/messages.json $DES/lv/messages.json 34 | cp $SRC/mr/messages.json $DES/mr/messages.json 35 | cp $SRC/no/messages.json $DES/nb/messages.json 36 | cp $SRC/nl/messages.json $DES/nl/messages.json 37 | cp $SRC/pl/messages.json $DES/pl/messages.json 38 | cp $SRC/pt-BR/messages.json $DES/pt_BR/messages.json 39 | cp $SRC/pt-PT/messages.json $DES/pt_PT/messages.json 40 | cp $SRC/ro/messages.json $DES/ro/messages.json 41 | cp $SRC/ru/messages.json $DES/ru/messages.json 42 | cp $SRC/sq/messages.json $DES/sq/messages.json 43 | cp $SRC/sv-SE/messages.json $DES/sv/messages.json 44 | cp $SRC/tr/messages.json $DES/tr/messages.json 45 | cp $SRC/uk/messages.json $DES/uk/messages.json 46 | cp $SRC/vi/messages.json $DES/vi/messages.json 47 | cp $SRC/zh-CN/messages.json $DES/zh_CN/messages.json 48 | cp $SRC/zh-TW/messages.json $DES/zh_TW/messages.json 49 | 50 | # 51 | 52 | DES=./dist/description 53 | cp $SRC/ar/description.txt $DES/description-ar.txt 54 | cp $SRC/bg/description.txt $DES/description-bg.txt 55 | cp $SRC/ca/description.txt $DES/description-ca.txt 56 | cp $SRC/cs/description.txt $DES/description-cs.txt 57 | cp $SRC/da/description.txt $DES/description-da.txt 58 | cp $SRC/de/description.txt $DES/description-de.txt 59 | cp $SRC/el/description.txt $DES/description-el.txt 60 | cp $SRC/es-ES/description.txt $DES/description-es.txt 61 | cp $SRC/et/description.txt $DES/description-et.txt 62 | cp $SRC/fa/description.txt $DES/description-fa.txt 63 | cp $SRC/fi/description.txt $DES/description-fi.txt 64 | cp $SRC/fil/description.txt $DES/description-fil.txt 65 | cp $SRC/fr/description.txt $DES/description-fr.txt 66 | cp $SRC/he/description.txt $DES/description-he.txt 67 | cp $SRC/hr/description.txt $DES/description-hr.txt 68 | cp $SRC/hu/description.txt $DES/description-hu.txt 69 | cp $SRC/id/description.txt $DES/description-id.txt 70 | cp $SRC/it/description.txt $DES/description-it.txt 71 | cp $SRC/ja/description.txt $DES/description-ja.txt 72 | cp $SRC/ko/description.txt $DES/description-ko.txt 73 | cp $SRC/lv/description.txt $DES/description-lv.txt 74 | #cp $SRC/mr/description.txt $DES/description-mr.txt 75 | cp $SRC/no/description.txt $DES/description-no.txt 76 | cp $SRC/nl/description.txt $DES/description-nl.txt 77 | cp $SRC/pl/description.txt $DES/description-pl.txt 78 | cp $SRC/pt-BR/description.txt $DES/description-pt_BR.txt 79 | cp $SRC/pt-PT/description.txt $DES/description-pt_PT.txt 80 | cp $SRC/ro/description.txt $DES/description-ro.txt 81 | cp $SRC/ru/description.txt $DES/description-ru.txt 82 | #cp $SRC/sq/description.txt $DES/description-sq.txt 83 | cp $SRC/sv-SE/description.txt $DES/description-sv.txt 84 | cp $SRC/tr/description.txt $DES/description-tr.txt 85 | cp $SRC/uk/description.txt $DES/description-uk.txt 86 | cp $SRC/vi/description.txt $DES/description-vi.txt 87 | cp $SRC/zh-CN/description.txt $DES/description-zh_CN.txt 88 | #cp $SRC/zh-TW/description.txt $DES/description-zh_TW.txt 89 | 90 | # 91 | 92 | rm -r $SRC 93 | echo "*** uBlock: Import done." 94 | -------------------------------------------------------------------------------- /tools/make-chromium.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock.chromium: Creating web store package" 6 | echo "*** uBlock.chromium: Copying files" 7 | 8 | DES=dist/build/uBlock.chromium 9 | rm -rf $DES 10 | mkdir -p $DES 11 | 12 | cp -R assets $DES/ 13 | rm $DES/assets/*.sh 14 | cp -R src/css $DES/ 15 | cp -R src/img $DES/ 16 | cp -R src/js $DES/ 17 | cp -R src/lib $DES/ 18 | cp -R src/_locales $DES/ 19 | cp -R $DES/_locales/nb $DES/_locales/no 20 | cp src/*.html $DES/ 21 | cp platform/chromium/*.js $DES/js/ 22 | cp platform/chromium/*.html $DES/ 23 | cp platform/chromium/manifest.json $DES/ 24 | cp LICENSE.txt $DES/ 25 | 26 | if [ "$1" = all ]; then 27 | echo "*** uBlock.chromium: Creating package..." 28 | pushd $(dirname $DES/) 29 | zip uBlock.chromium.zip -qr $(basename $DES/)/* 30 | popd 31 | fi 32 | 33 | echo "*** uBlock.chromium: Package done." 34 | -------------------------------------------------------------------------------- /tools/make-clean.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock: Cleaning." 6 | rm -R dist/build 7 | echo "*** uBlock: Cleaned." 8 | -------------------------------------------------------------------------------- /tools/make-fennec.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock.fennec: Copying files" 6 | 7 | DES=dist/build/uBlock.fennec 8 | rm -rf $DES 9 | mkdir -p $DES 10 | 11 | cp -R assets $DES/ 12 | rm $DES/assets/*.sh 13 | cp -R src/css $DES/ 14 | cp -R src/img $DES/ 15 | cp -R src/js $DES/ 16 | cp -R src/lib $DES/ 17 | cp -R src/_locales $DES/ 18 | cp src/*.html $DES/ 19 | mv $DES/img/icon_128.png $DES/icon.png 20 | cp platform/firefox/vapi-*.js $DES/js/ 21 | cp platform/firefox/bootstrap.js $DES/ 22 | cp platform/firefox/frame*.js $DES/ 23 | cp platform/firefox/chrome.manifest $DES/ 24 | cp platform/firefox/install.rdf $DES/ 25 | cp platform/fennec/vapi-*.js $DES/ 26 | cp LICENSE.txt $DES/ 27 | 28 | echo "*** uBlock.fennec: Generating meta..." 29 | python tools/make-firefox-meta.py $DES/ 30 | 31 | if [ "$1" = all ]; then 32 | echo "*** uBlock.fennec: Creating package..." 33 | pushd $DES/ 34 | zip ../uBlock.fennec.xpi -qr * 35 | popd 36 | fi 37 | 38 | echo "*** uBlock.fennec: Package done." 39 | -------------------------------------------------------------------------------- /tools/make-firefox-meta.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | import os 4 | import json 5 | import sys 6 | from io import open 7 | from shutil import rmtree 8 | from collections import OrderedDict 9 | 10 | if len(sys.argv) == 1 or not sys.argv[1]: 11 | raise SystemExit('Build dir missing.') 12 | 13 | 14 | def mkdirs(path): 15 | try: 16 | os.makedirs(path) 17 | finally: 18 | return os.path.exists(path) 19 | 20 | pj = os.path.join 21 | 22 | build_dir = os.path.abspath(sys.argv[1]) 23 | source_locale_dir = pj(build_dir, '_locales') 24 | target_locale_dir = pj(build_dir, 'locale') 25 | language_codes = [] 26 | descriptions = OrderedDict({}) 27 | title_case_strings = ['pickerContextMenuEntry'] 28 | 29 | for alpha2 in sorted(os.listdir(source_locale_dir)): 30 | locale_path = pj(source_locale_dir, alpha2, 'messages.json') 31 | with open(locale_path, encoding='utf-8') as f: 32 | strings = json.load(f, object_pairs_hook=OrderedDict) 33 | 34 | alpha2 = alpha2.replace('_', '-') 35 | descriptions[alpha2] = strings['extShortDesc']['message'] 36 | del strings['extShortDesc'] 37 | 38 | language_codes.append(alpha2) 39 | 40 | mkdirs(pj(target_locale_dir, alpha2)) 41 | 42 | locale_path = pj(target_locale_dir, alpha2, 'messages.properties') 43 | with open(locale_path, 'wt', encoding='utf-8', newline='\n') as f: 44 | for string_name in strings: 45 | string = strings[string_name]['message'] 46 | 47 | if alpha2 == 'en' and string_name in title_case_strings: 48 | string = string.title() 49 | 50 | f.write(string_name) 51 | f.write(u'=') 52 | f.write(string.replace('\n', r'\n')) 53 | f.write(u'\n') 54 | 55 | # generate chrome.manifest file 56 | chrome_manifest = pj(build_dir, 'chrome.manifest') 57 | 58 | with open(chrome_manifest, 'at', encoding='utf-8', newline='\n') as f: 59 | f.write(u'\nlocale ublock en ./locale/en/\n') 60 | 61 | for alpha2 in language_codes: 62 | if alpha2 == 'en': 63 | continue 64 | 65 | f.write(u'locale ublock ' + alpha2 + ' ./locale/' + alpha2 + '/\n') 66 | 67 | rmtree(source_locale_dir) 68 | 69 | # update install.rdf 70 | proj_dir = pj(os.path.split(os.path.abspath(__file__))[0], '..') 71 | chromium_manifest = pj(proj_dir, 'platform', 'chromium', 'manifest.json') 72 | 73 | with open(chromium_manifest, encoding='utf-8') as m: 74 | manifest = json.load(m) 75 | 76 | manifest['homepage'] = 'https://github.com/gorhill/uBlock' 77 | manifest['description'] = descriptions['en'] 78 | del descriptions['en'] 79 | manifest['localized'] = [] 80 | 81 | t = ' ' 82 | t3 = 3 * t 83 | 84 | for alpha2 in descriptions: 85 | if alpha2 == 'en': 86 | continue 87 | 88 | manifest['localized'].append( 89 | '\n' + t*2 + '\n' + 90 | t3 + '' + alpha2 + '\n' + 91 | t3 + '' + manifest['name'] + '\n' + 92 | t3 + '' + descriptions[alpha2] + '\n' + 93 | t3 + '' + manifest['author'] + '\n' + 94 | # t3 + '' + ??? + '\n' + 95 | t3 + '' + manifest['homepage'] + '\n' + 96 | t*2 + '' 97 | ) 98 | 99 | manifest['localized'] = '\n'.join(manifest['localized']) 100 | 101 | install_rdf = pj(build_dir, 'install.rdf') 102 | with open(install_rdf, 'r+t', encoding='utf-8', newline='\n') as f: 103 | install_rdf = f.read() 104 | f.seek(0) 105 | 106 | f.write(install_rdf.format(**manifest)) 107 | -------------------------------------------------------------------------------- /tools/make-firefox.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock.firefox: Copying files" 6 | 7 | DES=dist/build/uBlock.firefox 8 | rm -rf $DES 9 | mkdir -p $DES 10 | 11 | cp -R assets $DES/ 12 | rm $DES/assets/*.sh 13 | cp -R src/css $DES/ 14 | cp -R src/img $DES/ 15 | cp -R src/js $DES/ 16 | cp -R src/lib $DES/ 17 | cp -R src/_locales $DES/ 18 | cp src/*.html $DES/ 19 | mv $DES/img/icon_128.png $DES/icon.png 20 | cp platform/firefox/vapi-*.js $DES/js/ 21 | cp platform/firefox/bootstrap.js $DES/ 22 | cp platform/firefox/frame*.js $DES/ 23 | cp platform/firefox/chrome.manifest $DES/ 24 | cp platform/firefox/install.rdf $DES/ 25 | cp LICENSE.txt $DES/ 26 | 27 | echo "*** uBlock.firefox: Generating meta..." 28 | python tools/make-firefox-meta.py $DES/ 29 | 30 | if [ "$1" = all ]; then 31 | echo "*** uBlock.firefox: Creating package..." 32 | pushd $DES/ 33 | zip ../uBlock.firefox.xpi -qr * 34 | popd 35 | fi 36 | 37 | echo "*** uBlock.firefox: Package done." 38 | -------------------------------------------------------------------------------- /tools/make-noassets.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock: Creating web store package" 6 | echo "*** uBlock: Copying files" 7 | cp -R css dist/ublock/ 8 | cp -R img dist/ublock/ 9 | cp -R js dist/ublock/ 10 | cp -R lib dist/ublock/ 11 | cp -R _locales dist/ublock/ 12 | cp *.html dist/ublock/ 13 | cp *.txt dist/ublock/ 14 | cp manifest.json dist/ublock/ 15 | echo "*** uBlock: Package done." 16 | -------------------------------------------------------------------------------- /tools/make-opera.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock.opera: Creating web store package" 6 | echo "*** uBlock.opera: Copying files" 7 | 8 | DES=dist/build/uBlock.opera 9 | rm -r $DES 10 | mkdir -p $DES 11 | 12 | cp -R assets $DES/ 13 | rm $DES/assets/*.sh 14 | cp -R src/css $DES/ 15 | cp -R src/img $DES/ 16 | cp -R src/js $DES/ 17 | cp -R src/lib $DES/ 18 | cp -R src/_locales $DES/ 19 | cp src/*.html $DES/ 20 | cp platform/chromium/*.js $DES/js/ 21 | cp platform/opera/manifest.json $DES/ 22 | cp LICENSE.txt $DES/ 23 | 24 | rm -r $DES/_locales/hi 25 | rm -r $DES/_locales/mr 26 | rm -r $DES/_locales/sq 27 | 28 | echo "*** uBlock.opera: Package done." 29 | -------------------------------------------------------------------------------- /tools/make-safari-meta.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | import os 4 | import json 5 | import sys 6 | from io import open 7 | from time import time 8 | from shutil import rmtree 9 | from collections import OrderedDict 10 | 11 | if len(sys.argv) == 1 or not sys.argv[1]: 12 | raise SystemExit('Build dir missing.') 13 | 14 | 15 | def mkdirs(path): 16 | try: 17 | os.makedirs(path) 18 | finally: 19 | return os.path.exists(path) 20 | 21 | pj = os.path.join 22 | build_dir = os.path.abspath(sys.argv[1]) 23 | 24 | description = '' 25 | 26 | # locales 27 | locale_dir = pj(build_dir, '_locales') 28 | 29 | for alpha2 in sorted(os.listdir(locale_dir)): 30 | locale_path = pj(locale_dir, alpha2, 'messages.json') 31 | with open(locale_path, encoding='utf-8') as f: 32 | string_data = json.load(f, object_pairs_hook=OrderedDict) 33 | 34 | if alpha2 == 'en': 35 | description = string_data['extShortDesc']['message'] 36 | 37 | for string_name in string_data: 38 | string_data[string_name] = string_data[string_name]['message'] 39 | 40 | rmtree(pj(locale_dir, alpha2)) 41 | 42 | alpha2 = alpha2.replace('_', '-') 43 | locale_path = pj(locale_dir, alpha2 + '.json') 44 | 45 | mkdirs(pj(locale_dir)) 46 | 47 | with open(locale_path, 'wb') as f: 48 | f.write(json.dumps(string_data, ensure_ascii=False).encode('utf8')) 49 | 50 | 51 | # update Info.plist 52 | proj_dir = pj(os.path.split(os.path.abspath(__file__))[0], '..') 53 | chromium_manifest = pj(proj_dir, 'platform', 'chromium', 'manifest.json') 54 | 55 | with open(chromium_manifest, encoding='utf-8') as m: 56 | manifest = json.load(m) 57 | 58 | manifest['buildNumber'] = int(time()) 59 | manifest['description'] = description 60 | 61 | info_plist = pj(build_dir, 'Info.plist') 62 | 63 | with open(info_plist, 'r+t', encoding='utf-8', newline='\n') as f: 64 | info_plist = f.read() 65 | f.seek(0) 66 | 67 | f.write(info_plist.format(**manifest)) 68 | 69 | # update Update.plist 70 | update_plist = pj(proj_dir, 'platform', 'safari', 'Update.plist') 71 | update_plist_build = pj(build_dir, '..', os.path.basename(update_plist)) 72 | 73 | with open(update_plist_build, 'wt', encoding='utf-8', newline='\n') as f: 74 | with open(update_plist, encoding='utf-8') as u: 75 | update_plist = u.read() 76 | 77 | f.write(update_plist.format(**manifest)) 78 | -------------------------------------------------------------------------------- /tools/make-safari.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script assumes a linux environment 4 | 5 | echo "*** uBlock.safariextension: Copying files" 6 | 7 | DES=dist/build/uBlock.safariextension 8 | rm -rf $DES 9 | mkdir -p $DES 10 | 11 | cp -R assets $DES/ 12 | rm $DES/assets/*.sh 13 | cp -R src/css $DES/ 14 | cp -R src/img $DES/ 15 | cp -R src/js $DES/ 16 | cp -R src/lib $DES/ 17 | cp -R src/_locales $DES/ 18 | cp src/*.html $DES/ 19 | mv $DES/img/icon_128.png $DES/Icon.png 20 | cp platform/safari/*.js $DES/js/ 21 | cp platform/safari/Info.plist $DES/ 22 | cp platform/safari/Settings.plist $DES/ 23 | cp LICENSE.txt $DES/ 24 | 25 | echo "*** uBlock.safariextension: Generating meta..." 26 | python tools/make-safari-meta.py $DES/ 27 | 28 | if [ "$1" = all ]; then 29 | echo "*** Use Safari's Extension Builder to create the signed uBlock extension package -- can't automate it." 30 | fi 31 | 32 | echo "*** uBlock.safariextension: Package done." 33 | --------------------------------------------------------------------------------