16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
-
+
-
+
-
+
-
+
|
Usually `config:` contains multiple indented lines, each being a
<acronym title="JSON, but quotes optional">JSOL</acronym>-dictionary.
* The `name:` associates some variable/constant/expression to a setting.
* A few common `type:` names often cover 90% of configuration needs:
* `bool`/`boolean` would render as checkbox often.
* `bool`/`boolean` would render as checkbox often.
* `str`/`string` for plain textual content.
* `str`/`string` for plain textual content.
* `int`/`integer` verifies the value to be numeric.
* `int`/`integer` verifies the value to be numeric.
* `select`/`combo` defining a predefined list of defaults.
* `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.
|
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
-
-
-
+
+
+
+
+
+
|
So names can be somewhat free-form. I'd avoid including the `$` sigil
however, or spaces obviously. Mostly-alphunumeric and dotted keys are
certianly most versatile.
## select: type
The syntax for `select:` is preferrably `"alt|alt|alt"`, or with optional
title `"1=title|2=alternative|3=…"`. Though implementations may allow to use
`,` command and `|` dash. Or `:` like `=` again.
The syntax for `select:` is
* preferrably `"alt&alt&alt"`
* or with optional title `"1=title&2=alternative|3=…"`.
* Though implementations may allow to use `,` command and `|` dash.
* Or `:` like `=` again.
## Other fields and types
Other per-config attributes migh encompass `category:` and `class:` for
decoration or grouping. Or `arg:` and `param:` for defining commandline args
rather than global application settings.
|