diff --git a/README.md b/README.md
index 9b89dd61..f3a6c10e 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_172] Auto save value](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_172/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_180~1..v1.1_180))
+- [[tutorial v1.1_180] A variable name that conflict with a known the variable's attribute "type"](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_180/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_190~1..v1.1_190))
-# [tutorial v1.1_180] A variable name that conflict with a known the variable's attribute "type"
+# [tutorial v1.1_190] Various variables
-[Read the tutorial "A variable name that conflict with a known the variable's attribute "type"" in the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/jinja.html#a-variable-name-that-conflict-with-a-known-the-variable's-attribute-type)
+[Read the tutorial "Various variables" in the documentation](https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/jinja.html#various-variables)
## 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_180
+git switch --detach v1.1_190
```
## Structure
@@ -37,21 +37,21 @@ git switch --detach v1.1_180
-.
- ├── 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
- │ └── 60-dns_over_https.yml
- ├── foxyproxy
- │ └── 00-foxyproxy.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
+ │ └── 60-dns_over_https.yml
+ ├── foxyproxy
+ │ └── 00-foxyproxy.yml
+ └── types
+ └── proxy
+ └── 00_type.yml
Contents of the foxyproxy/00-foxyproxy.yml file
@@ -93,6 +93,67 @@ proxies:
{%- endfor -%}
description: random color value
auto_save: true
+
+ address:
+ description: IP address, DNS name, server name
+ type: domainname
+ params:
+ allow_ip: true
+ allow_without_dot: true
+ default:
+ jinja: >-
+ {% if firefox.manual.http_proxy.address is not propertyerror %}
+ {{ firefox.manual.http_proxy.address }}
+ {% endif %}
+ description: copy HTTP address if proxy is not "Manual"
+ disabled:
+ jinja: |-
+ {{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
+ return_type: boolean
+ description: |-
+ if type not in:
+ - HTTP
+ - HTTPS/SSL
+ - SOCKS4
+ - SOCKS5
+
+ port:
+ description: Port
+ type: port
+ default:
+ jinja: >-
+ {% if firefox.manual.http_proxy.port is not propertyerror %}
+ {{ firefox.manual.http_proxy.port }}
+ {% endif %}
+ description: copy HTTP port if proxy is not "Manual"
+ disabled:
+ jinja: |-
+ {{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
+ return_type: boolean
+ description: |-
+ if type not in:
+ - HTTP
+ - HTTPS/SSL
+ - SOCKS4
+ - SOCKS5
+
+ url:
+ description: URL
+ type: web_address
+ default:
+ jinja: >-
+ {% if firefox.auto is not propertyerror %}
+ {{ firefox.auto }}
+ {% endif %}
+ description: copy HTTP address if proxy is "Auto"
+ disabled:
+ jinja: |-
+ {{ _.type not in ['PAC URL', 'WPAD'] }}
+ return_type: boolean
+ description: |-
+ if type is not in:
+ - PAC URL
+ - WPAD
...
```
@@ -201,11 +262,14 @@ rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/prox
> **Path**: foxyproxy.proxies\
> `basic`
-| Variable | Description |
-|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| **foxyproxy.proxies.title**
[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` `standard` `unique` | Title or Description. |
-| **foxyproxy.proxies.type**
[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | Proxy Type.
**Choices**:
• HTTP
• HTTPS/SSL
• SOCKS4
• SOCKS5
• PAC URL
• WPAD
• System (use system settings)
• Direct (no proxy) **← (default)** |
-| **foxyproxy.proxies.color**
[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` `auto modified` | Color.
**Validator**: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$"
**Default**: random color value |
+| Variable | Description |
+|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| **foxyproxy.proxies.title**
[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` `standard` `unique` | Title or Description. |
+| **foxyproxy.proxies.type**
[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | Proxy Type.
**Choices**:
• HTTP
• HTTPS/SSL
• SOCKS4
• SOCKS5
• PAC URL
• WPAD
• System (use system settings)
• Direct (no proxy) **← (default)** |
+| **foxyproxy.proxies.color**
[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` `auto modified` | Color.
**Validator**: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$"
**Default**: random color value |
+| **foxyproxy.proxies.address**
[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | IP address, DNS name, server name.
**Validators**:
• type domainname
• the domain name can be a hostname
• the domain name can be an IP
**Default**: copy HTTP address if proxy is not "Manual"
**Disabled**: if type not in:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5 |
+| **foxyproxy.proxies.port**
[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | Port.
**Validators**:
• well-known ports (1 to 1023) are allowed
• registred ports (1024 to 49151) are allowed
• private ports (greater than 49152) are allowed
**Default**: copy HTTP port if proxy is not "Manual"
**Disabled**: if type not in:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5 |
+| **foxyproxy.proxies.url**
[`web address`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | 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
**Default**: copy HTTP address if proxy is "Auto"
**Disabled**: if type is not in:
- PAC URL
- WPAD |
***
@@ -214,11 +278,13 @@ rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/prox
```shell
rougail -m firefox/ -s Firefox -xn FoxyProxy -xd 0 foxyproxy/ --types types/proxy --modes_level basic standard advanced -o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml
```
-#### New variable
+#### New variables
-| Variable | Description |
-|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| **foxyproxy.proxies.type**
[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | Proxy Type.
**Choices**:
• HTTP
• HTTPS/SSL
• SOCKS4
• SOCKS5
• PAC URL
• WPAD
• System (use system settings)
• Direct (no proxy) **← (default)** |
+| Variable | Description |
+|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| **foxyproxy.proxies.address**
[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | IP address, DNS name, server name.
**Validators**:
• type domainname
• the domain name can be a hostname
• the domain name can be an IP
**Default**: copy HTTP address if proxy is not "Manual"
**Disabled**: if type not in:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5 |
+| **foxyproxy.proxies.port**
[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | Port.
**Validators**:
• well-known ports (1 to 1023) are allowed
• registred ports (1024 to 49151) are allowed
• private ports (greater than 49152) are allowed
**Default**: copy HTTP port if proxy is not "Manual"
**Disabled**: if type not in:
- HTTP
- HTTPS/SSL
- SOCKS4
- SOCKS5 |
+| **foxyproxy.proxies.url**
[`web address`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` *`disabled`* | 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
**Default**: copy HTTP address if proxy is "Auto"
**Disabled**: if type is not in:
- PAC URL
- WPAD |
#### Modified variable
@@ -262,4 +328,4 @@ Variables:
***
-- [[tutorial v1.1_190] Various variables](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_190/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_190~1..v1.1_190))
+- [[tutorial v1.1_200] Username is mandatory if a password is set](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/v1.1_200/README.md) ([diff](https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/v1.1_200~1..v1.1_200))
diff --git a/tree.html b/tree.html
index 9bfb5f6c..7d525d59 100644
--- a/tree.html
+++ b/tree.html
@@ -1,17 +1,17 @@
-.
- ├── 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
- │ └── 60-dns_over_https.yml
- ├── foxyproxy
- │ └── 00-foxyproxy.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
+ │ └── 60-dns_over_https.yml
+ ├── foxyproxy
+ │ └── 00-foxyproxy.yml
+ └── types
+ └── proxy
+ └── 00_type.yml
\ No newline at end of file