60
61
62
63
64
65
66
67
68
|
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
+
+
+
+
+
+
+
+
|
# config:
# { arg: -D, name: debug, type: bool, description: enable debugging }
# { arg: -e, name: enable[], type: str*, description: add plugin }
It's basically just the extra <kbd>arg:</kbd> field which discerns such entries from standard options. And the <kbd>type:</kbd> may carry an optional quantifier (mapped to argparses' nargs= flag). Or the <kbd>name:</kbd> can indicate a list property with `[]` attached (maps to argparses' append instead of store). Not every argparse peculiarity is provided for though. And using a docopt section would probably be a better option anyway.
### common.json
Just a few implemntation notes:
* pluginconf.py handles initialization and parsing of channel/*.py files
* Whereas channel/pluginmanager2.py is the GUI and ST2 hook for managing them
* Plugins that are downloaded from the fossil repository are scanned using a server-side setup of http://fossil.include-once.org/streamtuner2/finfo?name=dev/fossil-json-plugin-repo.php
|