Skip to content

Make settings static, and plugins only provide a schema #188

Description

@foxnne

Per Mike on discord:

I would recommend making settings also static (VS Code does this).
Imo it would be better (and less work for devs) to just submit a JSON schema or something for their settings to generate the settings UI, rather than writing their own UI which will be inconsistent with everybody else's.

Being static again means for example you can deactivate a plugin and still edit its settings. Might be useful if, for example, a bad setting is causing the plugin to crash stuff, so you need to disable it to open fizzy and then edit the bad setting.

Settings needs a redesign, this was never really thought through and just quickly used for debug stuff largely to this point.

I think it makes sense that we either use JSON similar to VSCode or ZON, and have the editor render the settings with buttons/sliders etc on the left, and the raw JSON/ZON in the text editor on the right, with syntax highlighting and formatting etc, similar to how VSCode allows a GUI settings editor or a JSON directly?

We also spoke about having plugins be required to specify their registered hooks etc in a zon. I think this makes sense to be the same configuration zon and we move to plugins having a more standard zon file for plugins that specifies most information up front.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions