12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
+
+
+
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
plugin handling goes hand in hand with configuration management.
However it requires a structured field to avoid bulky definitions, yet
support enough variation.
Usually `config:` contains multiple indented lines, each being a
<acronym title="JSON, but quotes optional">JSOL</acronym>-dictionary.
<table>
<tr>
<th><code>name:</code></th>
* The `name:` associates some variable/constant/expression to a setting.
* A few common `type:` names often cover 90% of configuration needs:
<td>associates some variable/constant/expression to a setting.</td>
</tr>
<tr>
<th><code>type:</code></th>
<td> A few common types may cover 90% of configuration needs.
<table>
<tr>
<th><code>bool</code>/<code>boolean</code></th>
* `bool`/`boolean` would render as checkbox often.
* `str`/`string` for plain textual content.
* `int`/`integer` verifies the value to be numeric.
* `select`/`combo` defining a predefined list of defaults.
* With `select: "aaa┃bbb┃ccc"` being the alternatives attribute for
combobox options.
* `description:` holds some elaboration on the key name.
* And `value:` just sets a default.
<td>would render as checkbox often.</td>
</tr>
<tr>
<th><code>str</code>/<code>string</code></th>
<td>for plain textual content.</td>
</tr>
<tr>
<th><code>int</code>/<code>integer</code></th>
<td>verifies the value to be numeric.</td>
</tr>
<tr>
<th><code>select</code>/<code>multi</code></th>
<td> defining a predefined list of defaults.</td>
</tr>`
</td>
</tr>
<tr>
<th><code>select:</code></tt>
<td>* With `select: "aaa┃bbb┃ccc"` being the alternatives attribute for
combobox options.</td>
</tr>
<tr>
<ht><code>description:</code></th>
<td>holds some elaboration on the key name.</td>
</tr>
<tr>
<th><code>value:</code></th>
<td>just sets a default</td>
</tr>
</table>
## Storage and key `name:`
Notably this scheme just defines a list of available options. It does **not**
prescribe if they're stored in an `.ini`, `.json`, `xml` or code file, or a database
perhaps.
|