From 0d87dcc5bedfcd6365feddd5a762bcef72cf753a Mon Sep 17 00:00:00 2001 From: Emmanuel Garette Date: Mon, 9 Mar 2026 09:12:50 +0100 Subject: [PATCH] [tutorial v1.1_112] A Jinja conditional disabled boolean variable (config and doc) --- README.md | 56 +++++++++++++++++++++++----------------- config/01/output_ro.html | 3 +-- tree.html | 24 ++++++++--------- 3 files changed, 45 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index 8d5413be..d4887d0a 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 @@ -29,7 +29,7 @@ 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 @@ -37,18 +37,18 @@ git switch --detach v1.1_111

-.
- ├── 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 @@ -58,7 +58,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" ... ``` @@ -126,7 +135,7 @@ rougail -m firefox/ --types types/proxy -o doc | **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" | *** @@ -135,11 +144,11 @@ rougail -m firefox/ --types types/proxy -o doc ```shell rougail -m firefox/ --types types/proxy -o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml ``` -#### 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"
| *** @@ -168,7 +177,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 @@ -254,4 +262,4 @@ rougail -m firefox/ --types types/proxy -u yaml -yf config/04/config.yml *** -- [[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/tree.html b/tree.html index 78e4c978..317a06d9 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