diff --git "a/About-\"uBlock-is-inferior-in-capabilities-as-a-result-of-being-lighter-on-the-browser\".md" "b/About-\"uBlock-is-inferior-in-capabilities-as-a-result-of-being-lighter-on-the-browser\".md"
index 8398c5f..f1c82ba 100644
--- "a/About-\"uBlock-is-inferior-in-capabilities-as-a-result-of-being-lighter-on-the-browser\".md"
+++ "b/About-\"uBlock-is-inferior-in-capabilities-as-a-result-of-being-lighter-on-the-browser\".md"
@@ -20,20 +20,20 @@ Do these design choices really cause uBO to be _"inferior in capabilities"_ comp
Features | ABP | uBO
-------- | :---: | :---:
**network filtering**
-[multi-stage filtering engine](https://github.com/gorhill/uBlock/wiki/Overview-of-uBlock's-network-filtering-engine)
ability for users to easily override filters in 3rd-party filter lists on a per-site basis | | yes
-`@@...$document` | yes | [no](https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#not-supported)
+[multi-stage filtering engine](./Overview-of-uBlock's-network-filtering-engine)
ability for users to easily override filters in 3rd-party filter lists on a per-site basis | | yes
+`@@...$document` | yes | [no](./Static-filter-syntax#not-supported)
can read hosts files | | yes
-`inline-script`
to prevent execution of inline javascript | [no](https://issues.adblockplus.org/ticket/748) | [yes](https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#inline-script)
-`important`
to be able to override exception filters | | [yes](https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#important)
+`inline-script`
to prevent execution of inline javascript | [no](https://issues.adblockplus.org/ticket/748) | [yes](./Static-filter-syntax#inline-script)
+`important`
to be able to override exception filters | | [yes](./Static-filter-syntax#important)
`popunder` | [no](https://issues.adblockplus.org/ticket/2095) | yes
`redirect`
to redirect to local resources, key to privacy and to counter anti-blockers | | yes
`csp=`
see [rationale](https://github.com/gorhill/uBlock/issues/1930#issuecomment-301055346) | | yes
`badfilter`
to disable an existing filter | | yes
-[strict blocking](https://github.com/gorhill/uBlock/wiki/Strict-blocking) | | yes
+[strict blocking](./Strict-blocking) | | yes
rule-based filtering
firewall-like or URL-based rules with corresponding point-and-click UI | | yes
-behind-the-scene
uBO's logger reports behind-the-scene request, filtering is opt-in | | [yes](https://github.com/gorhill/uBlock/wiki/Behind-the-scene-network-requests)
+behind-the-scene
uBO's logger reports behind-the-scene request, filtering is opt-in | | [yes](./Behind-the-scene-network-requests)
**cosmetic filtering**
-entity-based filters | | [yes](https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#entity-based-cosmetic-filters)
+entity-based filters | | [yes](./Static-filter-syntax#entity-based-cosmetic-filters)
`-abp-properties` | yes | [no](https://github.com/gorhill/uBlock/issues/139)
`:has` | ~~[not yet](https://issues.adblockplus.org/ticket/2360)~~ yes (`:-abp-has`) | yes
`:has-text` | [yes](https://issues.adblockplus.org/ticket/5249) (`-abp-contains`) | yes
@@ -42,26 +42,26 @@ entity-based filters | | [yes](https://github.com/gorhill/uBlock/wiki/Static
`script:contains` | | yes
`script:inject`
key to counter anti-blockers | | yes
**HTML filtering**
-Ability to modify response data on the fly
WebExtensions uBO 1.15+ | | [yes](https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#html-filters)
+Ability to modify response data on the fly
WebExtensions uBO 1.15+ | | [yes](./Static-filter-syntax#html-filters)
**privacy**
pro-user default settings
uBO is not monetized, it's under no pressure to [compromise](https://adblockplus.org/forum/viewtopic.php?f=17&t=50215) on pro-user interests | | yes
-disable pre-fetching | | [yes](https://github.com/gorhill/uBlock/wiki/Dashboard:-Settings#disable-pre-fetching)
-disable hyperlink auditing | | [yes](https://github.com/gorhill/uBlock/wiki/Dashboard:-Settings#disable-hyperlink-auditing)
-disable local IP addresses leakage through WebRTC | | [yes](https://github.com/gorhill/uBlock/wiki/Dashboard:-Settings#prevent-webrtc-from-leaking-local-ip-address)
-block CSP reports | | [yes](https://github.com/gorhill/uBlock/wiki/Dashboard:-Settings#block-csp-reports)
+disable pre-fetching | | [yes](./Dashboard:-Settings#disable-pre-fetching)
+disable hyperlink auditing | | [yes](./Dashboard:-Settings#disable-hyperlink-auditing)
+disable local IP addresses leakage through WebRTC | | [yes](./Dashboard:-Settings#prevent-webrtc-from-leaking-local-ip-address)
+block CSP reports | | [yes](./Dashboard:-Settings#block-csp-reports)
**other features**
-pre-compilation of filter lists for fast loading of filters | | [yes](https://github.com/gorhill/uBlock/wiki/Launch-and-filter-lists-load-performance)
+pre-compilation of filter lists for fast loading of filters | | [yes](./Launch-and-filter-lists-load-performance)
"acceptable ads" | yes | [no](https://github.com/gorhill/uBlock/blob/master/MANIFESTO.md)
disable everywhere | yes |
count filter hits | yes, [disabled by default](https://issues.adblockplus.org/ticket/5298) | [no](https://github.com/gorhill/uBlock/issues/1353)
ability to globally ignore generic cosmetic filters
useful for low-performance mobile devices | | yes
cloud storage | Firefox only | yes
-point-and-click firewall-like filtering
allows for [relax](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-medium-mode) or [strict](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-hard-mode) default-deny approach | | yes
-logger | per-page | [unified](https://github.com/gorhill/uBlock/wiki/The-logger)
-point-and-click per-site no-popups | | [yes](https://github.com/gorhill/uBlock/wiki/Per-site-switches#no-popups)
-point-and-click per site no-cosmetic-filtering | | [yes](https://github.com/gorhill/uBlock/wiki/Per-site-switches#no-cosmetic-filtering)
-point-and-click per site no-large-media-elements | | [yes](https://github.com/gorhill/uBlock/wiki/Per-site-switches#no-large-media-elements)
-point-and-click per site no-remote-fonts | | [yes](https://github.com/gorhill/uBlock/wiki/Per-site-switches#no-remote-fonts)
-integrated element picker | Chromium-based browsers only | [yes](https://github.com/gorhill/uBlock/wiki/Element-picker)
-element zapper | | [yes](https://github.com/gorhill/uBlock/wiki/Element-zapper)
+point-and-click firewall-like filtering
allows for [relax](./Blocking-mode:-medium-mode) or [strict](./Blocking-mode:-hard-mode) default-deny approach | | yes
+logger | per-page | [unified](./The-logger)
+point-and-click per-site no-popups | | [yes](./Per-site-switches#no-popups)
+point-and-click per site no-cosmetic-filtering | | [yes](./Per-site-switches#no-cosmetic-filtering)
+point-and-click per site no-large-media-elements | | [yes](./Per-site-switches#no-large-media-elements)
+point-and-click per site no-remote-fonts | | [yes](./Per-site-switches#no-remote-fonts)
+integrated element picker | Chromium-based browsers only | [yes](./Element-picker)
+element zapper | | [yes](./Element-zapper)
easy backup/restore of all settings | Firefox only | yes
diff --git a/Advanced-settings.md b/Advanced-settings.md
index 1324994..2b1a215 100644
--- a/Advanced-settings.md
+++ b/Advanced-settings.md
@@ -1,10 +1,10 @@
-[Back to Wiki home](https://github.com/gorhill/uBlock/wiki)
+[Back to Wiki home](./)
***
The _"Advanced settings"_ page contains settings which are experimental, or which are of interest to advanced users who want more control over how uBO behaves internally.
-These advanced settings can be easily accessed only when the setting [_"I am an advanced user"_](https://github.com/gorhill/uBlock/wiki/Advanced-user-features) in the _Settings_ pane in the dashboard is checked, but will persist and work even when the setting [_"I am an advanced user"_](https://github.com/gorhill/uBlock/wiki/Advanced-user-features) is not checked:
+These advanced settings can be easily accessed only when the setting [_"I am an advanced user"_](./Advanced-user-features) in the _Settings_ pane in the dashboard is checked, but will persist and work even when the setting [_"I am an advanced user"_](./Advanced-user-features) is not checked:

@@ -179,7 +179,7 @@ If set to `info`, prints debug messages to the browser console.
Default: `false`.
-If set to `true`, [`debugger;` statement](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/debugger) will be inserted just before [scriptlet](https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#scriptlet-injection) code
+If set to `true`, [`debugger;` statement](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/debugger) will be inserted just before [scriptlet](./Static-filter-syntax#scriptlet-injection) code
***
@@ -257,7 +257,7 @@ Default: `120` seconds.
uBO 1.17.3b4 and above.
-Controls duration of the [Strict blocking](https://github.com/gorhill/uBlock/wiki/Strict-blocking) "Temporarily" bypass.
+Controls duration of the [Strict blocking](./Strict-blocking) "Temporarily" bypass.
***
@@ -307,4 +307,4 @@ Any duplicate as per token will result in the previous resource being replaced b
Additional resources will be updated at the same time the built-in resource file is updated. Purging the cache of 'uBlock filters' will also purge the cache of the built-in resource file -- and hence force a reload of user-specified resources if any.
-The setting was introduced in [1.12.0](https://github.com/gorhill/uBlock/releases/tag/1.12.0). Support for multiple URLs was introduced in [1.19.0](https://github.com/gorhill/uBlock/releases/tag/1.19.0).
\ No newline at end of file
+The setting was introduced in [1.12.0](https://github.com/gorhill/uBlock/releases/tag/1.12.0). Support for multiple URLs was introduced in [1.19.0](https://github.com/gorhill/uBlock/releases/tag/1.19.0).
diff --git a/Behind-the-scene-network-requests.md b/Behind-the-scene-network-requests.md
index 6584f35..d162db3 100644
--- a/Behind-the-scene-network-requests.md
+++ b/Behind-the-scene-network-requests.md
@@ -1,4 +1,4 @@
-[Back to _Dynamic filtering: default-deny_](https://github.com/gorhill/uBlock/wiki/Dynamic-filtering:-default-deny)
+[Back to _Dynamic filtering: default-deny_](./Dynamic-filtering:-default-deny)
**Important notes:**
@@ -10,7 +10,7 @@ Because of this (and other reasons which will eventually come to light), startin
***
-The filtering of behind-the-scene network request is available to [advanced users](https://github.com/gorhill/uBlock/wiki/Behind-the-scene-network-requests).
+The filtering of behind-the-scene network request is available to [advanced users](./Behind-the-scene-network-requests).
### What are behind-the-scene network requests
@@ -65,4 +65,4 @@ To turn off the filtering of _behind-the-scene_ requests, whitelist the _"Behind
To whitelist the _behind-the-scene_ scope, add `behind-the-scene` as a whitelist directive in the _Whitelist_ tab of the uBlock dashboard.
-If there are only very specific behind-the-scene network requests you would like to filter, a good approach to minimize potential problems is to use dynamic filtering: set a local rule for the `all` cell to _allow_ (green) (i.e. `behind-the-scene * * allow`). This will ensure nothing is blocked in the _behind-the-scene scope_, just as if uBlock is disabled for that scope. Then create _block_ rules for the specific hostnames for which you want to block all network requests, or `noop` if you want to subject those hostnames to static filtering only.
\ No newline at end of file
+If there are only very specific behind-the-scene network requests you would like to filter, a good approach to minimize potential problems is to use dynamic filtering: set a local rule for the `all` cell to _allow_ (green) (i.e. `behind-the-scene * * allow`). This will ensure nothing is blocked in the _behind-the-scene scope_, just as if uBlock is disabled for that scope. Then create _block_ rules for the specific hostnames for which you want to block all network requests, or `noop` if you want to subject those hostnames to static filtering only.
diff --git a/Blocking-mode:-easy-mode.md b/Blocking-mode:-easy-mode.md
index b1e4846..0f84946 100644
--- a/Blocking-mode:-easy-mode.md
+++ b/Blocking-mode:-easy-mode.md
@@ -1,4 +1,4 @@
-[Back to _Blocking mode_](https://github.com/gorhill/uBlock/wiki/Blocking-mode)
+[Back to _Blocking mode_](./Blocking-mode)
***
@@ -13,7 +13,7 @@ This mode is suitable for those who are concerned about reducing their privacy e
##### Characteristics
- Low likelihood of web pages being broken.
-- Web pages should load somewhat faster compared to the [_very easy mode_](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-very-easy-mode).
+- Web pages should load somewhat faster compared to the [_very easy mode_](./Blocking-mode:-very-easy-mode).
##### How to enable this mode
@@ -38,4 +38,4 @@ You can significantly augment the blocking power in easy mode by merely enabling
- some may cause too much web page breakage.
- some may result in some network requests to unexpectedly become unblocked ([example](https://github.com/gorhill/uBlock/issues/357)).
-Another even better way to augment blocking power in _easy_ mode is to enable _"I am an advanced user"_ from the _Settings_ pane in the dashboard, and block specific 3rd parties using [dynamic filtering](https://github.com/gorhill/uBlock/wiki/Dynamic-filtering) -- i.e. essentially using dynamic filtering in default-allow mode. For example, one could choose to globally block `facebook.com` and `facebook.net` in order to prevent Facebook from being able to track you wherever you go, except on Facebook. Globally blocking ubiquitous hostnames except on their respective web sites is a very easy way to reduce significantly privacy exposure.
\ No newline at end of file
+Another even better way to augment blocking power in _easy_ mode is to enable _"I am an advanced user"_ from the _Settings_ pane in the dashboard, and block specific 3rd parties using [dynamic filtering](./Dynamic-filtering) -- i.e. essentially using dynamic filtering in default-allow mode. For example, one could choose to globally block `facebook.com` and `facebook.net` in order to prevent Facebook from being able to track you wherever you go, except on Facebook. Globally blocking ubiquitous hostnames except on their respective web sites is a very easy way to reduce significantly privacy exposure.
diff --git a/Blocking-mode:-hard-mode.md b/Blocking-mode:-hard-mode.md
index 418ab2f..2944026 100644
--- a/Blocking-mode:-hard-mode.md
+++ b/Blocking-mode:-hard-mode.md
@@ -4,7 +4,7 @@
Roughly similar to using Adblock Plus with many filter lists + NoScript with 1st-party scripts/frames automatically whitelisted + RequestPolicy with 1st-party resources automatically whitelisted.
-Blocking-wise, this is a small leap from [medium mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-medium-mode). This mode will however lead to a higher likelihood of broken web sites, and thus will likely require intervention the first time you visit a site, since even passive 3rd-party resources (i.e. images, css) are blocked with this mode.
+Blocking-wise, this is a small leap from [medium mode](./Blocking-mode:-medium-mode). This mode will however lead to a higher likelihood of broken web sites, and thus will likely require intervention the first time you visit a site, since even passive 3rd-party resources (i.e. images, css) are blocked with this mode.
This mode will block all 3rd parties by default, so it keeps privacy exposure to 3rd parties to a minimum.
@@ -14,7 +14,7 @@ This mode will block all 3rd parties by default, so it keeps privacy exposure to

Starting with [v1.21.7b5](https://github.com/gorhill/uBlock/commit/7ff750eaf6007bdea4e843d3314fc7275b1ce945), a red badge on uBlock₀ toolbar button indicates activation of the hard mode.
-With a single click, it is possible to toggle the hard mode into the [medium mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-medium-mode): it's just a matter of assigning a local noop rule to the _3rd-party_ cell.
+With a single click, it is possible to toggle the hard mode into the [medium mode](./Blocking-mode:-medium-mode): it's just a matter of assigning a local noop rule to the _3rd-party_ cell.
##### Characteristics
@@ -48,10 +48,10 @@ _My rules_ pane:
With few clicks, you can easily fall back into lesser blocking modes, if ever you do not have the willingness to figure the necessary rules for a given site.
-Fall back into [medium mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-medium-mode) for the current site:
+Fall back into [medium mode](./Blocking-mode:-medium-mode) for the current site:
- set a local noop rule for the _3rd-party_ cell.
-Fall back into [easy mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-easy-mode) for the current site:
+Fall back into [easy mode](./Blocking-mode:-easy-mode) for the current site:
- set a local noop rule for the _3rd-party_ cell.
- set a local noop rule for the _3rd-party script_ cell.
- Optionally, set a local noop rule for the _3rd-party frames_ cell.
diff --git a/Blocking-mode:-medium-mode.md b/Blocking-mode:-medium-mode.md
index 15dad72..a38368e 100644
--- a/Blocking-mode:-medium-mode.md
+++ b/Blocking-mode:-medium-mode.md
@@ -4,9 +4,9 @@
Roughly similar to using Adblock Plus with many filter lists + NoScript with 1st-party scripts/frames automatically whitelisted. Unlike NoScript however, you can easily point-and-click to block/allow scripts _on a per-site basis_.
-Blocking-wise, this is one significant leap from [easy mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-easy-mode). However, be ready to accept that you will have to un-break websites, though at a lesser rate than [hard mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-hard-mode), since passive 3rd-party resources (i.e. images, css) are not blocked in medium mode.
+Blocking-wise, this is one significant leap from [easy mode](./Blocking-mode:-easy-mode). However, be ready to accept that you will have to un-break websites, though at a lesser rate than [hard mode](./Blocking-mode:-hard-mode), since passive 3rd-party resources (i.e. images, css) are not blocked in medium mode.
-This is where you start to use [dynamic filtering](https://github.com/gorhill/uBlock/wiki/Dynamic-filtering), a feature available only when you tell uBlock Origin that you are an [advanced user](https://github.com/gorhill/uBlock/wiki/Advanced-user-features). Be sure to read [the guide](https://github.com/gorhill/uBlock/wiki/Dynamic-filtering) before, it is assumed that you understand well how dynamic filtering works in order to use medium mode effectively.
+This is where you start to use [dynamic filtering](./Dynamic-filtering), a feature available only when you tell uBlock Origin that you are an [advanced user](./Advanced-user-features). Be sure to read [the guide](./Dynamic-filtering) before, it is assumed that you understand well how dynamic filtering works in order to use medium mode effectively.

3rd-party scripts and frames are blocked by default.
@@ -18,7 +18,7 @@ Using medium mode will significantly improve your browser performance, and simil
##### Characteristics
-- Web pages will load significantly faster compared to the [_easy mode_](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-easy-mode).
+- Web pages will load significantly faster compared to the [_easy mode_](./Blocking-mode:-easy-mode).
- Your privacy exposure will be significantly reduced compared to easy mode.
- You no longer depend mostly on 3rd-party filter lists to dictate what is blocked or not.
- The static filter lists are still used to mop up whatever network requests are not blocked in this mode -- so double protection.
@@ -47,11 +47,11 @@ _My rules_ pane:
With one click or two, you can easily fall back into lesser blocking mode, if ever you do not have the willingness to figure the necessary rules for a given site.
-To fall back into [easy mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-easy-mode):
+To fall back into [easy mode](./Blocking-mode:-easy-mode):
- Set a local noop rule for the _3rd-party script_ cell:

- Set a local noop rule for the _3rd-party frames_ cell (optional, as blocking 3rd-party frames is less likely to break websites):

- If you want the rules to stick, click the padlock to make them permanent.
-Using local noop rules ensure that the resulting lesser blocking mode applies _only_ to the current site so that medium mode is still enforced everywhere else.
\ No newline at end of file
+Using local noop rules ensure that the resulting lesser blocking mode applies _only_ to the current site so that medium mode is still enforced everywhere else.
diff --git a/Blocking-mode:-nightmare-mode.md b/Blocking-mode:-nightmare-mode.md
index 2e961d8..960b3be 100644
--- a/Blocking-mode:-nightmare-mode.md
+++ b/Blocking-mode:-nightmare-mode.md
@@ -1,5 +1,5 @@
-[Back to _Blocking mode_](https://github.com/gorhill/uBlock/wiki/Blocking-mode)
+[Back to _Blocking mode_](./Blocking-mode)
***
-Nightmare mode is when you block everything, except the main document. All secondary resources are blocked. As a result, most sites are broken. I personally advise against using this mode, since there is no real advantages from the [hard mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-hard-mode). If you want to use uBlock Origin in this mode, you are probably better off using [uMatrix](https://github.com/gorhill/uMatrix) or [Policeman](https://github.com/futpib/policeman), which will give you a higher granular control over network requests than what uBlock allows you.
+Nightmare mode is when you block everything, except the main document. All secondary resources are blocked. As a result, most sites are broken. I personally advise against using this mode, since there is no real advantages from the [hard mode](./Blocking-mode:-hard-mode). If you want to use uBlock Origin in this mode, you are probably better off using [uMatrix](https://github.com/gorhill/uMatrix) or [Policeman](https://github.com/futpib/policeman), which will give you a higher granular control over network requests than what uBlock allows you.
diff --git a/Blocking-mode:-very-easy-mode.md b/Blocking-mode:-very-easy-mode.md
index 9968dce..52c51f8 100644
--- a/Blocking-mode:-very-easy-mode.md
+++ b/Blocking-mode:-very-easy-mode.md
@@ -1,4 +1,4 @@
-[Back to _Blocking mode_](https://github.com/gorhill/uBlock/wiki/Blocking-mode)
+[Back to _Blocking mode_](./Blocking-mode)
***
@@ -20,4 +20,4 @@ _Settings_ pane:
_Filter lists_ pane:
- _uBlock filters_: checked
- _EasyList_: checked
-- All other filter lists: unchecked.
\ No newline at end of file
+- All other filter lists: unchecked.
diff --git a/Cloud-storage.md b/Cloud-storage.md
index b8c6ad7..c786509 100644
--- a/Cloud-storage.md
+++ b/Cloud-storage.md
@@ -1,5 +1,5 @@
-- Back to [Wiki home](https://github.com/gorhill/uBlock/wiki)
-- Back to [Dashboard](https://github.com/gorhill/uBlock/wiki/Dashboard)
+- Back to [Wiki home](./)
+- Back to [Dashboard](./Dashboard)
***
@@ -31,7 +31,7 @@ The import/export of cloud storage data in a pane works strictly at the UI level
If ever an export operation causes the cloud storage capacity limit to be reached, typically the cloud storage providers will refuse the operation, and the data on the cloud storage will be left unchanged. This is what I have observed with Chromium-based browsers.
-If you do not have a syncing account with your browser vendor, I have observed that the cloud storage feature can still be used as a local clipboard to save a pane settings. Might be convenient sometimes, but please do not use cloud storage as a replacement for [uBlock Origin's backup feature](https://github.com/gorhill/uBlock/wiki/Dashboard:-Settings#backuprestore-section). It is recommended you back up your settings regularly, this is especially true for those who have extensive custom static filters, custom rules, whitelist directives.
+If you do not have a syncing account with your browser vendor, I have observed that the cloud storage feature can still be used as a local clipboard to save a pane settings. Might be convenient sometimes, but please do not use cloud storage as a replacement for [uBlock Origin's backup feature](./Dashboard:-Settings#backuprestore-section). It is recommended you back up your settings regularly, this is especially true for those who have extensive custom static filters, custom rules, whitelist directives.
> ***
> **Important:** Some browsers offer the ability to use a passphrase for their sync feature, in order to enable end-to-end encryption of the data stored for sync purpose ([example](https://support.google.com/chrome/answer/1181035)). It is strongly suggested to make use of such passphrase.
@@ -59,4 +59,4 @@ Cloud storage services offered by specific browser vendors have their own limita
- There is [not much doc about this for Firefox](https://support.mozilla.org/en-US/products/firefox/sync-and-save), so there might be undocumented limitations yet to be found.
- It appears Firefox for Android can't sync extensions settings. This is tracked in [Bugzilla #1316442](https://bugzilla.mozilla.org/show_bug.cgi?id=1316442).
- Other Firefox-related platform:
- - I have no clue whether this new feature will work for other brands of Firefox-based browsers.
\ No newline at end of file
+ - I have no clue whether this new feature will work for other brands of Firefox-based browsers.
diff --git a/Contributed-memory-usage:-benchmarks-over-time.md b/Contributed-memory-usage:-benchmarks-over-time.md
index 20932af..a48eb2f 100644
--- a/Contributed-memory-usage:-benchmarks-over-time.md
+++ b/Contributed-memory-usage:-benchmarks-over-time.md
@@ -60,4 +60,4 @@ Adblock Plus:
Observations:
-Last time I ran this benchmark [was on Chromium 34 64-bit](https://github.com/gorhill/uBlock/wiki/%C2%B5Block-vs.-ABP:-efficiency-compared#added-memory-footprint-to-web-pages), and it does appear that Chromium 37 is causing web pages to consume more memory -- reference result went from ~17 MB to ~22 MB.
\ No newline at end of file
+Last time I ran this benchmark [was on Chromium 34 64-bit](./%C2%B5Block-vs.-ABP:-efficiency-compared#added-memory-footprint-to-web-pages), and it does appear that Chromium 37 is causing web pages to consume more memory -- reference result went from ~17 MB to ~22 MB.
diff --git a/Counterarguments.md b/Counterarguments.md
index 3d7cdfe..c1871d5 100644
--- a/Counterarguments.md
+++ b/Counterarguments.md
@@ -2,7 +2,7 @@ Just a page to collect my counterarguments when I spot something which I believe
#### Who cares about efficiency, I have 8 GB
-I heard this argument so often from apologists of bloated software that I decided to give the counterargument its [own page](https://github.com/gorhill/uBlock/wiki/Who-cares-about-efficiency,-I-have-8-GB-and%7Cor-a-quad-core-CPU).
+I heard this argument so often from apologists of bloated software that I decided to give the counterargument its [own page](./Who-cares-about-efficiency,-I-have-8-GB-and%7Cor-a-quad-core-CPU).
#### Just use a hosts file
@@ -26,4 +26,4 @@ No. Code is wholly original, it was written from scratch. There are a very few p
#### Adblock Edge is as light as uBlock
-No it's not. Adblock Edge is like Adblock Plus, except that notably it doesn't have the _"Acceptable ads"_ exception filters out of the box. See for yourself: [here](https://bitbucket.org/adstomper/adblockedge/diff/lib/filterClasses.js?diff1=f89367e6ddc7&diff2=a642b932365d9521042cf8fec56089caca496a7d&at=default) is a diff of a code change for Adblock Edge, and [here](https://github.com/adblockplus/adblockplus/commit/384cb64c6d3c2aa698b5f15c9d8aaefd22c889aa#diff-3) is the same exact diff for Adblock Plus. The timestamps shows that Adblock Edge pulled code changes from the Adblock Plus project.
\ No newline at end of file
+No it's not. Adblock Edge is like Adblock Plus, except that notably it doesn't have the _"Acceptable ads"_ exception filters out of the box. See for yourself: [here](https://bitbucket.org/adstomper/adblockedge/diff/lib/filterClasses.js?diff1=f89367e6ddc7&diff2=a642b932365d9521042cf8fec56089caca496a7d&at=default) is a diff of a code change for Adblock Edge, and [here](https://github.com/adblockplus/adblockplus/commit/384cb64c6d3c2aa698b5f15c9d8aaefd22c889aa#diff-3) is the same exact diff for Adblock Plus. The timestamps shows that Adblock Edge pulled code changes from the Adblock Plus project.
diff --git a/Dashboard.md b/Dashboard.md
index 28e9392..e3298b7 100644
--- a/Dashboard.md
+++ b/Dashboard.md
@@ -1,4 +1,4 @@
-[Back to Wiki home](https://github.com/gorhill/uBlock/wiki)
+[Back to Wiki home](./)
***
@@ -9,4 +9,4 @@ You can access uBlock Origin's ("uBO") dashboard by ...
- Right-clicking on uBO's icon in the toolbar and selecting _Options_ menu item;
- Firefox-based browsers:
- Clicking uBO's _Preferences_ button in the `about:addons` page (Hamburger Menu -> Add-ons); OR
- - Right-clicking on uBO's icon in the toolbar and selecting _Manage Extension_, then _Preferences_ button at the bottom;
\ No newline at end of file
+ - Right-clicking on uBO's icon in the toolbar and selecting _Manage Extension_, then _Preferences_ button at the bottom;
diff --git a/Dashboard:-Filter-lists.md b/Dashboard:-Filter-lists.md
index 06a3999..0d5e55d 100644
--- a/Dashboard:-Filter-lists.md
+++ b/Dashboard:-Filter-lists.md
@@ -1,9 +1,9 @@
-- Back to [Wiki home](https://github.com/gorhill/uBlock/wiki)
-- Back to [Dashboard](https://github.com/gorhill/uBlock/wiki/Dashboard)
+- Back to [Wiki home](./)
+- Back to [Dashboard](./Dashboard)
***
-The _Filter lists_ pane is where you subscribe to filter lists. The filter lists to which you subscribe will feed uBlock Origin's [static filtering engine](https://github.com/gorhill/uBlock/wiki/Overview-of-uBlock's-network-filtering-engine:-details#static-filtering).
+The _Filter lists_ pane is where you subscribe to filter lists. The filter lists to which you subscribe will feed uBlock Origin's [static filtering engine](./Overview-of-uBlock's-network-filtering-engine:-details#static-filtering).
The picture below shows uBlock Origin's default selection of filter lists. You can add more, or remove some of the filter lists already selected by default (for reference, most other blockers have only EasyList selected).
@@ -17,7 +17,7 @@ uBlock Origin discards duplicate filters, so the number of filters used within a
When you hover the cursor over the clock icon of a filter list, a tooltip will tell you when the list was last updated. If you click the clock icon, uBO will mark the list as out-of-date. Lists which are out of date will be automatically updated in the background eventually when you check the option _"Auto update filter lists"_. You can force out-of-date lists to be immediately updated by clicking _"Update now"_.
-Related: [_"Launch and filter lists load performance"_](https://github.com/gorhill/uBlock/wiki/Launch-and-filter-lists-load-performance).
+Related: [_"Launch and filter lists load performance"_](./Launch-and-filter-lists-load-performance).
***
@@ -38,7 +38,7 @@ When a filter list has been updated using a newer version from its remote locati

-Note: "uBlock filters" entry is special - forcing update of this filter list, will also update additional resources when possible (library of resources used by [Scriptlet injection](https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#scriptlet-injection), allowed to be updated on Chromium browser and develpment buils).
+Note: "uBlock filters" entry is special - forcing update of this filter list, will also update additional resources when possible (library of resources used by [Scriptlet injection](./Static-filter-syntax#scriptlet-injection), allowed to be updated on Chromium browser and develpment buils).
##### Purge all caches
@@ -64,4 +64,4 @@ This is a collection of various filter lists, grouped by purpose. To use a speci
You can import custom 3rd-party filter lists: place check mark next to "Import..." in the "Custom" section and paste the URL of where a filter lists can be fetched from in the text area that appears. These custom filter lists will be also automatically updated on a regular basis.
-On some specific web pages, it is possible to subscribe to a 3rd-party filter list by simply clicking on a link to the filter list. There is such a page for uBlock Origin: [Filter lists from around the web](https://github.com/gorhill/uBlock/wiki/Filter-lists-from-around-the-web).
\ No newline at end of file
+On some specific web pages, it is possible to subscribe to a 3rd-party filter list by simply clicking on a link to the filter list. There is such a page for uBlock Origin: [Filter lists from around the web](./Filter-lists-from-around-the-web).
diff --git a/Dashboard:-Settings.md b/Dashboard:-Settings.md
index 7f16718..3f19b0c 100644
--- a/Dashboard:-Settings.md
+++ b/Dashboard:-Settings.md
@@ -1,5 +1,5 @@
-- Back to [Wiki home](https://github.com/gorhill/uBlock/wiki)
-- Back to [Dashboard](https://github.com/gorhill/uBlock/wiki/Dashboard)
+- Back to [Wiki home](./)
+- Back to [Dashboard](./Dashboard)
***
@@ -21,13 +21,13 @@ Currently mostly useful for users who checked _"I am an advanced user"_ (see bel
### I am an advanced user
-If you check this, this will enable [uBlock's dynamic filtering](https://github.com/gorhill/uBlock/wiki/Dynamic-filtering), and the dynamic filtering pane will become available from uBlock's popup UI.
+If you check this, this will enable [uBlock's dynamic filtering](./Dynamic-filtering), and the dynamic filtering pane will become available from uBlock's popup UI.
Unchecking this disables the dynamic filtering. And the dynamic filtering pane in the popup UI will no longer be available.
-_Advanced user_ mode also gives access to the [advanced settings](https://github.com/gorhill/uBlock/wiki/Advanced-settings) (normally hidden), and enables the ability to filter [behind-the-scene network requests](https://github.com/gorhill/uBlock/wiki/Behind-the-scene-network-requests).
+_Advanced user_ mode also gives access to the [advanced settings](./Advanced-settings) (normally hidden), and enables the ability to filter [behind-the-scene network requests](./Behind-the-scene-network-requests).
-You should avoid playing with advanced features and settings unless [you understand fully what you are doing](https://github.com/gorhill/uBlock/wiki/Advanced-user-features).
+You should avoid playing with advanced features and settings unless [you understand fully what you are doing](./Advanced-user-features).
***
@@ -111,7 +111,7 @@ The above rule means CSP reports would be blocked on `example.com` when CSP repo
## Default behavior
-Please see: ["Per site switches"](https://github.com/gorhill/uBlock/wiki/Per-site-switches)
+Please see: ["Per site switches"](./Per-site-switches)
***
@@ -119,4 +119,4 @@ Please see: ["Per site switches"](https://github.com/gorhill/uBlock/wiki/Per-sit
The bottom-most section is for you to easily backup/restore/reset all settings in uBlock.
-It is suggested you backup all your settings regularly.
\ No newline at end of file
+It is suggested you backup all your settings regularly.
diff --git a/Disable-hyperlink-auditing-beacon.md b/Disable-hyperlink-auditing-beacon.md
index 886ecc4..3ce665b 100644
--- a/Disable-hyperlink-auditing-beacon.md
+++ b/Disable-hyperlink-auditing-beacon.md
@@ -4,10 +4,10 @@ See [_"Hyperlink-Auditing aka `` and Beacon aka `navigator.sendBeacon()`
### Chromium-based browsers
-For those browsers, the network requests fired as a result of calling `navigator.sendBeacon()` are sent as [behind-the-scene](https://github.com/gorhill/uBlock/wiki/Behind-the-scene-network-requests) network requests.
+For those browsers, the network requests fired as a result of calling `navigator.sendBeacon()` are sent as [behind-the-scene](./Behind-the-scene-network-requests) network requests.
#### Caveats for browsers based on Chromium version 48 or less
Network requests created as a result of web pages using `navigator.sendBeacon()` **will not be blocked** when the setting _"Disable hyperlink auditing/beacon"_ is checked. This is a limitation of the chrome API prior to v49, as network requests fired as a result of calling `navigator.sendBeacon()` are reported as the generic type `other` by the browser.
-The [webRequest API](https://developer.chrome.com/extensions/webRequest) was extended in Chromium 49 to support new request types, and thus the setting works fine for any browser based on Chromium 49 or higher, as there is now a specific network request type, `ping`, which uBO normalizes to `beacon` -- and hence can now filter correctly.
\ No newline at end of file
+The [webRequest API](https://developer.chrome.com/extensions/webRequest) was extended in Chromium 49 to support new request types, and thus the setting works fine for any browser based on Chromium 49 or higher, as there is now a specific network request type, `ping`, which uBO normalizes to `beacon` -- and hence can now filter correctly.
diff --git a/Does-uBlock-block-ads-or-just-hide-them?.md b/Does-uBlock-block-ads-or-just-hide-them?.md
index fbef512..085a140 100644
--- a/Does-uBlock-block-ads-or-just-hide-them?.md
+++ b/Does-uBlock-block-ads-or-just-hide-them?.md
@@ -18,7 +18,7 @@ uBlock also support the parsing and enforcing of hosts files -- something which
**Short answer:** resources hidden -- in various ways depending on the class of cosmetic filters.
-These filters serve to remove DOM elements from a web page. They have no value privacy-wise, it is essentially to make web page look better by removing unwanted content, which usually cannot be blocked using network filters. Just like ABP, uBlock will hide DOM elements on a web page which match cosmetic filters. uBlock uses a [different method](https://github.com/gorhill/uBlock/wiki/Cosmetic-filtering-in-%C2%B5Block:-version-0.4.0.0-update) than other big-name blockers to hide the DOM elements though.
+These filters serve to remove DOM elements from a web page. They have no value privacy-wise, it is essentially to make web page look better by removing unwanted content, which usually cannot be blocked using network filters. Just like ABP, uBlock will hide DOM elements on a web page which match cosmetic filters. uBlock uses a [different method](./Cosmetic-filtering-in-%C2%B5Block:-version-0.4.0.0-update) than other big-name blockers to hide the DOM elements though.
Different classes of cosmetic filters are applied differently:
@@ -47,4 +47,4 @@ Yet, uBlock is at an advantage in such case: since it does not inject thousands
- Firefox + uBlock: no flickering
- Firefox + ABP: no flickering
-Another advantage of uBlock here is that these collapsed-DOM-counterpart-of-blocked-network-requests are cached as temporary specific cosmetic filters internally.
\ No newline at end of file
+Another advantage of uBlock here is that these collapsed-DOM-counterpart-of-blocked-network-requests are cached as temporary specific cosmetic filters internally.
diff --git a/Doesn't-uBlock-Origin-add-overhead-to-page-load?.md b/Doesn't-uBlock-Origin-add-overhead-to-page-load?.md
index b2ca0fc..d73fd12 100644
--- a/Doesn't-uBlock-Origin-add-overhead-to-page-load?.md
+++ b/Doesn't-uBlock-Origin-add-overhead-to-page-load?.md
@@ -1,4 +1,4 @@
-**TL;DR:** if you worry about uBO's added overhead for non-bloated sites, just [disable cosmetic filtering](https://github.com/gorhill/uBlock/wiki/Per-site-switches#no-cosmetic-filtering) on a per-site basis, it is the optimal approach: this will keep you protected security- and privacy-wise (as far as your filters/rules allow) while minimizing the added overhead.
+**TL;DR:** if you worry about uBO's added overhead for non-bloated sites, just [disable cosmetic filtering](./Per-site-switches#no-cosmetic-filtering) on a per-site basis, it is the optimal approach: this will keep you protected security- and privacy-wise (as far as your filters/rules allow) while minimizing the added overhead.
***
@@ -14,9 +14,9 @@ That said, for web pages where uBO finds nothing or very little to block (let's
Disabling uBO for a site to avoid added the overhead is a judgment call to be made by the user, considering many factors:
- There is more than just the CPU cycles and memory return to consider with regard to invested overhead: there is also the peace-of-mind return of knowing your blocker is protecting you. There is no guarantee that a nice site will not stop being nice at any given moment, or that a nice site won't ever be hijacked and start to serve bad stuff.
-- If you use [_medium mode_](https://github.com/gorhill/uBlock/wiki/Blocking-mode:-medium-mode), it does not make much sense to disable uBO since typically this mode is used to also protect against [CSRF](https://en.wikipedia.org/wiki/Cross-site_request_forgery).
+- If you use [_medium mode_](./Blocking-mode:-medium-mode), it does not make much sense to disable uBO since typically this mode is used to also protect against [CSRF](https://en.wikipedia.org/wiki/Cross-site_request_forgery).
-There is also another way to reduce the overhead without sacrificing the security/privacy benefits as a result of disabling uBO: just [disable cosmetic filtering](https://github.com/gorhill/uBlock/wiki/Per-site-switches#no-cosmetic-filtering) for nice sites -- this will remove good chunk of overhead while keeping you well protected since network filtering is still fully enabled -- whereas, as hinted by its name, cosmetic filtering offers no protection value.
+There is also another way to reduce the overhead without sacrificing the security/privacy benefits as a result of disabling uBO: just [disable cosmetic filtering](./Per-site-switches#no-cosmetic-filtering) for nice sites -- this will remove good chunk of overhead while keeping you well protected since network filtering is still fully enabled -- whereas, as hinted by its name, cosmetic filtering offers no protection value.
If you are curious about the overhead added by uBO for any given web page, you can use this [page load speed tool](http://www.raymondhill.net/ublock/pageloadspeed.html) (won't work for pages which are not allowed to be embedded into frames), with which you can compare how fast a page load with and without uBO, and with different settings in uBO.
@@ -31,4 +31,4 @@ Here is an example of uBO's overhead added to a [atypically large page from a ni
Of course, there is no point benchmarking pages from less nice sites, as these pages will always load much faster when using a blocker -- though you may want to benchmark different blockers with similar settings.
-**In conclusion:** if you worry about uBO's added overhead for so-called nice sites for which uBO appears unnecessary, just disabling cosmetic filtering is the optimal approach, this will keep you protected security- and privacy-wise.
\ No newline at end of file
+**In conclusion:** if you worry about uBO's added overhead for so-called nice sites for which uBO appears unnecessary, just disabling cosmetic filtering is the optimal approach, this will keep you protected security- and privacy-wise.
diff --git a/Dynamic-URL-filtering.md b/Dynamic-URL-filtering.md
index 4a2e509..02082a5 100644
--- a/Dynamic-URL-filtering.md
+++ b/Dynamic-URL-filtering.md
@@ -4,7 +4,7 @@ Dynamic URL filtering became available in uBlock Origin version 0.9.8.0.
The primary purpose of dynamic URL filtering ("URL filtering") is as a diagnosis/mitigation tool to fix web page breakage caused by dynamic filtering or static filtering. Secondary purpose of URL filtering is to offer higher granularity than what dynamic filtering can support.
-URL filtering has precedence over dynamic filtering and static filtering. See ["Overview of uBlock's network filtering engine"](https://github.com/gorhill/uBlock/wiki/Overview-of-uBlock's-network-filtering-engine) to see where URL filtering fits and to better understand its purpose.
+URL filtering has precedence over dynamic filtering and static filtering. See ["Overview of uBlock's network filtering engine"](./Overview-of-uBlock's-network-filtering-engine) to see where URL filtering fits and to better understand its purpose.
URL filtering is accessible from the logger, i.e. you will create and manage dynamic URL rules through the logger UI, by clicking on the 4th cell in the row specific to the resource for which a rule needs to be created:
@@ -28,4 +28,4 @@ It is very important to understand that URL filtering rules override dynamic fil
Un-break a web site: a real case was reported in [issue #240](https://github.com/gorhill/uBlock/issues/240). The web site required the resource `http://s7.addthis.com/js/300/addthis_widget.js` for the comment section to render properly. However, `addthis.com` is blocked by uBlock's _Privacy_ filter list with the `important` filter option, meaning the filter cannot be overridden by an exception filter. [URL filtering to the rescue](https://github.com/gorhill/uBlock/issues/240#issuecomment-105019619), since URL filtering overrides both dynamic filtering rules and static filters.
-Finer-grained dynamic filtering: [need a better concrete example] block all 3rd resources by default using dynamic filtering rule `* * 3p block`, but allow one very specific 3rd-party resource `example.org https://foo.com/widget.js script allow`, something which would not be possible before URL filtering was available, the only solution was to allow everything from `foo.com`
\ No newline at end of file
+Finer-grained dynamic filtering: [need a better concrete example] block all 3rd resources by default using dynamic filtering rule `* * 3p block`, but allow one very specific 3rd-party resource `example.org https://foo.com/widget.js script allow`, something which would not be possible before URL filtering was available, the only solution was to allow everything from `foo.com`
diff --git a/Dynamic-filtering-(obsolete,-need-revision).md b/Dynamic-filtering-(obsolete,-need-revision).md
index eae2140..38f58d8 100644
--- a/Dynamic-filtering-(obsolete,-need-revision).md
+++ b/Dynamic-filtering-(obsolete,-need-revision).md
@@ -8,7 +8,7 @@ Dynamic filtering is targeted toward users who wish to have that additional bit
Dynamic filtering is a useful feature security-wise. For example, blocking 3rd-party `