diff --git a/build.py b/build.py index acef8b8..139a90a 100755 --- a/build.py +++ b/build.py @@ -16,11 +16,12 @@ from rougail.output_doc import RougailOutputDoc if __name__ == "__main__": - builder_dir = sys.argv[1] - previous = Path(builder_dir) / "previous.yml" + builder_dir = Path(sys.argv[1]) + previous = builder_dir / "previous.yml" with Path("install.txt").open() as fh: cmd = fh.read() commit_id = sys.argv[2] + has_new_type = sys.argv[3] == 'true' # rougailconfig = RougailConfig.copy() rougailconfig = get_rougail_config(backward_compatibility=False, add_extra_options=False) rougailconfig['main_structural_directories'] = ['firefox'] @@ -91,6 +92,14 @@ if __name__ == "__main__": with tree.open("w") as fh: fh.write(tree_content) display_yml = None + if has_new_type: + display_yml = Path('types/proxy/00-type.yml') + doc += f"Contents of the {str(display_yml)} type file" + doc += '\n\n```yml\n' + with display_yml.open(encoding="utf8") as file_fh: + doc += file_fh.read() + doc += '\n```\n' + doc += "\n***\n" if not (Path(".") / 'NODISPLAY').is_file(): for f in Path(".").iterdir(): if f.name.startswith('DISPLAY_'): @@ -114,7 +123,7 @@ if __name__ == "__main__": doc += "\n***\n" rougailconfig['step.output'] = 'doc' rougailconfig["doc.title_level"] = 4 - inv_doc = inventory.run()[1] +# inv_doc = inventory.run()[1] CMD = "rougail -m firefox/ " if has_namespace: CMD += "-s Firefox " @@ -124,21 +133,24 @@ if __name__ == "__main__": CMD += "--types " + " ".join(rougailconfig["types"]) + " " if has_mode: CMD += "--modes_level basic standard advanced " - if inv_doc: - doc += inv_formatter.title("Let's generate the documentation", 3) +# if inv_doc: + if Path('DOCUMENTATION.md').is_file(): + doc += inv_formatter.title("Let's generate the documentation", 3) + "\n\n" cmd = CMD + "-o doc" doc += f'```shell\n{cmd}\n```\n' - doc += inv_doc + doc += "[View the documentation file](DOCUMENTATION.md)\n\n" +# doc += inv_doc doc += "\n***\n" if previous.is_file(): - rougailconfig["doc.contents"] = ["changelog"] - rougailconfig["doc.changelog.previous_json_file"] = str(previous) - inv_doc = inventory.run()[1] - if inv_doc: - doc += inv_formatter.title("Let's generate the changelog", 3) +# rougailconfig["doc.contents"] = ["changelog"] +# rougailconfig["doc.changelog.previous_json_file"] = str(previous) +# inv_doc = inventory.run()[1] + if Path('CHANGELOG.md').is_file(): + doc += inv_formatter.title("Let's generate the changelog", 3) + "\n\n" cmd = CMD + "-o doc --doc.contents changelog --doc.changelog.previous_json_file previous.yml" doc += f'```shell\n{cmd}\n```\n' - doc += inv_doc + "\n" + doc += "[View the changelog file](CHANGELOG.md)\n\n" +# doc += inv_doc + "\n" doc += "***\n" # save PREVIOUS rougailconfig["doc.contents"] = ["variables"] @@ -151,7 +163,7 @@ if __name__ == "__main__": rougailconfig['step.output'] = 'display' config_dir = Path('config') if config_dir.is_dir(): - doc += inv_formatter.title('User datas', 2) + doc += inv_formatter.title('User datas', 2) + "\n\n" configs = list(config_dir.iterdir()) configs.sort() for idx, dirname in enumerate(configs): @@ -159,8 +171,8 @@ if __name__ == "__main__": continue for filename in dirname.iterdir(): if filename.name.endswith('.yml') or filename.name.endswith('.yaml'): - doc += inv_formatter.title(f'Example {idx + 1}', 3) - doc += inv_formatter.title(str(filename), 4) + doc += inv_formatter.title(f'Example {idx + 1}', 3) + "\n\n" + doc += inv_formatter.title(str(filename), 4) + "\n\n" doc += '\n```yml\n' with filename.open(encoding="utf8") as file_fh: doc += file_fh.read() @@ -183,12 +195,12 @@ if __name__ == "__main__": ) console = export.run()[1] conv = Ansi2HTMLConverter(inline=True) - doc += inv_formatter.title('Output', 4) + doc += inv_formatter.title('Output', 4) + "\n\n" cmd = CMD + f"-u yaml -yf {filename}" with (dirname / "cmd_ro.txt").open("w") as fh: fh.write(cmd) doc += f"```shell\n{cmd}\n```\n" - conv_data = '
' + conv.convert(console, full=False) + "\n" + conv_data = '
' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "\n"
with open(dirname / 'output_ro.html', 'w') as fh_output:
fh_output.write(conv_data)
rougailconfig['display.output_format'] = "github"
@@ -212,12 +224,12 @@ if __name__ == "__main__":
)
console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True)
- doc += inv_formatter.title('Output when invalid user data is an error', 4)
+ doc += inv_formatter.title('Output when invalid user data is an error', 4) + "\n\n"
cmd2 = cmd + " --cli.invalid_user_data_error"
with (dirname / "cmd_invalid.txt").open("w") as fh:
fh.write(cmd2)
doc += f"```shell\n{cmd2}\n```\n"
- conv_data = '' + conv.convert(console, full=False) + "\n" + conv_data = '
' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "\n"
with open(dirname / 'output_invalid.html', 'w') as fh_output:
fh_output.write(conv_data)
rougailconfig['display.output_format'] = "github"
@@ -242,12 +254,12 @@ if __name__ == "__main__":
)
console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True)
- doc += inv_formatter.title('Output when unknown user data is an error', 4)
+ doc += inv_formatter.title('Output when unknown user data is an error', 4) + "\n\n"
cmd2 = cmd + " --cli.unknown_user_data_error"
with (dirname / "cmd_unknown.txt").open("w") as fh:
fh.write(cmd2)
doc += f"```shell\n{cmd2}\n```\n"
- conv_data = '' + conv.convert(console, full=False) + "\n" + conv_data = '
' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "\n"
with open(dirname / 'output_unknown.html', 'w') as fh_output:
fh_output.write(conv_data)
trougailconfig['display.output_format'] = "github"
@@ -278,12 +290,12 @@ if __name__ == "__main__":
)
console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True)
- doc += inv_formatter.title(f'Output for "{root_path}"', 4)
+ doc += inv_formatter.title(f'Output for "{root_path}"', 4) + "\n\n"
cmd2 = cmd + f" --cli.root {root_path}"
with (dirname / "cmd_root.txt").open("w") as fh:
fh.write(cmd2)
doc += f"```shell\n{cmd2}\n```\n"
- conv_data = '' + conv.convert(console, full=False) + "\n" + conv_data = '
' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "\n"
with open(dirname / 'output_root.html', 'w') as fh_output:
fh_output.write(conv_data)
trougailconfig['display.output_format'] = "github"
@@ -307,12 +319,12 @@ if __name__ == "__main__":
)
console = export.run()[1]
conv = Ansi2HTMLConverter(inline=True)
- doc += inv_formatter.title('Output in read write mode', 4)
+ doc += inv_formatter.title('Output in read write mode', 4) + "\n\n"
cmd2 = cmd + " --cli.read_write"
with (dirname / "cmd_rw.txt").open("w") as fh:
fh.write(cmd2)
doc += f"```shell\n{cmd2}\n```\n"
- conv_data = '' + conv.convert(console, full=False) + "\n" + conv_data = '
' + conv.convert(console, full=False).replace('#ffd700', '#ff4d00') + "\n"
with open(dirname / 'output_rw.html', 'w') as fh_output:
fh_output.write(conv_data)
trougailconfig['display.output_format'] = "github"
diff --git a/build.sh b/build.sh
index d4513c4..2369f88 100755
--- a/build.sh
+++ b/build.sh
@@ -29,20 +29,21 @@ cp "$BUILDER"/firefox.png .
cp "$BUILDER"/foxyproxy.png .
cp "$BUILDER"/summary.md .
cp "$BUILDER"/install.txt .
+EMPTY=$(echo -e "\n")
touch README.md
-"$BUILDER"/build.py "$BUILDER" "$VERSION"
+"$BUILDER"/build.py "$BUILDER" "$VERSION" "false"
rm -rf summary.md
rm -rf summary_total.md
rm -rf jinja_caches
-git init -b "$VERSION"
+git init -b "$VERSION" > /dev/null
git add .
-git commit -am"$(cat $BUILDER/TITLE)"
+git commit -am"$(cat $BUILDER/TITLE)" > /dev/null
#old_commit_id="$(git rev-parse HEAD)"
cd - > /dev/null
for i in $(ls -d "examples"/* | sort); do
num=$(echo $(basename "$i"))
- echo "$num"
+# echo "$num"
commit_id="v${VERSION}_$num"
title="$(head -n 1 $i/README.md)"
summary="[tutorial $commit_id] $title"
@@ -54,19 +55,19 @@ for i in $(ls -d "examples"/* | sort); do
base_url_doc=$(cat $i/URL)
fi
if [ -f "$i/TITLE.md" ]; then
- echo "- $(head -n 1 $i/TITLE.md) ([doc]($base_url_doc))" >> summary.md
+ echo "- $(head -n 1 $i/TITLE.md)" >> summary.md
fi
if [ -f "$i/SUBTITLE.md" ]; then
- echo " - $(head -n 1 $i/SUBTITLE.md)" >> summary.md
+ echo " - $(head -n 1 $i/SUBTITLE.md) ([doc]($base_url_doc))" >> summary.md
fi
if [ -f "$i/README.md" ]; then
rm -rf "$DEST/config" "$DEST/tree.html"
num=$(echo $(basename "$i"))
- echo "$num"
+ echo "=== $num ==="
commit_id="v${VERSION}_$num"
title=$(head -n 1 $i/README.md)
summary="[tutorial $commit_id] $title"
- url_doc="$base_url_doc#$(echo $title | tr A-Z a-z | sed 's/ /-/g' | sed 's/’/-/g' | sed 's/\"//g')"
+ url_doc="$base_url_doc#$(echo $title | tr A-Z a-z | sed 's/ /-/g' | sed 's/’/-/g' | sed 's/\"//g' | sed 's/://g' | sed 's/_/-/g')"
diff_url="https://forge.cloud.silique.fr/stove/rougail-tutorials/compare/${commit_id}~1..$commit_id"
echo " - [$summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/$commit_id/README.md) ([doc]($url_doc) - [diff]($diff_url))" >> summary.md
cp "summary_total.md" "$DEST"
@@ -88,6 +89,9 @@ for i in $(ls -d "examples"/* | sort); do
for j in $(ls -d ../types/* 2>/dev/null); do
cp -va "$j" "$DEST/types/"
done
+ has_new_type="true"
+ else
+ has_new_type="false"
fi
cd $DEST
tree -H $TUTO_ROOT/$commit_id/ -P "*.yml" > tree.html
@@ -95,7 +99,7 @@ for i in $(ls -d "examples"/* | sort); do
cp -v NODISPLAY DISPLAY_* "$DEST/" 2> /dev/null || true
cp -f ../README.md "$DEST"
if [ -d ../config ]; then
- cp -aL ../config "$DEST"
+ cp -vaL ../config "$DEST"
fi
msg="[tutorial $commit_id] $(cat ../README.md)"
[ -e ../firefox.png ] && cp ../firefox.png "$DEST"
@@ -104,23 +108,44 @@ for i in $(ls -d "examples"/* | sort); do
cd $BEFORE
cd "$DEST"
#
- echo "- [Summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/branch/$VERSION/README.md)" > summary_before.md
+ echo "- [List of all the tutorial steps](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/branch/$VERSION/README.md)" > summary_before.md
if [ -n "$old_commit_id" ]; then
- echo "- [$old_summary](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/$old_commit_id/README.md) ([diff]($diff_url))" >> summary_before.md
+ echo "- [$(echo $old_summary| sed 's/\[tutorial /\[Previous tutorial /')](https://forge.cloud.silique.fr/stove/rougail-tutorials/src/commit/$old_commit_id/README.md) ([diff]($diff_url))" >> summary_before.md
fi
echo "" >> summary_before.md
echo "# $summary" >> summary_before.md
echo "" >> summary_before.md
- echo "[Read the tutorial \"$title\" in the documentation]($url_doc)" >> summary_before.md
+ echo "- [Read the tutorial \"$title\" in the documentation]($url_doc)" >> summary_before.md
+ echo "- [View the changes in the files]($diff_url)" >> summary_before.md
after=$(grep "commit/$commit_id/README.md" summary_total.md -A1 | wc -l)
if [ "$after" = "2" ]; then
- echo $(grep "commit/$commit_id/README.md" summary_total.md -A1 | tail -n 1) > summary_after.md
+ echo $(grep "commit/$commit_id/README.md" summary_total.md -A1 | tail -n 1 | sed 's/\[tutorial /\[Next tutorial /') > summary_after.md
fi
#
+ ENV="ROUGAILCLI_CLI.CONFIG_FILE=$BUILDER/rougailcli_common.yml"
+ if [ -d types ]; then
+ ENV="$ENV,$BUILDER/rougailcli_types.yml"
+ fi
if [ -f config/mode ]; then
mv config/mode mode
fi
- "$BUILDER"/build.py "$BUILDER" "$commit_id"
+ if [ -f mode ]; then
+ ENV="$ENV,$BUILDER/rougailcli_mode.yml"
+ fi
+ if [ -f namespace ] || [ -d foxyproxy ]; then
+ ENV="$ENV,$BUILDER/rougailcli_namespace.yml"
+ if [ -d foxyproxy ]; then
+ ENV="$ENV,$BUILDER/rougailcli_namespace_foxyproxy.yml"
+ fi
+ fi
+ env $ENV,$BUILDER/rougailcli_documentation.yml rougail > DOCUMENTATION.md
+ if [ "$(cat DOCUMENTATION.md)" = "$EMPTY" ]; then rm DOCUMENTATION.md; echo "NO DOCUMENTATION"; fi
+ if [ -f "$BUILDER"/previous.yml ]; then
+ env $ENV,$BUILDER/rougailcli_documentation.yml,$BUILDER/rougailcli_changelog.yml rougail > CHANGELOG.md
+ if [ "$(cat CHANGELOG.md)" = "$EMPTY" ]; then rm CHANGELOG.md; fi
+ fi
+ if [ ! -f CHANGELOG.md ]; then echo "NO CHANGELOG"; fi
+ "$BUILDER"/build.py "$BUILDER" "$commit_id" "$has_new_type"
rm -rf config/*/README.md config/*/read_write namespace config/*/invalid DISPLAY_* NODISPLAY
rm -rf jinja_caches summary.md summary_before.md summary_after.md summary_total.md
if [ -f mode ]; then
@@ -130,23 +155,25 @@ for i in $(ls -d "examples"/* | sort); do
MODE=0
fi
git add *.png README.md install.txt tree.html
+ git add DOCUMENTATION.md &> /dev/null || true
+ git add CHANGELOG.md &> /dev/null || true
if [ -d config ]; then
git add config
else
git status |grep -q config && git add config
fi
- git commit -m"$summary (config and doc)"
+ git commit -m"$summary (config and doc)" > /dev/null
git add .
- git commit -am"$msg" --allow-empty
+ git commit -am"$msg" --allow-empty > /dev/null
git tag -a "$commit_id" -m"format version $VERSION: $num"
if [ "$MODE" = 1 ]; then
touch mode
fi
cd - > /dev/null
old_commit_id="$commit_id"
- old_summary="$summary"
+ old_summary="$summary"
# echo "pouet $i"
-# [ "$i" = "examples/120" ] && exit 1
+# [ "$i" = "examples/002" ] && exit 1
if [ -f previous.yml ]; then cp -a previous.yml previous_old.yml; fi
fi
done
diff --git a/examples/000/SUBTITLE.md b/examples/000/SUBTITLE.md
new file mode 100644
index 0000000..e5d1207
--- /dev/null
+++ b/examples/000/SUBTITLE.md
@@ -0,0 +1 @@
+Getting started
diff --git a/examples/000/TITLE.md b/examples/000/TITLE.md
index e5d1207..a0b855e 100644
--- a/examples/000/TITLE.md
+++ b/examples/000/TITLE.md
@@ -1 +1 @@
-Getting started
+Configure Proxy Access to the Internet
diff --git a/examples/000/config/01/README.md b/examples/000/config/01/README.md
deleted file mode 100644
index 63072c4..0000000
--- a/examples/000/config/01/README.md
+++ /dev/null
@@ -1 +0,0 @@
-The user data file is empty. So it's only default value that will be used.
diff --git a/examples/001/config/01/README.md b/examples/001/config/01/README.md
deleted file mode 100644
index 63072c4..0000000
--- a/examples/001/config/01/README.md
+++ /dev/null
@@ -1 +0,0 @@
-The user data file is empty. So it's only default value that will be used.
diff --git a/examples/001/config/03/README.md b/examples/001/config/03/README.md
deleted file mode 100644
index 2ecba09..0000000
--- a/examples/001/config/03/README.md
+++ /dev/null
@@ -1 +0,0 @@
-The integer value "1" is invalid.
diff --git a/examples/002/config/01/README.md b/examples/002/config/01/README.md
deleted file mode 100644
index 63072c4..0000000
--- a/examples/002/config/01/README.md
+++ /dev/null
@@ -1 +0,0 @@
-The user data file is empty. So it's only default value that will be used.
diff --git a/examples/002/config/03/README.md b/examples/002/config/03/README.md
deleted file mode 100644
index fa01af6..0000000
--- a/examples/002/config/03/README.md
+++ /dev/null
@@ -1 +0,0 @@
-"foo" should be an invalid value for this variable.
diff --git a/examples/003/config/01/README.md b/examples/003/config/01/README.md
deleted file mode 100644
index 63072c4..0000000
--- a/examples/003/config/01/README.md
+++ /dev/null
@@ -1 +0,0 @@
-The user data file is empty. So it's only default value that will be used.
diff --git a/examples/003/config/03/README.md b/examples/003/config/03/README.md
deleted file mode 100644
index fa01af6..0000000
--- a/examples/003/config/03/README.md
+++ /dev/null
@@ -1 +0,0 @@
-"foo" should be an invalid value for this variable.
diff --git a/examples/010/TITLE.md b/examples/010/SUBTITLE.md
similarity index 100%
rename from examples/010/TITLE.md
rename to examples/010/SUBTITLE.md
diff --git a/examples/010/config/01/README.md b/examples/010/config/01/README.md
deleted file mode 100644
index 63072c4..0000000
--- a/examples/010/config/01/README.md
+++ /dev/null
@@ -1 +0,0 @@
-The user data file is empty. So it's only default value that will be used.
diff --git a/examples/010/config/04/README.md b/examples/010/config/04/README.md
deleted file mode 100644
index fa01af6..0000000
--- a/examples/010/config/04/README.md
+++ /dev/null
@@ -1 +0,0 @@
-"foo" should be an invalid value for this variable.
diff --git a/examples/020/SUBTITLE.md b/examples/020/SUBTITLE.md
new file mode 100644
index 0000000..a8fc94b
--- /dev/null
+++ b/examples/020/SUBTITLE.md
@@ -0,0 +1 @@
+Group variables inside families
diff --git a/examples/020/TITLE.md b/examples/020/TITLE.md
index a8fc94b..f76caf7 100644
--- a/examples/020/TITLE.md
+++ b/examples/020/TITLE.md
@@ -1 +1 @@
-Group variables inside families
+Manual proxy configuration
diff --git a/examples/022/config/03/config.yml b/examples/022/config/03/config.yml
deleted file mode 100644
index da3353a..0000000
--- a/examples/022/config/03/config.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-manual:
- http_proxy:
- address: example.net
- port: 3128
diff --git a/examples/030/TITLE.md b/examples/030/SUBTITLE.md
similarity index 100%
rename from examples/030/TITLE.md
rename to examples/030/SUBTITLE.md
diff --git a/examples/040/TITLE.md b/examples/040/SUBTITLE.md
similarity index 100%
rename from examples/040/TITLE.md
rename to examples/040/SUBTITLE.md
diff --git a/examples/040/URL b/examples/040/URL
index 3af48c3..28fae4f 100644
--- a/examples/040/URL
+++ b/examples/040/URL
@@ -1 +1 @@
-https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/properties.html
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/calculated.html
diff --git a/examples/040/config/01/config.yml b/examples/040/config/01/config.yml
new file mode 100644
index 0000000..84547fa
--- /dev/null
+++ b/examples/040/config/01/config.yml
@@ -0,0 +1,9 @@
+---
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
+ port: 3128
+ use_for_https: false
+ https_proxy:
+ address: https.proxy.net
diff --git a/examples/041/config/01/README.md b/examples/041/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/041/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/050/TITLE.md b/examples/050/SUBTITLE.md
similarity index 100%
rename from examples/050/TITLE.md
rename to examples/050/SUBTITLE.md
diff --git a/examples/050/URL b/examples/050/URL
new file mode 100644
index 0000000..3af48c3
--- /dev/null
+++ b/examples/050/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/properties.html
diff --git a/examples/050/config/02/README.md b/examples/050/config/02/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/050/config/02/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/051/config/02/README.md b/examples/051/config/02/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/051/config/02/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/052/config/01/README.md b/examples/052/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/052/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/052/config/02/README.md b/examples/052/config/02/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/052/config/02/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/053/config/01/README.md b/examples/053/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/053/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/053/config/02/README.md b/examples/053/config/02/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/053/config/02/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/060/README.md b/examples/060/README.md
index 528c054..ef74d88 100644
--- a/examples/060/README.md
+++ b/examples/060/README.md
@@ -1 +1 @@
-A dynamically built family
+Family: A dynamically built family
diff --git a/examples/060/TITLE.md b/examples/060/SUBTITLE.md
similarity index 100%
rename from examples/060/TITLE.md
rename to examples/060/SUBTITLE.md
diff --git a/examples/060/URL b/examples/060/URL
index ef892f0..93b9f4b 100644
--- a/examples/060/URL
+++ b/examples/060/URL
@@ -1 +1 @@
-https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/dynfam.html
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/dynamic.html
diff --git a/examples/060/config/01/README.md b/examples/060/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/060/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/061/config/01/README.md b/examples/061/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/061/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/070/TITLE.md b/examples/070/SUBTITLE.md
similarity index 100%
rename from examples/070/TITLE.md
rename to examples/070/SUBTITLE.md
diff --git a/examples/070/config/01/README.md b/examples/070/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/070/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/070/config/02/README.md b/examples/070/config/02/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/070/config/02/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/071/config/01/README.md b/examples/071/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/071/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/072/config/01/README.md b/examples/072/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/072/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/073/config/01/README.md b/examples/073/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/073/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/080/TITLE.md b/examples/080/SUBTITLE.md
similarity index 100%
rename from examples/080/TITLE.md
rename to examples/080/SUBTITLE.md
diff --git a/examples/080/URL b/examples/080/URL
new file mode 100644
index 0000000..466e7ad
--- /dev/null
+++ b/examples/080/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/customtype.html
diff --git a/examples/080/config/01/README.md b/examples/080/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/080/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/130/config/mode b/examples/080/structural_files/DISPLAY_10-manual.yml
similarity index 100%
rename from examples/130/config/mode
rename to examples/080/structural_files/DISPLAY_10-manual.yml
diff --git a/examples/080/types/proxy/00_type.yml b/examples/080/types/proxy/00-type.yml
similarity index 83%
rename from examples/080/types/proxy/00_type.yml
rename to examples/080/types/proxy/00-type.yml
index e786ef1..d5db586 100644
--- a/examples/080/types/proxy/00_type.yml
+++ b/examples/080/types/proxy/00-type.yml
@@ -9,11 +9,9 @@ proxy:
type: domainname
params:
allow_ip: true
- mandatory: false
port:
description: Proxy port
type: port
default: 8080
- mandatory: false
...
diff --git a/examples/081/README.md b/examples/081/README.md
index 4587e6e..85c5ce8 100644
--- a/examples/081/README.md
+++ b/examples/081/README.md
@@ -1 +1 @@
-HTTPS and SOCKS Proxy
+HTTPS and SOCKS Proxy with "proxy" type
diff --git a/examples/081/config/01/README.md b/examples/081/config/01/README.md
deleted file mode 100644
index 765a56e..0000000
--- a/examples/081/config/01/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-If "use_for_https" is false, HTTPS variables are visible in read only mode and in read write mode.
-
diff --git a/examples/081/config/01/config.yml b/examples/081/config/01/config.yml
index 84547fa..0689136 100644
--- a/examples/081/config/01/config.yml
+++ b/examples/081/config/01/config.yml
@@ -7,3 +7,5 @@ manual:
use_for_https: false
https_proxy:
address: https.proxy.net
+ socks_proxy:
+ address: socks.proxy.net
diff --git a/examples/081/structural_files/firefox/20-manual.yml b/examples/081/structural_files/firefox/20-manual.yml
index d4ef43b..e52459e 100644
--- a/examples/081/structural_files/firefox/20-manual.yml
+++ b/examples/081/structural_files/firefox/20-manual.yml
@@ -12,24 +12,7 @@ manual:
hidden:
variable: _.use_for_https
- address:
- default:
- variable: __.http_proxy.address
- mandatory: true
-
- port:
- default:
- variable: __.http_proxy.port
- mandatory: true
-
socks_proxy:
description: SOCKS Proxy
type: proxy
-
- version:
- description: SOCKS host version used by proxy
- choices:
- - v4
- - v5
- default: v5
...
diff --git a/examples/082/README.md b/examples/082/README.md
new file mode 100644
index 0000000..75f9ef2
--- /dev/null
+++ b/examples/082/README.md
@@ -0,0 +1 @@
+Add a variable in a family with custom type
diff --git a/examples/082/config/01/config.yml b/examples/082/config/01/config.yml
new file mode 100644
index 0000000..0689136
--- /dev/null
+++ b/examples/082/config/01/config.yml
@@ -0,0 +1,11 @@
+---
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
+ port: 3128
+ use_for_https: false
+ https_proxy:
+ address: https.proxy.net
+ socks_proxy:
+ address: socks.proxy.net
diff --git a/examples/082/structural_files/firefox/20-manual.yml b/examples/082/structural_files/firefox/20-manual.yml
new file mode 100644
index 0000000..11f30ac
--- /dev/null
+++ b/examples/082/structural_files/firefox/20-manual.yml
@@ -0,0 +1,25 @@
+%YAML 1.2
+---
+version: 1.1
+
+manual:
+
+ use_for_https: true # Also use this proxy for HTTPS
+
+ https_proxy:
+ description: HTTPS Proxy
+ type: proxy
+ hidden:
+ variable: _.use_for_https
+
+ socks_proxy:
+ description: SOCKS Proxy
+ type: proxy
+
+ version:
+ description: SOCKS host version used by proxy
+ choices:
+ - v4
+ - v5
+ default: v5
+...
diff --git a/examples/083/README.md b/examples/083/README.md
new file mode 100644
index 0000000..e96becd
--- /dev/null
+++ b/examples/083/README.md
@@ -0,0 +1 @@
+Redefine default value in custom type variable
diff --git a/examples/083/config/01/config.yml b/examples/083/config/01/config.yml
new file mode 100644
index 0000000..84547fa
--- /dev/null
+++ b/examples/083/config/01/config.yml
@@ -0,0 +1,9 @@
+---
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
+ port: 3128
+ use_for_https: false
+ https_proxy:
+ address: https.proxy.net
diff --git a/examples/160/namespace b/examples/083/structural_files/DISPLAY_10-manual.yml
similarity index 100%
rename from examples/160/namespace
rename to examples/083/structural_files/DISPLAY_10-manual.yml
diff --git a/examples/083/structural_files/firefox/10-manual.yml b/examples/083/structural_files/firefox/10-manual.yml
new file mode 100644
index 0000000..40a493d
--- /dev/null
+++ b/examples/083/structural_files/firefox/10-manual.yml
@@ -0,0 +1,20 @@
+%YAML 1.2
+---
+version: 1.1
+
+manual:
+ description: Manual proxy configuration
+ disabled:
+ variable: _.proxy_mode
+ when_not: Manual proxy configuration
+
+ http_proxy:
+ description: HTTP Proxy
+ type: proxy
+
+ address:
+ default: null
+
+ port:
+ default: 8080
+...
diff --git a/examples/083/types/proxy/00-type.yml b/examples/083/types/proxy/00-type.yml
new file mode 100644
index 0000000..6877fb8
--- /dev/null
+++ b/examples/083/types/proxy/00-type.yml
@@ -0,0 +1,20 @@
+%YAML 1.2
+---
+version: 1.1
+
+proxy:
+
+ address:
+ description: Proxy address
+ type: domainname
+ params:
+ allow_ip: true
+ default:
+ variable: __.http_proxy.address
+
+ port:
+ description: Proxy port
+ type: port
+ default:
+ variable: __.http_proxy.port
+...
diff --git a/examples/084/README.md b/examples/084/README.md
new file mode 100644
index 0000000..afb0eea
--- /dev/null
+++ b/examples/084/README.md
@@ -0,0 +1 @@
+Redefine other parameter in custom type for HTTP
diff --git a/examples/084/config/01/config.yml b/examples/084/config/01/config.yml
new file mode 100644
index 0000000..84547fa
--- /dev/null
+++ b/examples/084/config/01/config.yml
@@ -0,0 +1,9 @@
+---
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
+ port: 3128
+ use_for_https: false
+ https_proxy:
+ address: https.proxy.net
diff --git a/examples/160/structural_files/NODISPLAY b/examples/084/structural_files/DISPLAY_10-manual.yml
similarity index 100%
rename from examples/160/structural_files/NODISPLAY
rename to examples/084/structural_files/DISPLAY_10-manual.yml
diff --git a/examples/084/structural_files/firefox/10-manual.yml b/examples/084/structural_files/firefox/10-manual.yml
new file mode 100644
index 0000000..62069c9
--- /dev/null
+++ b/examples/084/structural_files/firefox/10-manual.yml
@@ -0,0 +1,24 @@
+%YAML 1.2
+---
+version: 1.1
+
+manual:
+ description: Manual proxy configuration
+ disabled:
+ variable: _.proxy_mode
+ when_not: Manual proxy configuration
+
+ http_proxy:
+ description: HTTP Proxy
+ type: proxy
+
+ address:
+ redefine: true
+ default: null
+ description: HTTP proxy address
+
+ port:
+ redefine: true
+ default: 8080
+ description: HTTP proxy port
+...
diff --git a/examples/084/types/proxy/00-type.yml b/examples/084/types/proxy/00-type.yml
new file mode 100644
index 0000000..bb0a889
--- /dev/null
+++ b/examples/084/types/proxy/00-type.yml
@@ -0,0 +1,18 @@
+%YAML 1.2
+---
+version: 1.1
+
+proxy:
+
+ address:
+ type: domainname
+ params:
+ allow_ip: true
+ default:
+ variable: __.http_proxy.address
+
+ port:
+ type: port
+ default:
+ variable: __.http_proxy.port
+...
diff --git a/examples/085/README.md b/examples/085/README.md
new file mode 100644
index 0000000..0eb73f5
--- /dev/null
+++ b/examples/085/README.md
@@ -0,0 +1 @@
+Redefine other parameter in custom type for HTTPS and SOCKS
diff --git a/examples/085/config/01/config.yml b/examples/085/config/01/config.yml
new file mode 100644
index 0000000..84547fa
--- /dev/null
+++ b/examples/085/config/01/config.yml
@@ -0,0 +1,9 @@
+---
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
+ port: 3128
+ use_for_https: false
+ https_proxy:
+ address: https.proxy.net
diff --git a/examples/085/structural_files/firefox/20-manual.yml b/examples/085/structural_files/firefox/20-manual.yml
new file mode 100644
index 0000000..61e31b0
--- /dev/null
+++ b/examples/085/structural_files/firefox/20-manual.yml
@@ -0,0 +1,41 @@
+%YAML 1.2
+---
+version: 1.1
+
+manual:
+
+ use_for_https: true # Also use this proxy for HTTPS
+
+ https_proxy:
+ description: HTTPS Proxy
+ type: proxy
+ hidden:
+ variable: _.use_for_https
+
+ address:
+ redefine: true
+ description: HTTPS proxy address
+
+ port:
+ redefine: true
+ description: HTTPS proxy port
+
+ socks_proxy:
+ description: SOCKS Proxy
+ type: proxy
+
+ address:
+ redefine: true
+ description: SOCKS proxy address
+
+ port:
+ redefine: true
+ description: SOCKS proxy port
+
+ version:
+ description: SOCKS host version used by proxy
+ choices:
+ - v4
+ - v5
+ default: v5
+...
diff --git a/examples/090/README.md b/examples/090/README.md
index c17fb19..f06654c 100644
--- a/examples/090/README.md
+++ b/examples/090/README.md
@@ -1 +1 @@
-A conditional disabled variable with type web_address
+Variable with the value "null"
diff --git a/examples/090/SUBTITLE.md b/examples/090/SUBTITLE.md
new file mode 100644
index 0000000..5fb36b2
--- /dev/null
+++ b/examples/090/SUBTITLE.md
@@ -0,0 +1 @@
+Nullable variable
diff --git a/examples/090/URL b/examples/090/URL
new file mode 100644
index 0000000..8417a9b
--- /dev/null
+++ b/examples/090/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/nullable.html
diff --git a/examples/090/config/01/README.md b/examples/090/config/01/README.md
deleted file mode 100644
index 2e2d78a..0000000
--- a/examples/090/config/01/README.md
+++ /dev/null
@@ -1 +0,0 @@
-We cannot configure "auto" if "proxy_mode" is not "Automatic proxy configuration URL".
diff --git a/examples/090/config/01/config.yml b/examples/090/config/01/config.yml
index 1edbe91..135d8b3 100644
--- a/examples/090/config/01/config.yml
+++ b/examples/090/config/01/config.yml
@@ -1,2 +1,5 @@
---
-auto: https://auto.proxy.net/wpad.dat
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
diff --git a/examples/090/config/02/config.yml b/examples/090/config/02/config.yml
deleted file mode 100644
index 26df130..0000000
--- a/examples/090/config/02/config.yml
+++ /dev/null
@@ -1,2 +0,0 @@
----
-proxy_mode: Automatic proxy configuration URL
diff --git a/examples/090/firefox.png b/examples/090/firefox.png
deleted file mode 100644
index d53e513..0000000
Binary files a/examples/090/firefox.png and /dev/null differ
diff --git a/examples/090/structural_files/firefox/20-manual.yml b/examples/090/structural_files/firefox/20-manual.yml
new file mode 100644
index 0000000..cb80245
--- /dev/null
+++ b/examples/090/structural_files/firefox/20-manual.yml
@@ -0,0 +1,44 @@
+%YAML 1.2
+---
+version: 1.1
+
+manual:
+
+ use_for_https: true # Also use this proxy for HTTPS
+
+ https_proxy:
+ description: HTTPS Proxy
+ type: proxy
+ hidden:
+ variable: _.use_for_https
+
+ address:
+ redefine: true
+ description: HTTPS proxy address
+
+ port:
+ redefine: true
+ description: HTTPS proxy port
+
+ socks_proxy:
+ description: SOCKS Proxy
+ type: proxy
+
+ address:
+ redefine: true
+ description: SOCKS proxy address
+ default: null
+ mandatory: false
+
+ port:
+ redefine: true
+ description: SOCKS proxy port
+ default: 1080
+
+ version:
+ description: SOCKS host version used by proxy
+ choices:
+ - v4
+ - v5
+ default: v5
+...
diff --git a/examples/091/README.md b/examples/091/README.md
new file mode 100644
index 0000000..5b07cd4
--- /dev/null
+++ b/examples/091/README.md
@@ -0,0 +1 @@
+Variables disabled when condition is null
diff --git a/examples/112/config/02/config.yml b/examples/091/config/01/config.yml
similarity index 100%
rename from examples/112/config/02/config.yml
rename to examples/091/config/01/config.yml
diff --git a/examples/112/config/04/config.yml b/examples/091/config/02/config.yml
similarity index 79%
rename from examples/112/config/04/config.yml
rename to examples/091/config/02/config.yml
index 8ceca7b..6615aaf 100644
--- a/examples/112/config/04/config.yml
+++ b/examples/091/config/02/config.yml
@@ -4,4 +4,4 @@ manual:
http_proxy:
address: http.proxy.net
socks_proxy:
- version: v4
+ adress: socks.proxy.net
diff --git a/examples/091/structural_files/firefox/20-manual.yml b/examples/091/structural_files/firefox/20-manual.yml
new file mode 100644
index 0000000..3735fdb
--- /dev/null
+++ b/examples/091/structural_files/firefox/20-manual.yml
@@ -0,0 +1,50 @@
+%YAML 1.2
+---
+version: 1.1
+
+manual:
+
+ use_for_https: true # Also use this proxy for HTTPS
+
+ https_proxy:
+ description: HTTPS Proxy
+ type: proxy
+ hidden:
+ variable: _.use_for_https
+
+ address:
+ redefine: true
+ description: HTTPS proxy address
+
+ port:
+ redefine: true
+ description: HTTPS proxy port
+
+ socks_proxy:
+ description: SOCKS Proxy
+ type: proxy
+
+ address:
+ redefine: true
+ description: SOCKS proxy address
+ default: null
+ mandatory: false
+
+ port:
+ redefine: true
+ description: SOCKS proxy port
+ default: 1080
+ disabled:
+ variable: _.address
+ when: null
+
+ version:
+ description: SOCKS host version used by proxy
+ choices:
+ - v4
+ - v5
+ default: v5
+ disabled:
+ variable: _.address
+ when: null
+...
diff --git a/examples/100/README.md b/examples/100/README.md
index 1266a43..c17fb19 100644
--- a/examples/100/README.md
+++ b/examples/100/README.md
@@ -1 +1 @@
-A conditional disabled variable with type domainname and parameters
+A conditional disabled variable with type web_address
diff --git a/examples/090/TITLE.md b/examples/100/SUBTITLE.md
similarity index 100%
rename from examples/090/TITLE.md
rename to examples/100/SUBTITLE.md
diff --git a/examples/100/TITLE.md b/examples/100/TITLE.md
index a6d8a05..de7daef 100644
--- a/examples/100/TITLE.md
+++ b/examples/100/TITLE.md
@@ -1 +1 @@
-A full documented variable with multiple values and not mandatory
+Automatic proxy configuration URL
diff --git a/examples/100/URL b/examples/100/URL
new file mode 100644
index 0000000..37b6487
--- /dev/null
+++ b/examples/100/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/webaddress.html
diff --git a/examples/100/config/01/config.yml b/examples/100/config/01/config.yml
index ed97d53..1edbe91 100644
--- a/examples/100/config/01/config.yml
+++ b/examples/100/config/01/config.yml
@@ -1 +1,2 @@
---
+auto: https://auto.proxy.net/wpad.dat
diff --git a/examples/100/config/02/config.yml b/examples/100/config/02/config.yml
index 54956ea..26df130 100644
--- a/examples/100/config/02/config.yml
+++ b/examples/100/config/02/config.yml
@@ -1,4 +1,2 @@
---
proxy_mode: Automatic proxy configuration URL
-auto: https://auto.proxy.net/wpad.dat
-no_proxy: 192.168.1.0/24
diff --git a/examples/090/config/03/config.yml b/examples/100/config/03/config.yml
similarity index 100%
rename from examples/090/config/03/config.yml
rename to examples/100/config/03/config.yml
diff --git a/examples/100/firefox.png b/examples/100/firefox.png
index 16f5931..d53e513 100644
Binary files a/examples/100/firefox.png and b/examples/100/firefox.png differ
diff --git a/examples/100/firefox.xcf b/examples/100/firefox.xcf
index 5cc54d7..ca1cf9b 100644
Binary files a/examples/100/firefox.xcf and b/examples/100/firefox.xcf differ
diff --git a/examples/090/structural_files/firefox/30-auto.yml b/examples/100/structural_files/firefox/30-auto.yml
similarity index 100%
rename from examples/090/structural_files/firefox/30-auto.yml
rename to examples/100/structural_files/firefox/30-auto.yml
diff --git a/examples/101/README.md b/examples/101/README.md
deleted file mode 100644
index 130d225..0000000
--- a/examples/101/README.md
+++ /dev/null
@@ -1 +0,0 @@
-A variable with multiple value
diff --git a/examples/101/config/02/config.yml b/examples/101/config/02/config.yml
deleted file mode 100644
index ccba4c0..0000000
--- a/examples/101/config/02/config.yml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-proxy_mode: Automatic proxy configuration URL
-auto: https://auto.proxy.net/wpad.dat
-no_proxy:
- - example.net
- - 192.168.1.0/24
diff --git a/examples/101/structural_files/firefox/40-no_proxy.yml b/examples/101/structural_files/firefox/40-no_proxy.yml
deleted file mode 100644
index b5f4c74..0000000
--- a/examples/101/structural_files/firefox/40-no_proxy.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-%YAML 1.2
----
-version: 1.1
-
-no_proxy:
- description: Address for which proxy will be desactivated
- type: domainname
- params:
- allow_ip: true
- allow_cidr_network: true
- allow_without_dot: true
- allow_startswith_dot: true
- multi: true
- disabled:
- variable: _.proxy_mode
- when: No proxy
-...
diff --git a/examples/102/README.md b/examples/102/README.md
deleted file mode 100644
index d83ef1b..0000000
--- a/examples/102/README.md
+++ /dev/null
@@ -1 +0,0 @@
-A non mandatory variable
diff --git a/examples/102/config/02/config.yml b/examples/102/config/02/config.yml
deleted file mode 100644
index ccba4c0..0000000
--- a/examples/102/config/02/config.yml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-proxy_mode: Automatic proxy configuration URL
-auto: https://auto.proxy.net/wpad.dat
-no_proxy:
- - example.net
- - 192.168.1.0/24
diff --git a/examples/102/config/03/config.yml b/examples/102/config/03/config.yml
deleted file mode 100644
index 307e175..0000000
--- a/examples/102/config/03/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
----
-proxy_mode: Automatic proxy configuration URL
-auto: https://auto.proxy.net/wpad.dat
diff --git a/examples/103/README.md b/examples/103/README.md
deleted file mode 100644
index ad6b7fb..0000000
--- a/examples/103/README.md
+++ /dev/null
@@ -1 +0,0 @@
-Examples
diff --git a/examples/103/config/02/config.yml b/examples/103/config/02/config.yml
deleted file mode 100644
index ccba4c0..0000000
--- a/examples/103/config/02/config.yml
+++ /dev/null
@@ -1,6 +0,0 @@
----
-proxy_mode: Automatic proxy configuration URL
-auto: https://auto.proxy.net/wpad.dat
-no_proxy:
- - example.net
- - 192.168.1.0/24
diff --git a/examples/103/config/03/config.yml b/examples/103/config/03/config.yml
deleted file mode 100644
index 307e175..0000000
--- a/examples/103/config/03/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
----
-proxy_mode: Automatic proxy configuration URL
-auto: https://auto.proxy.net/wpad.dat
diff --git a/examples/104/config/02/config.yml b/examples/104/config/02/config.yml
deleted file mode 100644
index 307e175..0000000
--- a/examples/104/config/02/config.yml
+++ /dev/null
@@ -1,3 +0,0 @@
----
-proxy_mode: Automatic proxy configuration URL
-auto: https://auto.proxy.net/wpad.dat
diff --git a/examples/110/README.md b/examples/110/README.md
index 553d9c0..f6a124f 100644
--- a/examples/110/README.md
+++ b/examples/110/README.md
@@ -1 +1 @@
-A conditional disabled boolean variable
+A conditional disabled non mandatory variable with type domainname and parameters
diff --git a/examples/110/SUBTITLE.md b/examples/110/SUBTITLE.md
new file mode 100644
index 0000000..01576d8
--- /dev/null
+++ b/examples/110/SUBTITLE.md
@@ -0,0 +1 @@
+Variable with multiple values
diff --git a/examples/110/TITLE.md b/examples/110/TITLE.md
index 247c9bc..90ad7d2 100644
--- a/examples/110/TITLE.md
+++ b/examples/110/TITLE.md
@@ -1 +1 @@
-Practice
+Address for which proxy will be desactivated
diff --git a/examples/110/URL b/examples/110/URL
new file mode 100644
index 0000000..aab19c8
--- /dev/null
+++ b/examples/110/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/multiple.html
diff --git a/examples/110/config/02/config.yml b/examples/110/config/02/config.yml
index 135d8b3..54956ea 100644
--- a/examples/110/config/02/config.yml
+++ b/examples/110/config/02/config.yml
@@ -1,5 +1,4 @@
---
-proxy_mode: Manual proxy configuration
-manual:
- http_proxy:
- address: http.proxy.net
+proxy_mode: Automatic proxy configuration URL
+auto: https://auto.proxy.net/wpad.dat
+no_proxy: 192.168.1.0/24
diff --git a/examples/110/firefox.png b/examples/110/firefox.png
index 34e6c08..16f5931 100644
Binary files a/examples/110/firefox.png and b/examples/110/firefox.png differ
diff --git a/examples/110/firefox.xcf b/examples/110/firefox.xcf
index ac54e0c..5cc54d7 100644
Binary files a/examples/110/firefox.xcf and b/examples/110/firefox.xcf differ
diff --git a/examples/100/structural_files/firefox/40-no_proxy.yml b/examples/110/structural_files/firefox/40-no_proxy.yml
similarity index 93%
rename from examples/100/structural_files/firefox/40-no_proxy.yml
rename to examples/110/structural_files/firefox/40-no_proxy.yml
index 85b7aab..5722623 100644
--- a/examples/100/structural_files/firefox/40-no_proxy.yml
+++ b/examples/110/structural_files/firefox/40-no_proxy.yml
@@ -10,6 +10,7 @@ no_proxy:
allow_cidr_network: true
allow_without_dot: true
allow_startswith_dot: true
+ mandatory: false
disabled:
variable: _.proxy_mode
when: No proxy
diff --git a/examples/111/README.md b/examples/111/README.md
index 4207bc8..c705557 100644
--- a/examples/111/README.md
+++ b/examples/111/README.md
@@ -1 +1 @@
-A boolean variable
+A variable with multiple values
diff --git a/examples/111/config/02/config.yml b/examples/111/config/02/config.yml
index 135d8b3..ccba4c0 100644
--- a/examples/111/config/02/config.yml
+++ b/examples/111/config/02/config.yml
@@ -1,5 +1,6 @@
---
-proxy_mode: Manual proxy configuration
-manual:
- http_proxy:
- address: http.proxy.net
+proxy_mode: Automatic proxy configuration URL
+auto: https://auto.proxy.net/wpad.dat
+no_proxy:
+ - example.net
+ - 192.168.1.0/24
diff --git a/examples/111/config/03/config.yml b/examples/111/config/03/config.yml
index d04e72c..307e175 100644
--- a/examples/111/config/03/config.yml
+++ b/examples/111/config/03/config.yml
@@ -1,6 +1,3 @@
---
-proxy_mode: Manual proxy configuration
-manual:
- http_proxy:
- address: http.proxy.net
-proxy_dns_socks5: true
+proxy_mode: Automatic proxy configuration URL
+auto: https://auto.proxy.net/wpad.dat
diff --git a/examples/102/structural_files/firefox/40-no_proxy.yml b/examples/111/structural_files/firefox/40-no_proxy.yml
similarity index 100%
rename from examples/102/structural_files/firefox/40-no_proxy.yml
rename to examples/111/structural_files/firefox/40-no_proxy.yml
diff --git a/examples/111/structural_files/firefox/55-proxy_dns_socks5.yml b/examples/111/structural_files/firefox/55-proxy_dns_socks5.yml
deleted file mode 100644
index a79c8ae..0000000
--- a/examples/111/structural_files/firefox/55-proxy_dns_socks5.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-%YAML 1.2
----
-version: 1.1
-
-proxy_dns_socks5: false # Use proxy DNS when using SOCKS v5
-...
diff --git a/examples/120/README.md b/examples/120/README.md
index 57c52de..ad6b7fb 100644
--- a/examples/120/README.md
+++ b/examples/120/README.md
@@ -1 +1 @@
-Disabled a variable when an other variable are disabled
+Examples
diff --git a/examples/120/SUBTITLE.md b/examples/120/SUBTITLE.md
new file mode 100644
index 0000000..2518dc5
--- /dev/null
+++ b/examples/120/SUBTITLE.md
@@ -0,0 +1 @@
+A full documented variable
diff --git a/examples/120/TITLE.md b/examples/120/TITLE.md
deleted file mode 100644
index f7c81d7..0000000
--- a/examples/120/TITLE.md
+++ /dev/null
@@ -1 +0,0 @@
-The Jinja propertyerror filter
diff --git a/examples/120/URL b/examples/120/URL
new file mode 100644
index 0000000..2b7e9aa
--- /dev/null
+++ b/examples/120/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/document.html
diff --git a/examples/120/config/02/config.yml b/examples/120/config/02/config.yml
index 135d8b3..ccba4c0 100644
--- a/examples/120/config/02/config.yml
+++ b/examples/120/config/02/config.yml
@@ -1,5 +1,6 @@
---
-proxy_mode: Manual proxy configuration
-manual:
- http_proxy:
- address: http.proxy.net
+proxy_mode: Automatic proxy configuration URL
+auto: https://auto.proxy.net/wpad.dat
+no_proxy:
+ - example.net
+ - 192.168.1.0/24
diff --git a/examples/120/config/03/config.yml b/examples/120/config/03/config.yml
index d04e72c..307e175 100644
--- a/examples/120/config/03/config.yml
+++ b/examples/120/config/03/config.yml
@@ -1,6 +1,3 @@
---
-proxy_mode: Manual proxy configuration
-manual:
- http_proxy:
- address: http.proxy.net
-proxy_dns_socks5: true
+proxy_mode: Automatic proxy configuration URL
+auto: https://auto.proxy.net/wpad.dat
diff --git a/examples/103/structural_files/firefox/40-no_proxy.yml b/examples/120/structural_files/firefox/40-no_proxy.yml
similarity index 100%
rename from examples/103/structural_files/firefox/40-no_proxy.yml
rename to examples/120/structural_files/firefox/40-no_proxy.yml
diff --git a/examples/104/README.md b/examples/121/README.md
similarity index 100%
rename from examples/104/README.md
rename to examples/121/README.md
diff --git a/examples/101/config/01/config.yml b/examples/121/config/01/config.yml
similarity index 100%
rename from examples/101/config/01/config.yml
rename to examples/121/config/01/config.yml
diff --git a/examples/101/config/03/config.yml b/examples/121/config/02/config.yml
similarity index 100%
rename from examples/101/config/03/config.yml
rename to examples/121/config/02/config.yml
diff --git a/examples/104/config/03/config.yml b/examples/121/config/03/config.yml
similarity index 100%
rename from examples/104/config/03/config.yml
rename to examples/121/config/03/config.yml
diff --git a/examples/104/structural_files/firefox/40-no_proxy.yml b/examples/121/structural_files/firefox/40-no_proxy.yml
similarity index 100%
rename from examples/104/structural_files/firefox/40-no_proxy.yml
rename to examples/121/structural_files/firefox/40-no_proxy.yml
diff --git a/examples/130/README.md b/examples/130/README.md
index c19e709..553d9c0 100644
--- a/examples/130/README.md
+++ b/examples/130/README.md
@@ -1 +1 @@
-A variable in avanced mode
+A conditional disabled boolean variable
diff --git a/examples/140/TITLE.md b/examples/130/SUBTITLE.md
similarity index 100%
rename from examples/140/TITLE.md
rename to examples/130/SUBTITLE.md
diff --git a/examples/130/TITLE.md b/examples/130/TITLE.md
index 6de1769..1776034 100644
--- a/examples/130/TITLE.md
+++ b/examples/130/TITLE.md
@@ -1 +1 @@
-Mode
+Use proxy DNS when using SOCKS v5
diff --git a/examples/130/URL b/examples/130/URL
new file mode 100644
index 0000000..204eb5a
--- /dev/null
+++ b/examples/130/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/practice1.html
diff --git a/examples/130/config/03/config.yml b/examples/130/config/03/config.yml
index d04e72c..135d8b3 100644
--- a/examples/130/config/03/config.yml
+++ b/examples/130/config/03/config.yml
@@ -3,4 +3,3 @@ proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
-proxy_dns_socks5: true
diff --git a/examples/130/firefox.png b/examples/130/firefox.png
new file mode 100644
index 0000000..34e6c08
Binary files /dev/null and b/examples/130/firefox.png differ
diff --git a/examples/090/firefox.xcf b/examples/130/firefox.xcf
similarity index 83%
rename from examples/090/firefox.xcf
rename to examples/130/firefox.xcf
index ca1cf9b..ac54e0c 100644
Binary files a/examples/090/firefox.xcf and b/examples/130/firefox.xcf differ
diff --git a/examples/110/structural_files/firefox/50-prompt_authentication.yml b/examples/130/structural_files/firefox/50-prompt_authentication.yml
similarity index 100%
rename from examples/110/structural_files/firefox/50-prompt_authentication.yml
rename to examples/130/structural_files/firefox/50-prompt_authentication.yml
diff --git a/examples/112/README.md b/examples/131/README.md
similarity index 100%
rename from examples/112/README.md
rename to examples/131/README.md
diff --git a/examples/102/config/01/config.yml b/examples/131/config/01/config.yml
similarity index 100%
rename from examples/102/config/01/config.yml
rename to examples/131/config/01/config.yml
diff --git a/examples/120/config/04/config.yml b/examples/131/config/02/config.yml
similarity index 75%
rename from examples/120/config/04/config.yml
rename to examples/131/config/02/config.yml
index 8ceca7b..135d8b3 100644
--- a/examples/120/config/04/config.yml
+++ b/examples/131/config/02/config.yml
@@ -3,5 +3,3 @@ proxy_mode: Manual proxy configuration
manual:
http_proxy:
address: http.proxy.net
- socks_proxy:
- version: v4
diff --git a/examples/110/config/03/config.yml b/examples/131/config/03/config.yml
similarity index 100%
rename from examples/110/config/03/config.yml
rename to examples/131/config/03/config.yml
diff --git a/examples/110/config/04/config.yml b/examples/131/config/04/config.yml
similarity index 100%
rename from examples/110/config/04/config.yml
rename to examples/131/config/04/config.yml
diff --git a/examples/112/structural_files/firefox/55-proxy_dns_socks5.yml b/examples/131/structural_files/firefox/55-proxy_dns_socks5.yml
similarity index 100%
rename from examples/112/structural_files/firefox/55-proxy_dns_socks5.yml
rename to examples/131/structural_files/firefox/55-proxy_dns_socks5.yml
diff --git a/examples/140/README.md b/examples/140/README.md
index 4207bc8..8243288 100644
--- a/examples/140/README.md
+++ b/examples/140/README.md
@@ -1 +1 @@
-A boolean variable
+Disabled a variable when an other variable is disabled
diff --git a/examples/140/SUBTITLE.md b/examples/140/SUBTITLE.md
new file mode 100644
index 0000000..656063d
--- /dev/null
+++ b/examples/140/SUBTITLE.md
@@ -0,0 +1 @@
+The Jinja propertyerror test
diff --git a/examples/140/URL b/examples/140/URL
new file mode 100644
index 0000000..ccc14c4
--- /dev/null
+++ b/examples/140/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/propertyerror.html
diff --git a/examples/140/config/02/config.yml b/examples/140/config/02/config.yml
new file mode 100644
index 0000000..135d8b3
--- /dev/null
+++ b/examples/140/config/02/config.yml
@@ -0,0 +1,5 @@
+---
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
diff --git a/examples/112/config/03/config.yml b/examples/140/config/03/config.yml
similarity index 100%
rename from examples/112/config/03/config.yml
rename to examples/140/config/03/config.yml
diff --git a/examples/111/config/04/config.yml b/examples/140/config/04/config.yml
similarity index 100%
rename from examples/111/config/04/config.yml
rename to examples/140/config/04/config.yml
diff --git a/examples/120/structural_files/firefox/55-proxy_dns_socks5.yml b/examples/140/structural_files/firefox/55-proxy_dns_socks5.yml
similarity index 72%
rename from examples/120/structural_files/firefox/55-proxy_dns_socks5.yml
rename to examples/140/structural_files/firefox/55-proxy_dns_socks5.yml
index 2dbe9d1..06954c6 100644
--- a/examples/120/structural_files/firefox/55-proxy_dns_socks5.yml
+++ b/examples/140/structural_files/firefox/55-proxy_dns_socks5.yml
@@ -10,6 +10,5 @@ proxy_dns_socks5:
{{ _.manual.socks_proxy.version is propertyerror 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"
+ if "_.manual.socks_proxy.version" is accessible and equals "v4"
...
diff --git a/examples/141/README.md b/examples/141/README.md
deleted file mode 100644
index 9215d09..0000000
--- a/examples/141/README.md
+++ /dev/null
@@ -1 +0,0 @@
-A choice variable
diff --git a/examples/150/README.md b/examples/150/README.md
index c11c818..c19e709 100644
--- a/examples/150/README.md
+++ b/examples/150/README.md
@@ -1 +1 @@
-A variable with custom validation
+A variable in avanced mode
diff --git a/examples/150/SUBTITLE.md b/examples/150/SUBTITLE.md
new file mode 100644
index 0000000..6de1769
--- /dev/null
+++ b/examples/150/SUBTITLE.md
@@ -0,0 +1 @@
+Mode
diff --git a/examples/150/TITLE.md b/examples/150/TITLE.md
deleted file mode 100644
index 11c2e41..0000000
--- a/examples/150/TITLE.md
+++ /dev/null
@@ -1 +0,0 @@
-Validators
diff --git a/examples/150/URL b/examples/150/URL
new file mode 100644
index 0000000..0d4c484
--- /dev/null
+++ b/examples/150/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/whatsnext.html
diff --git a/examples/150/config/02/config.yml b/examples/150/config/02/config.yml
index aee4796..135d8b3 100644
--- a/examples/150/config/02/config.yml
+++ b/examples/150/config/02/config.yml
@@ -1,3 +1,5 @@
---
-dns_over_https:
- enable_dns_over_https: true
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
diff --git a/examples/150/config/03/config.yml b/examples/150/config/03/config.yml
index 2497fc1..d04e72c 100644
--- a/examples/150/config/03/config.yml
+++ b/examples/150/config/03/config.yml
@@ -1,5 +1,6 @@
---
-dns_over_https:
- enable_dns_over_https: true
- provider: Custom
- custom_dns_url: http://dns.net
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
+proxy_dns_socks5: true
diff --git a/examples/150/config/04/config.yml b/examples/150/config/04/config.yml
index 7f28b0d..8ceca7b 100644
--- a/examples/150/config/04/config.yml
+++ b/examples/150/config/04/config.yml
@@ -1,5 +1,7 @@
---
-dns_over_https:
- enable_dns_over_https: true
- provider: Custom
- custom_dns_url: https://dns.net
+proxy_mode: Manual proxy configuration
+manual:
+ http_proxy:
+ address: http.proxy.net
+ socks_proxy:
+ version: v4
diff --git a/examples/160/structural_files/firefox/empty b/examples/150/config/mode
similarity index 100%
rename from examples/160/structural_files/firefox/empty
rename to examples/150/config/mode
diff --git a/examples/130/structural_files/firefox/55-proxy_dns_socks5.yml b/examples/150/structural_files/firefox/55-proxy_dns_socks5.yml
similarity index 73%
rename from examples/130/structural_files/firefox/55-proxy_dns_socks5.yml
rename to examples/150/structural_files/firefox/55-proxy_dns_socks5.yml
index 02d2823..525f483 100644
--- a/examples/130/structural_files/firefox/55-proxy_dns_socks5.yml
+++ b/examples/150/structural_files/firefox/55-proxy_dns_socks5.yml
@@ -11,6 +11,5 @@ proxy_dns_socks5:
{{ _.manual.socks_proxy.version is propertyerror 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"
+ if "_.manual.socks_proxy.version" is accessible and equals "v4"
...
diff --git a/examples/160/README.md b/examples/160/README.md
index 86ff802..4207bc8 100644
--- a/examples/160/README.md
+++ b/examples/160/README.md
@@ -1 +1 @@
-Namespace
+A boolean variable
diff --git a/examples/160/SUBTITLE.md b/examples/160/SUBTITLE.md
new file mode 100644
index 0000000..247c9bc
--- /dev/null
+++ b/examples/160/SUBTITLE.md
@@ -0,0 +1 @@
+Practice
diff --git a/examples/160/TITLE.md b/examples/160/TITLE.md
index 86ff802..fc1521c 100644
--- a/examples/160/TITLE.md
+++ b/examples/160/TITLE.md
@@ -1 +1 @@
-Namespace
+DNS over HTTPS
diff --git a/examples/160/URL b/examples/160/URL
new file mode 100644
index 0000000..f191b81
--- /dev/null
+++ b/examples/160/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/practice2.html
diff --git a/examples/160/config/01/config.yml b/examples/160/config/01/config.yml
index ef6a0af..ed97d53 100644
--- a/examples/160/config/01/config.yml
+++ b/examples/160/config/01/config.yml
@@ -1,4 +1 @@
---
-firefox:
- dns_over_https:
- enable_dns_over_https: true
diff --git a/examples/140/firefox.png b/examples/160/firefox.png
similarity index 100%
rename from examples/140/firefox.png
rename to examples/160/firefox.png
diff --git a/examples/140/firefox.xcf b/examples/160/firefox.xcf
similarity index 100%
rename from examples/140/firefox.xcf
rename to examples/160/firefox.xcf
diff --git a/examples/140/structural_files/firefox/60-dns_over_https.yml b/examples/160/structural_files/firefox/60-dns_over_https.yml
similarity index 100%
rename from examples/140/structural_files/firefox/60-dns_over_https.yml
rename to examples/160/structural_files/firefox/60-dns_over_https.yml
diff --git a/examples/161/README.md b/examples/161/README.md
index 7322403..9215d09 100644
--- a/examples/161/README.md
+++ b/examples/161/README.md
@@ -1 +1 @@
-New "FoxyProxy" namespace
+A choice variable
diff --git a/examples/141/config/02/config.yml b/examples/161/config/02/config.yml
similarity index 100%
rename from examples/141/config/02/config.yml
rename to examples/161/config/02/config.yml
diff --git a/examples/141/structural_files/firefox/60-dns_over_https.yml b/examples/161/structural_files/firefox/60-dns_over_https.yml
similarity index 100%
rename from examples/141/structural_files/firefox/60-dns_over_https.yml
rename to examples/161/structural_files/firefox/60-dns_over_https.yml
diff --git a/examples/161/structural_files/foxyproxy/00-foxyproxy.yml b/examples/161/structural_files/foxyproxy/00-foxyproxy.yml
deleted file mode 100644
index 94a82bd..0000000
--- a/examples/161/structural_files/foxyproxy/00-foxyproxy.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-%YAML 1.2
----
-version: 1.1
-...
diff --git a/examples/142/README.md b/examples/162/README.md
similarity index 100%
rename from examples/142/README.md
rename to examples/162/README.md
diff --git a/examples/103/config/01/config.yml b/examples/162/config/01/config.yml
similarity index 100%
rename from examples/103/config/01/config.yml
rename to examples/162/config/01/config.yml
diff --git a/examples/142/config/02/config.yml b/examples/162/config/02/config.yml
similarity index 100%
rename from examples/142/config/02/config.yml
rename to examples/162/config/02/config.yml
diff --git a/examples/142/config/03/config.yml b/examples/162/config/03/config.yml
similarity index 100%
rename from examples/142/config/03/config.yml
rename to examples/162/config/03/config.yml
diff --git a/examples/142/config/04/config.yml b/examples/162/config/04/config.yml
similarity index 100%
rename from examples/142/config/04/config.yml
rename to examples/162/config/04/config.yml
diff --git a/examples/142/structural_files/firefox/60-dns_over_https.yml b/examples/162/structural_files/firefox/60-dns_over_https.yml
similarity index 100%
rename from examples/142/structural_files/firefox/60-dns_over_https.yml
rename to examples/162/structural_files/firefox/60-dns_over_https.yml
diff --git a/examples/170/README.md b/examples/170/README.md
index d7f3a5f..c11c818 100644
--- a/examples/170/README.md
+++ b/examples/170/README.md
@@ -1 +1 @@
-A leadership family
+A variable with custom validation
diff --git a/examples/170/SUBTITLE.md b/examples/170/SUBTITLE.md
new file mode 100644
index 0000000..733b7cc
--- /dev/null
+++ b/examples/170/SUBTITLE.md
@@ -0,0 +1 @@
+Validating a variable's value
diff --git a/examples/170/TITLE.md b/examples/170/TITLE.md
deleted file mode 100644
index d7f3a5f..0000000
--- a/examples/170/TITLE.md
+++ /dev/null
@@ -1 +0,0 @@
-A leadership family
diff --git a/examples/170/URL b/examples/170/URL
new file mode 100644
index 0000000..2e88a49
--- /dev/null
+++ b/examples/170/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/validators.html
diff --git a/examples/170/config/02/config.yml b/examples/170/config/02/config.yml
index 22d9b3b..aee4796 100644
--- a/examples/170/config/02/config.yml
+++ b/examples/170/config/02/config.yml
@@ -1,5 +1,3 @@
---
-foxyproxy:
- proxies:
- - title: My company
- color: '#66cc66'
+dns_over_https:
+ enable_dns_over_https: true
diff --git a/examples/170/config/03/config.yml b/examples/170/config/03/config.yml
new file mode 100644
index 0000000..2497fc1
--- /dev/null
+++ b/examples/170/config/03/config.yml
@@ -0,0 +1,5 @@
+---
+dns_over_https:
+ enable_dns_over_https: true
+ provider: Custom
+ custom_dns_url: http://dns.net
diff --git a/examples/170/config/04/config.yml b/examples/170/config/04/config.yml
new file mode 100644
index 0000000..7f28b0d
--- /dev/null
+++ b/examples/170/config/04/config.yml
@@ -0,0 +1,5 @@
+---
+dns_over_https:
+ enable_dns_over_https: true
+ provider: Custom
+ custom_dns_url: https://dns.net
diff --git a/examples/150/structural_files/firefox/60-dns_over_https.yml b/examples/170/structural_files/firefox/60-dns_over_https.yml
similarity index 100%
rename from examples/150/structural_files/firefox/60-dns_over_https.yml
rename to examples/170/structural_files/firefox/60-dns_over_https.yml
diff --git a/examples/170/structural_files/foxyproxy/00-foxyproxy.yml b/examples/170/structural_files/foxyproxy/00-foxyproxy.yml
deleted file mode 100644
index c4586ff..0000000
--- a/examples/170/structural_files/foxyproxy/00-foxyproxy.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-%YAML 1.2
----
-version: 1.1
-
-proxies:
- description: Proxy configuration
- type: leadership
-
- title:
- description: Title or Description
- mandatory: false
-
- color: # Color
-...
diff --git a/examples/180/README.md b/examples/180/README.md
index 45af1a8..86ff802 100644
--- a/examples/180/README.md
+++ b/examples/180/README.md
@@ -1 +1 @@
-Regexp type
+Namespace
diff --git a/examples/180/SUBTITLE.md b/examples/180/SUBTITLE.md
new file mode 100644
index 0000000..86ff802
--- /dev/null
+++ b/examples/180/SUBTITLE.md
@@ -0,0 +1 @@
+Namespace
diff --git a/examples/180/TITLE.md b/examples/180/TITLE.md
index a066682..15c9e70 100644
--- a/examples/180/TITLE.md
+++ b/examples/180/TITLE.md
@@ -1 +1 @@
-Regexp type with calculation
+Proxy configuration
diff --git a/examples/180/URL b/examples/180/URL
new file mode 100644
index 0000000..d1bcbaf
--- /dev/null
+++ b/examples/180/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/namespace.html
diff --git a/examples/180/config/01/config.yml b/examples/180/config/01/config.yml
index ed97d53..ef6a0af 100644
--- a/examples/180/config/01/config.yml
+++ b/examples/180/config/01/config.yml
@@ -1 +1,4 @@
---
+firefox:
+ dns_over_https:
+ enable_dns_over_https: true
diff --git a/examples/180/namespace b/examples/180/namespace
new file mode 100644
index 0000000..e69de29
diff --git a/examples/180/structural_files/NODISPLAY b/examples/180/structural_files/NODISPLAY
new file mode 100644
index 0000000..e69de29
diff --git a/examples/180/structural_files/firefox/empty b/examples/180/structural_files/firefox/empty
new file mode 100644
index 0000000..e69de29
diff --git a/examples/181/README.md b/examples/181/README.md
index 269bc71..7322403 100644
--- a/examples/181/README.md
+++ b/examples/181/README.md
@@ -1 +1 @@
-Calculate a random color
+New "FoxyProxy" namespace
diff --git a/examples/181/structural_files/foxyproxy/00-foxyproxy.yml b/examples/181/structural_files/foxyproxy/00-foxyproxy.yml
index 90b269d..94a82bd 100644
--- a/examples/181/structural_files/foxyproxy/00-foxyproxy.yml
+++ b/examples/181/structural_files/foxyproxy/00-foxyproxy.yml
@@ -1,20 +1,4 @@
%YAML 1.2
---
version: 1.1
-
-proxies:
- description: Proxy configuration
- type: leadership
-
- title:
- description: Title or Description
- mandatory: false
-
- color:
- description: Color
- regexp: ^#(?:[0-9a-f]{3}){1,2}$
- default:
- jinja: >-
- #{%- for i in range(6) -%}{{- '0123456789abcdef' | random -}}{%- endfor -%}
- description: random color value
...
diff --git a/examples/190/README.md b/examples/190/README.md
index 06207a2..85e1b88 100644
--- a/examples/190/README.md
+++ b/examples/190/README.md
@@ -1 +1 @@
-A variable name that conflict with a known the variable's attribute "type"
+A family with sequence type
diff --git a/examples/190/SUBTITLE.md b/examples/190/SUBTITLE.md
new file mode 100644
index 0000000..8d7acce
--- /dev/null
+++ b/examples/190/SUBTITLE.md
@@ -0,0 +1 @@
+Homogeneous elements sequence
diff --git a/examples/190/TITLE.md b/examples/190/TITLE.md
deleted file mode 100644
index 66acfab..0000000
--- a/examples/190/TITLE.md
+++ /dev/null
@@ -1 +0,0 @@
-A variable name with a known variable's attribute
diff --git a/examples/190/URL b/examples/190/URL
new file mode 100644
index 0000000..b378a1f
--- /dev/null
+++ b/examples/190/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/sequence.html
diff --git a/examples/190/config/02/config.yml b/examples/190/config/02/config.yml
index 0780700..22d9b3b 100644
--- a/examples/190/config/02/config.yml
+++ b/examples/190/config/02/config.yml
@@ -2,5 +2,4 @@
foxyproxy:
proxies:
- title: My company
- type: HTTP
color: '#66cc66'
diff --git a/examples/190/config/03/config.yml b/examples/190/config/03/config.yml
index 68cc867..0d0d568 100644
--- a/examples/190/config/03/config.yml
+++ b/examples/190/config/03/config.yml
@@ -1,17 +1,9 @@
---
-firefox:
- proxy_mode: Manual proxy configuration
- manual:
- http_proxy:
- address: http.proxy.net
foxyproxy:
proxies:
- title: My company
color: '#66cc66'
- type: HTTP
- title: An other company
color: '#cc66cc'
- type: SOCKS5
- title: WPAD
color: '#1166cc'
- type: WPAD
diff --git a/examples/170/foxyproxy.png b/examples/190/foxyproxy.png
similarity index 100%
rename from examples/170/foxyproxy.png
rename to examples/190/foxyproxy.png
diff --git a/examples/190/structural_files/foxyproxy/00-foxyproxy.yml b/examples/190/structural_files/foxyproxy/00-foxyproxy.yml
index 64e11cf..e6de3d4 100644
--- a/examples/190/structural_files/foxyproxy/00-foxyproxy.yml
+++ b/examples/190/structural_files/foxyproxy/00-foxyproxy.yml
@@ -4,31 +4,11 @@ version: 1.1
proxies:
description: Proxy configuration
- _type: leadership
+ type: sequence
title:
description: Title or Description
mandatory: false
- type:
- description: Proxy Type
- choices:
- - HTTP
- - HTTPS/SSL
- - SOCKS4
- - SOCKS5
- - PAC URL
- - WPAD
- - System (use system settings)
- - Direct (no proxy)
- default: Direct (no proxy)
-
- color:
- description: Color
- regexp: ^#(?:[0-9a-f]{3}){1,2}$
- default:
- jinja: >-
- #{%- for i in range(6) -%}{{- '0123456789abcdef' | random -}}{%- endfor -%}
- description: random color value
- auto_save: true
+ color: # Color
...
diff --git a/examples/200/README.md b/examples/200/README.md
index 029f71d..45af1a8 100644
--- a/examples/200/README.md
+++ b/examples/200/README.md
@@ -1 +1 @@
-Variable calculation with propertyerror
+Regexp type
diff --git a/examples/200/SUBTITLE.md b/examples/200/SUBTITLE.md
new file mode 100644
index 0000000..a066682
--- /dev/null
+++ b/examples/200/SUBTITLE.md
@@ -0,0 +1 @@
+Regexp type with calculation
diff --git a/examples/200/URL b/examples/200/URL
new file mode 100644
index 0000000..0d4c484
--- /dev/null
+++ b/examples/200/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/whatsnext.html
diff --git a/examples/200/config/02/config.yml b/examples/200/config/02/config.yml
index 9466792..22d9b3b 100644
--- a/examples/200/config/02/config.yml
+++ b/examples/200/config/02/config.yml
@@ -2,7 +2,4 @@
foxyproxy:
proxies:
- title: My company
- type: HTTP
color: '#66cc66'
- address: proxy.company.net
- port: 8080
diff --git a/examples/200/structural_files/foxyproxy/00-foxyproxy.yml b/examples/200/structural_files/foxyproxy/00-foxyproxy.yml
index 30b3c1e..b6ec886 100644
--- a/examples/200/structural_files/foxyproxy/00-foxyproxy.yml
+++ b/examples/200/structural_files/foxyproxy/00-foxyproxy.yml
@@ -4,86 +4,13 @@ version: 1.1
proxies:
description: Proxy configuration
- _type: leadership
+ type: sequence
title:
description: Title or Description
mandatory: false
- type:
- description: Proxy Type
- choices:
- - HTTP
- - HTTPS/SSL
- - SOCKS4
- - SOCKS5
- - PAC URL
- - WPAD
- - System (use system settings)
- - Direct (no proxy)
- default: Direct (no proxy)
-
color:
description: Color
regexp: ^#(?:[0-9a-f]{3}){1,2}$
- default:
- jinja: >-
- #{%- for i in range(6) -%}{{- '0123456789abcdef' | random -}}{%- 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:
- description: copy HTTP address if proxy is not "Manual"
- variable: firefox.manual.http_proxy.address
- propertyerror: false
- 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:
- description: copy HTTP port if proxy is not "Manual"
- variable: firefox.manual.http_proxy.port
- propertyerror: false
- 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:
- description: copy HTTP address if proxy is "Auto"
- variable: firefox.auto
- propertyerror: false
- disabled:
- jinja: |-
- {{ _.type not in ['PAC URL', 'WPAD'] }}
- return_type: boolean
- description: |-
- if type is not in:
- - PAC URL
- - WPAD
...
diff --git a/examples/201/README.md b/examples/201/README.md
new file mode 100644
index 0000000..269bc71
--- /dev/null
+++ b/examples/201/README.md
@@ -0,0 +1 @@
+Calculate a random color
diff --git a/examples/104/config/01/config.yml b/examples/201/config/01/config.yml
similarity index 100%
rename from examples/104/config/01/config.yml
rename to examples/201/config/01/config.yml
diff --git a/examples/181/config/02/config.yml b/examples/201/config/02/config.yml
similarity index 100%
rename from examples/181/config/02/config.yml
rename to examples/201/config/02/config.yml
diff --git a/examples/181/config/03/config.yml b/examples/201/config/03/config.yml
similarity index 100%
rename from examples/181/config/03/config.yml
rename to examples/201/config/03/config.yml
diff --git a/examples/180/structural_files/foxyproxy/00-foxyproxy.yml b/examples/201/structural_files/foxyproxy/00-foxyproxy.yml
similarity index 56%
rename from examples/180/structural_files/foxyproxy/00-foxyproxy.yml
rename to examples/201/structural_files/foxyproxy/00-foxyproxy.yml
index 524ba23..fcdb540 100644
--- a/examples/180/structural_files/foxyproxy/00-foxyproxy.yml
+++ b/examples/201/structural_files/foxyproxy/00-foxyproxy.yml
@@ -4,7 +4,7 @@ version: 1.1
proxies:
description: Proxy configuration
- type: leadership
+ type: sequence
title:
description: Title or Description
@@ -13,4 +13,8 @@ proxies:
color:
description: Color
regexp: ^#(?:[0-9a-f]{3}){1,2}$
+ default:
+ jinja: >-
+ #{%- for i in range(6) -%}{{- '0123456789abcdef' | random -}}{%- endfor -%}
+ description: random color value
...
diff --git a/examples/182/README.md b/examples/202/README.md
similarity index 100%
rename from examples/182/README.md
rename to examples/202/README.md
diff --git a/examples/112/config/01/config.yml b/examples/202/config/01/config.yml
similarity index 100%
rename from examples/112/config/01/config.yml
rename to examples/202/config/01/config.yml
diff --git a/examples/182/config/02/config.yml b/examples/202/config/02/config.yml
similarity index 100%
rename from examples/182/config/02/config.yml
rename to examples/202/config/02/config.yml
diff --git a/examples/182/structural_files/foxyproxy/00-foxyproxy.yml b/examples/202/structural_files/foxyproxy/00-foxyproxy.yml
similarity index 95%
rename from examples/182/structural_files/foxyproxy/00-foxyproxy.yml
rename to examples/202/structural_files/foxyproxy/00-foxyproxy.yml
index 0e795a0..fe344e9 100644
--- a/examples/182/structural_files/foxyproxy/00-foxyproxy.yml
+++ b/examples/202/structural_files/foxyproxy/00-foxyproxy.yml
@@ -4,7 +4,7 @@ version: 1.1
proxies:
description: Proxy configuration
- type: leadership
+ type: sequence
title:
description: Title or Description
diff --git a/examples/210/README.md b/examples/210/README.md
index 42210e6..2d6944f 100644
--- a/examples/210/README.md
+++ b/examples/210/README.md
@@ -1 +1 @@
-Username is mandatory if a password is set
+Name and parameter conflict
diff --git a/examples/210/SUBTITLE.md b/examples/210/SUBTITLE.md
new file mode 100644
index 0000000..2d6944f
--- /dev/null
+++ b/examples/210/SUBTITLE.md
@@ -0,0 +1 @@
+Name and parameter conflict
diff --git a/examples/210/URL b/examples/210/URL
new file mode 100644
index 0000000..fc66377
--- /dev/null
+++ b/examples/210/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/underscore_parameter.html
diff --git a/examples/210/config/02/config.yml b/examples/210/config/02/config.yml
index 0e0d4b3..0780700 100644
--- a/examples/210/config/02/config.yml
+++ b/examples/210/config/02/config.yml
@@ -4,11 +4,3 @@ foxyproxy:
- title: My company
type: HTTP
color: '#66cc66'
- address: proxy.company.net
- port: 8080
- username: one_user
- password: P4ssW0rD
- - title: An other company
- type: HTTP
- address: proxy.company.net
- port: 8080
diff --git a/examples/210/config/03/config.yml b/examples/210/config/03/config.yml
index 48b8f49..68cc867 100644
--- a/examples/210/config/03/config.yml
+++ b/examples/210/config/03/config.yml
@@ -1,13 +1,17 @@
---
+firefox:
+ proxy_mode: Manual proxy configuration
+ manual:
+ http_proxy:
+ address: http.proxy.net
foxyproxy:
proxies:
- title: My company
- type: HTTP
color: '#66cc66'
- address: proxy.company.net
- port: 8080
- password: P4ssW0rD
- - title: An other company
type: HTTP
- address: proxy.company.net
- port: 8080
+ - title: An other company
+ color: '#cc66cc'
+ type: SOCKS5
+ - title: WPAD
+ color: '#1166cc'
+ type: WPAD
diff --git a/examples/210/structural_files/foxyproxy/00-foxyproxy.yml b/examples/210/structural_files/foxyproxy/00-foxyproxy.yml
index 14f63f3..ac2a466 100644
--- a/examples/210/structural_files/foxyproxy/00-foxyproxy.yml
+++ b/examples/210/structural_files/foxyproxy/00-foxyproxy.yml
@@ -4,7 +4,7 @@ version: 1.1
proxies:
description: Proxy configuration
- _type: leadership
+ _type: sequence
title:
description: Title or Description
@@ -31,97 +31,4 @@ proxies:
#{%- for i in range(6) -%}{{- '0123456789abcdef' | random -}}{%- 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:
- description: copy HTTP address if proxy is not "Manual"
- variable: firefox.manual.http_proxy.address
- propertyerror: false
- 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:
- description: copy HTTP port if proxy is not "Manual"
- variable: firefox.manual.http_proxy.port
- propertyerror: false
- disabled:
- jinja: |-
- {{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
- return_type: boolean
- description: |-
- if type not in:
- - HTTP
- - HTTPS/SSL
- - SOCKS4
- - SOCKS5
-
- username:
- description: Username
- type: unix_user
- mandatory:
- jinja: |-
- {% if _.password is not propertyerror and _.password %}
- true
- {% else %}
- false
- {% endif %}
- return_type: boolean
- description: if a password is set
- disabled:
- jinja: |-
- {{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
- return_type: boolean
- description: |-
- if type not in:
- - HTTP
- - HTTPS/SSL
- - SOCKS4
- - SOCKS5
-
- password:
- description: Password
- type: secret
- mandatory: false
- 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:
- description: copy HTTP address if proxy is "Auto"
- variable: firefox.auto
- propertyerror: false
- disabled:
- jinja: |-
- {{ _.type not in ['PAC URL', 'WPAD'] }}
- return_type: boolean
- description: |-
- if type is not in:
- - PAC URL
- - WPAD
...
diff --git a/examples/211/config/01/config.yml b/examples/211/config/01/config.yml
deleted file mode 100644
index ed97d53..0000000
--- a/examples/211/config/01/config.yml
+++ /dev/null
@@ -1 +0,0 @@
----
diff --git a/examples/200/TITLE.md b/examples/220/README.md
similarity index 100%
rename from examples/200/TITLE.md
rename to examples/220/README.md
diff --git a/examples/220/SUBTITLE.md b/examples/220/SUBTITLE.md
new file mode 100644
index 0000000..029f71d
--- /dev/null
+++ b/examples/220/SUBTITLE.md
@@ -0,0 +1 @@
+Variable calculation with propertyerror
diff --git a/examples/220/URL b/examples/220/URL
new file mode 100644
index 0000000..1e85d2b
--- /dev/null
+++ b/examples/220/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/variable_propertyerror.html
diff --git a/examples/141/config/01/config.yml b/examples/220/config/01/config.yml
similarity index 100%
rename from examples/141/config/01/config.yml
rename to examples/220/config/01/config.yml
diff --git a/examples/180/config/02/config.yml b/examples/220/config/02/config.yml
similarity index 81%
rename from examples/180/config/02/config.yml
rename to examples/220/config/02/config.yml
index 22d9b3b..0780700 100644
--- a/examples/180/config/02/config.yml
+++ b/examples/220/config/02/config.yml
@@ -2,4 +2,5 @@
foxyproxy:
proxies:
- title: My company
+ type: HTTP
color: '#66cc66'
diff --git a/examples/220/config/02/read_write b/examples/220/config/02/read_write
new file mode 100644
index 0000000..e69de29
diff --git a/examples/220/config/03/config.yml b/examples/220/config/03/config.yml
new file mode 100644
index 0000000..9466792
--- /dev/null
+++ b/examples/220/config/03/config.yml
@@ -0,0 +1,8 @@
+---
+foxyproxy:
+ proxies:
+ - title: My company
+ type: HTTP
+ color: '#66cc66'
+ address: proxy.company.net
+ port: 8080
diff --git a/examples/200/config/03/config.yml b/examples/220/config/04/config.yml
similarity index 100%
rename from examples/200/config/03/config.yml
rename to examples/220/config/04/config.yml
diff --git a/examples/220/structural_files/foxyproxy/00-foxyproxy.yml b/examples/220/structural_files/foxyproxy/00-foxyproxy.yml
new file mode 100644
index 0000000..12201fb
--- /dev/null
+++ b/examples/220/structural_files/foxyproxy/00-foxyproxy.yml
@@ -0,0 +1,89 @@
+%YAML 1.2
+---
+version: 1.1
+
+proxies:
+ description: Proxy configuration
+ _type: sequence
+
+ title:
+ description: Title or Description
+ mandatory: false
+
+ type:
+ description: Proxy Type
+ choices:
+ - HTTP
+ - HTTPS/SSL
+ - SOCKS4
+ - SOCKS5
+ - PAC URL
+ - WPAD
+ - System (use system settings)
+ - Direct (no proxy)
+ default: Direct (no proxy)
+
+ color:
+ description: Color
+ regexp: ^#(?:[0-9a-f]{3}){1,2}$
+ default:
+ jinja: >-
+ #{%- for i in range(6) -%}{{- '0123456789abcdef' | random -}}{%- 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:
+ description: copy HTTP address if proxy is not "Manual"
+ variable: firefox.manual.http_proxy.address
+ propertyerror: false
+ 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:
+ description: copy HTTP port if proxy is not "Manual"
+ variable: firefox.manual.http_proxy.port
+ propertyerror: false
+ 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:
+ description: copy HTTP address if proxy is "Auto"
+ variable: firefox.auto
+ propertyerror: false
+ disabled:
+ jinja: |-
+ {{ _.type not in ['PAC URL', 'WPAD'] }}
+ return_type: boolean
+ description: |-
+ if type is not in:
+ - PAC URL
+ - WPAD
+...
diff --git a/examples/230/README.md b/examples/230/README.md
new file mode 100644
index 0000000..42210e6
--- /dev/null
+++ b/examples/230/README.md
@@ -0,0 +1 @@
+Username is mandatory if a password is set
diff --git a/examples/210/TITLE.md b/examples/230/SUBTITLE.md
similarity index 100%
rename from examples/210/TITLE.md
rename to examples/230/SUBTITLE.md
diff --git a/examples/230/URL b/examples/230/URL
new file mode 100644
index 0000000..0d4c484
--- /dev/null
+++ b/examples/230/URL
@@ -0,0 +1 @@
+https://pedago.gwenaelremond.fr/bribes/rougail/tutorial/whatsnext.html
diff --git a/examples/142/config/01/config.yml b/examples/230/config/01/config.yml
similarity index 100%
rename from examples/142/config/01/config.yml
rename to examples/230/config/01/config.yml
diff --git a/examples/211/config/02/config.yml b/examples/230/config/02/config.yml
similarity index 100%
rename from examples/211/config/02/config.yml
rename to examples/230/config/02/config.yml
diff --git a/examples/211/config/03/config.yml b/examples/230/config/03/config.yml
similarity index 100%
rename from examples/211/config/03/config.yml
rename to examples/230/config/03/config.yml
diff --git a/examples/230/structural_files/foxyproxy/00-foxyproxy.yml b/examples/230/structural_files/foxyproxy/00-foxyproxy.yml
new file mode 100644
index 0000000..0483b7f
--- /dev/null
+++ b/examples/230/structural_files/foxyproxy/00-foxyproxy.yml
@@ -0,0 +1,127 @@
+%YAML 1.2
+---
+version: 1.1
+
+proxies:
+ description: Proxy configuration
+ _type: sequence
+
+ title:
+ description: Title or Description
+ mandatory: false
+
+ type:
+ description: Proxy Type
+ choices:
+ - HTTP
+ - HTTPS/SSL
+ - SOCKS4
+ - SOCKS5
+ - PAC URL
+ - WPAD
+ - System (use system settings)
+ - Direct (no proxy)
+ default: Direct (no proxy)
+
+ color:
+ description: Color
+ regexp: ^#(?:[0-9a-f]{3}){1,2}$
+ default:
+ jinja: >-
+ #{%- for i in range(6) -%}{{- '0123456789abcdef' | random -}}{%- 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:
+ description: copy HTTP address if proxy is not "Manual"
+ variable: firefox.manual.http_proxy.address
+ propertyerror: false
+ 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:
+ description: copy HTTP port if proxy is not "Manual"
+ variable: firefox.manual.http_proxy.port
+ propertyerror: false
+ disabled:
+ jinja: |-
+ {{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
+ return_type: boolean
+ description: |-
+ if type not in:
+ - HTTP
+ - HTTPS/SSL
+ - SOCKS4
+ - SOCKS5
+
+ username:
+ description: Username
+ type: unix_user
+ mandatory:
+ jinja: |-
+ {% if _.password is not propertyerror and _.password %}
+ true
+ {% else %}
+ false
+ {% endif %}
+ return_type: boolean
+ description: if a password is set
+ disabled:
+ jinja: |-
+ {{ _.type not in ['HTTP', 'HTTPS/SSL', 'SOCKS4', 'SOCKS5'] }}
+ return_type: boolean
+ description: |-
+ if type not in:
+ - HTTP
+ - HTTPS/SSL
+ - SOCKS4
+ - SOCKS5
+
+ password:
+ description: Password
+ type: secret
+ mandatory: false
+ 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:
+ description: copy HTTP address if proxy is "Auto"
+ variable: firefox.auto
+ propertyerror: false
+ disabled:
+ jinja: |-
+ {{ _.type not in ['PAC URL', 'WPAD'] }}
+ return_type: boolean
+ description: |-
+ if type is not in:
+ - PAC URL
+ - WPAD
+...
diff --git a/examples/211/README.md b/examples/231/README.md
similarity index 100%
rename from examples/211/README.md
rename to examples/231/README.md
diff --git a/examples/182/config/01/config.yml b/examples/231/config/01/config.yml
similarity index 100%
rename from examples/182/config/01/config.yml
rename to examples/231/config/01/config.yml
diff --git a/examples/231/config/02/config.yml b/examples/231/config/02/config.yml
new file mode 100644
index 0000000..0e0d4b3
--- /dev/null
+++ b/examples/231/config/02/config.yml
@@ -0,0 +1,14 @@
+---
+foxyproxy:
+ proxies:
+ - title: My company
+ type: HTTP
+ color: '#66cc66'
+ address: proxy.company.net
+ port: 8080
+ username: one_user
+ password: P4ssW0rD
+ - title: An other company
+ type: HTTP
+ address: proxy.company.net
+ port: 8080
diff --git a/examples/231/config/03/config.yml b/examples/231/config/03/config.yml
new file mode 100644
index 0000000..48b8f49
--- /dev/null
+++ b/examples/231/config/03/config.yml
@@ -0,0 +1,13 @@
+---
+foxyproxy:
+ proxies:
+ - title: My company
+ type: HTTP
+ color: '#66cc66'
+ address: proxy.company.net
+ port: 8080
+ password: P4ssW0rD
+ - title: An other company
+ type: HTTP
+ address: proxy.company.net
+ port: 8080
diff --git a/examples/211/structural_files/foxyproxy/10-redefine.yml b/examples/231/structural_files/foxyproxy/10-redefine.yml
similarity index 100%
rename from examples/211/structural_files/foxyproxy/10-redefine.yml
rename to examples/231/structural_files/foxyproxy/10-redefine.yml