From 298d47407d15be2a5428423daf84daa8fdacdb89 Mon Sep 17 00:00:00 2001 From: Emmanuel Garette Date: Sat, 18 Apr 2026 21:48:27 +0200 Subject: [PATCH] [tutorial v1.1_112] A Jinja conditional disabled boolean variable (config and doc) --- CHANGELOG.md | 8 +++---- DOCUMENTATION.md | 2 +- README.md | 47 +++++++++++++++++++++++----------------- config/01/output_ro.html | 3 +-- config/04/output_ro.html | 5 ++--- tree.html | 24 ++++++++++---------- 6 files changed, 47 insertions(+), 42 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 379e8f56..7f13f2ac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,5 @@ -# New variable +# Modified variable -| Variable | Description | -|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------| -| **proxy_dns_socks5**
[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | Use proxy DNS when using SOCKS v5.
**Default**: false | +| Variable | Description | +|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| **proxy_dns_socks5**
[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` *`disabled`* | Use proxy DNS when using SOCKS v5.
**Default**: false
**Disabled**: if "[Configure Proxy Access to the Internet](#proxy_mode)" is not "Manual proxy configuration"
or "[SOCKS host version used by proxy](#manual.socks_proxy.version)" is "v4".
| diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 915075ad..2ed87caa 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -55,4 +55,4 @@ | **auto**
[`web address`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` *`disabled`* | Automatic proxy configuration URL.
**Validators**:
• well-known ports (1 to 1023) are allowed
• registred ports (1024 to 49151) are allowed
• type domainname
• the domain name can be a hostname
**Disabled**: when the variable "[Configure Proxy Access to the Internet](#proxy_mode)" hasn't the value "Automatic proxy configuration URL". | | **no_proxy**
[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` *`disabled`* `unique` | Address for which proxy will be desactivated.
Connections to localhost, 127.0.0.1/8 and ::1 are never proxied.
**Validators**:
• type domainname
• the domain name can starts by a dot
• the domain name can be a hostname
• the domain name can be an IP
• the domain name can be network in CIDR format
**Examples**:
• .mozilla.org
• .net.nz
• 192.168.1.0/24
**Disabled**: when the variable "[Configure Proxy Access to the Internet](#proxy_mode)" has the value "No proxy". | | **prompt_authentication**
[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` *`disabled`* | Prompt for authentication if password is saved.
**Default**: true
**Disabled**: when the variable "[Configure Proxy Access to the Internet](#proxy_mode)" has the value "No proxy". | -| **proxy_dns_socks5**
[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | Use proxy DNS when using SOCKS v5.
**Default**: false | +| **proxy_dns_socks5**
[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` *`disabled`* | Use proxy DNS when using SOCKS v5.
**Default**: false
**Disabled**: if "[Configure Proxy Access to the Internet](#proxy_mode)" is not "Manual proxy configuration"
or "[SOCKS host version used by proxy](#manual.socks_proxy.version)" is "v4". | diff --git a/README.md b/README.md index 401f5f15..b72c87be 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@ - [Summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/branch/1.1/README.md) -- [[tutorial v1.1_110] A conditional disabled boolean variable](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_110/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_111~1..v1.1_111)) +- [[tutorial v1.1_111] A boolean variable](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_111/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_112~1..v1.1_112)) -# [tutorial v1.1_111] A boolean variable +# [tutorial v1.1_112] A Jinja conditional disabled boolean variable -[Read the tutorial "A boolean variable" in the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/jinja.html#a-boolean-variable) +[Read the tutorial "A Jinja conditional disabled boolean variable" in the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/jinja.html#a-jinja-conditional-disabled-boolean-variable) ## Screenshot @@ -25,24 +25,24 @@ pip install rougail-cli rougail-output-exporter rougail-output-doc rougail-user- Then switch to the tutorial page: ```shell -git switch --detach v1.1_111 +git switch --detach v1.1_112 ``` ## Structure

-.
- ├── firefox
- │   ├── 00-proxy.yml
- │   ├── 10-manual.yml
- │   ├── 20-manual.yml
- │   ├── 30-auto.yml
- │   ├── 40-no_proxy.yml
- │   ├── 50-prompt_authentication.yml
- │   └── 55-proxy_dns_socks5.yml
- └── types
-     └── proxy
-         └── 00-type.yml
+.
+ ├── firefox
+ │   ├── 00-proxy.yml
+ │   ├── 10-manual.yml
+ │   ├── 20-manual.yml
+ │   ├── 30-auto.yml
+ │   ├── 40-no_proxy.yml
+ │   ├── 50-prompt_authentication.yml
+ │   └── 55-proxy_dns_socks5.yml
+ └── types
+     └── proxy
+         └── 00-type.yml


Contents of the firefox/55-proxy_dns_socks5.yml file @@ -52,7 +52,16 @@ Contents of the firefox/55-proxy_dns_socks5.yml file --- version: 1.1 -proxy_dns_socks5: false # Use proxy DNS when using SOCKS v5 +proxy_dns_socks5: + description: Use proxy DNS when using SOCKS v5 + default: false + disabled: + jinja: |- + {{ _.proxy_mode != "Manual proxy configuration" or _.manual.socks_proxy.version == 'v4' }} + return_type: boolean + description: |- + if "_.proxy_mode" is not "Manual proxy configuration" + or "_.manual.socks_proxy.version" is "v4" ... ``` @@ -100,7 +109,6 @@ rougail -m firefox/ --types types/proxy -u yaml -yf config/01/config.yml Variables: - :notebook: proxy_mode (Configure Proxy Access to the Internet): No proxy -- :notebook: proxy_dns_socks5 (Use proxy DNS when using SOCKS v5): false *** ### Example 2 @@ -244,9 +252,8 @@ Variables: - :notebook: version (SOCKS host version used by proxy): v4 ← loaded from the YAML file "config/04/config.yml" (:hourglass_flowing_sand: v5) - :notebook: no_proxy (Address for which proxy will be desactivated): [] - :notebook: prompt_authentication (Prompt for authentication if password is saved): true -- :notebook: proxy_dns_socks5 (Use proxy DNS when using SOCKS v5): false *** -- [[tutorial v1.1_112] A Jinja conditional disabled boolean variable](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_112/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_112~1..v1.1_112)) +- [[tutorial v1.1_120] Disabled a variable when an other variable are disabled](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_120/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_120~1..v1.1_120)) diff --git a/config/01/output_ro.html b/config/01/output_ro.html index 24c5c570..bb585a60 100644 --- a/config/01/output_ro.html +++ b/config/01/output_ro.html @@ -2,6 +2,5 @@ │ Variable Default value │ ╰────────────────────────╯ Variables: -┣━━ 📓 proxy_mode (Configure Proxy Access to the Internet): No proxy -┗━━ 📓 proxy_dns_socks5 (Use proxy DNS when using SOCKS v5): false +┗━━ 📓 proxy_mode (Configure Proxy Access to the Internet): No proxy diff --git a/config/04/output_ro.html b/config/04/output_ro.html index aeac179a..eae84caa 100644 --- a/config/04/output_ro.html +++ b/config/04/output_ro.html @@ -22,7 +22,6 @@ Variables: ┗━━ 📓 version (SOCKS host version used by proxy): v4 ◀ loaded from the YAML file "config/04/config.yml" (⏳ v5) ┣━━ 📓 no_proxy (Address for which proxy will be desactivated): [] -┣━━ 📓 prompt_authentication (Prompt for authentication if password is saved): -true -┗━━ 📓 proxy_dns_socks5 (Use proxy DNS when using SOCKS v5): false +┗━━ 📓 prompt_authentication (Prompt for authentication if password is saved): + true diff --git a/tree.html b/tree.html index a6c30f43..f4b8e9d9 100644 --- a/tree.html +++ b/tree.html @@ -1,14 +1,14 @@

-.
- ├── firefox
- │   ├── 00-proxy.yml
- │   ├── 10-manual.yml
- │   ├── 20-manual.yml
- │   ├── 30-auto.yml
- │   ├── 40-no_proxy.yml
- │   ├── 50-prompt_authentication.yml
- │   └── 55-proxy_dns_socks5.yml
- └── types
-     └── proxy
-         └── 00-type.yml
+.
+ ├── firefox
+ │   ├── 00-proxy.yml
+ │   ├── 10-manual.yml
+ │   ├── 20-manual.yml
+ │   ├── 30-auto.yml
+ │   ├── 40-no_proxy.yml
+ │   ├── 50-prompt_authentication.yml
+ │   └── 55-proxy_dns_socks5.yml
+ └── types
+     └── proxy
+         └── 00-type.yml


\ No newline at end of file