mirror of
https://github.com/Cian-H/dotfiles.git
synced 2025-12-26 20:51:56 +00:00
This change allows the dotfiles to work with chezmoi (e.g: on windows) and improves grepability with neovim/telescope
Notes
titleproperties are generated from input property names converting all capital letters to lowercase with space before them like:someImportantKey->some important keydescriptionproperties are generated from input property names converting all capital letters to lowercase with space before them and appended doc urls like:someImportantKey->some important key\nhttps://some/documentationtypeproperties are generated from input property valuesminimumproperties are generated for input properties containingwidth/height/sizeworddefaultproperties are generated for input properties not starting withmy/sample/examplewordsexampleproperties are generated for input properties starting withmy/sample/examplewords
Example
Input JSON:
{
"size": "normal",
"myInput": 1,
"width": 21,
"files": ["test.blend", "test.blend"]
}
Output JSON schema:
{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "config",
"description": "A config",
"type": "object",
"properties": {
"size": {
"title": "size",
"description": "size\nhttps://my-doc",
"type": "string",
"minimum": 0,
"default": "normal"
},
"myInput": {
"title": "my input",
"description": "my input\nhttps://my-doc",
"type": "number",
"examples": [
1
]
},
"width": {
"title": "width",
"description": "width\nhttps://my-doc",
"type": "number",
"minimum": 0,
"default": 21
},
"files": {
"title": "files",
"description": "files\nhttps://my-doc",
"type": "array",
"uniqueItems": true,
"items": {
"description": "A file\nhttps://my-doc",
"type": "string"
},
"default": [
"test.blend",
"test.blend"
]
}
}
}