61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
-
-
-
+
+
+
+
+
+
-
-
+
+
+
+
-
|
* or with optional title `"1=title|2=alternative|3=…"`.
* Though implementations may allow to use `,` comma 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.
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.
Other types might be
Other types migt be `text` (lengthy textarea-style strings), `color` (color
picker), `file` (filedialog), `table`/`csv`/`dict` for supporting more complex
* `text` for lengthy textarea-style strings),
* `color` for a color picker,
* `file` bringing up a file selection dialog
* Or `table`/`csv`/`dict` for supporting more complex (Excel-style) setting lists.
setting lists.
## Regex tokenizer
You can get by with a somewhat simple regex extractor for this config
scheme. It's simply finding `{…}` pairs, then splitting key-value pairs,
and handling optional quoting.
|