On Mon, Aug 30 2021, Johannes Schindelin via GitGitGadget wrote: > This comes in handy during Scalar upgrades, or when config settings were > messed up by mistake. > [...] > const char *key; > const char *value; > + int overwrite_on_reconfigure; If you make this a "keep_on_reconfigure", then ... > } config[] = { > - { "am.keepCR", "true" }, > - { "core.FSCache", "true" }, > - { "core.multiPackIndex", "true" }, > - { "core.preloadIndex", "true" }, > + /* Required */ > + { "am.keepCR", "true", 1 }, > + { "core.FSCache", "true", 1 }, > + { "core.multiPackIndex", "true", 1 }, > + { "core.preloadIndex", "true", 1 }, You won't need the churn/boilerplate of adding "1" to everything here, but can just change the initial patch to use designated initializers. That along with a throwaway macro like: #define SCALAR_CFG_TRUE(k) (.key = k, .value = "true") #define SCALAR_CFG_FALSE(k) (.key = k, .value = "false") Might (or might not) make this even easier to eyeball...