From 899ee5b80ae93adf7bd94d41f457e8b489f0c90a Mon Sep 17 00:00:00 2001 From: garry-ut99 <72945564+garry-ut99@users.noreply.github.com> Date: Mon, 7 Oct 2024 11:55:59 +0000 Subject: [PATCH] Updated "urlskip": positional lookup + example, also base64 example --- Static-filter-syntax.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Static-filter-syntax.md b/Static-filter-syntax.md index 6f12b00..090c834 100644 --- a/Static-filter-syntax.md +++ b/Static-filter-syntax.md @@ -1033,6 +1033,8 @@ The syntax is `urlskip=[steps]`, where steps is a space-separated list of extrac Valid directives: - `?name`: the value of parameter named `name` will be extracted and replace the current URL as the new URL +- `&i` ([dev build 1.60.1b6+](https://github.com/gorhill/uBlock/commit/64b2086ba4)): meant to lookup a parameter's name at position `i` (1-based). The parameter name will be used as the +URL (whereas `?` is meant to lookup a parameter's value) - `+https`: the protocol of the current URL will be forced to `https:`
This directive will succeed only if the protocol of the current URL is either absent or matches `http:` or `https:` - `-base64` ([dev build 1.61.1+](https://github.com/gorhill/uBlock/commit/e81e70937f5b6f8f98bdd8e6f71af030486efab8)): decode as a base64-encoded string @@ -1056,6 +1058,19 @@ The above filter will cause navigation to `https://example.com/path/to/tracker?u _Note:_ No skip will occur if not all extraction directives can be fulfilled in a given URL. For example, `https://example.com/path/to/tracker?url=https%3A%2F%2Fexample.org%2Fpath%2Fto%2Ftracker` won't be skipped by the filter above because the `?to` step can't be fulfilled. +```adb +||shrinkearn.com/full?$urlskip=?url -base64 +``` + +The above filter will decode `base64` encoded URL in `urlskip=` in example link `https://shrinkearn.com/full?api=3dd1f43f5fded450a0e4691e503bf19b31f35f44&url=aHR0cHM6Ly9rcmFrZW5maWxlcy5jb20vdmlldy9zamJ1RmpQVTF2L2ZpbGUuaHRtbA==&type=2`. + +```adb +||pixiv.net/jump.php?$urlskip=&1 +``` + +The above filter will lookup a parameter's name at given position in example link: `https://www.pixiv.net/jump.php?https%3A%2F%2Fx.com%2FExample_Username`, the parameter name will be used as the +URL (whereas `?` is meant to lookup a parameter's value). +
Technical notes First commit in [1.59.1b22](https://github.com/gorhill/uBlock/commit/266ec4894b).