It looks like you're new here. If you want to get involved, click one of these buttons!
Here follows a proposal about modifying CreationTemplate.ini and SettingsTemplate.ini in order to make them more editor-friendly.
AINVAR Document syntax proposal
; [SectionName] - no modifications
;
; KeyName[FreeKeyName|PostFixedKeyName|Enum] = [[ValueType(limit):Default|None] | [[ValueType(limit):Default|None] & [ValueType(limit):Default|None]]:
;
; KeyName attributes:
; FreeKeyName = KeyName is a place holder for a list of free key names
; PostFixedKeyName = KeyName is a place holder for a list of free key names that will have KeyName as postfix
; Enum = Value of an existing enum known or defined in place.
; Known enums are conveniently input keys (mouse/keyb/joy)
; Enums defined in place will follow *enum definition syntax*
;
; Value attributes:
; [[ValueType(limit|(min<max)):Default|None]
;
; ValueType = Int|UInt|Bool|Float|Vector|String
; (min & max can be applied, if present. the interval can be open (min<) = min to infinite (<max) = -infinite to max)
; Enum
; Template:TemplateType
; List:Type:... ; In this case the (limit) value is used to express the max list size
; FilePath:DynamicLibrary|Storage|Config|Image|Sound
; DirectoryPath
; Command
; ShaderExtension
;
; Default = type default value, if appliable
; None that by default the key is not defined
;
;
; Since a key may have multiple value rapresentations, we can give a way to document such alternatives
; KeyName = [[typedef1] | [typedef1]] ; means we can have valuedef1 type or typedef2
; KeyName = [[typedef1] | [[typedef1] &# [typedef3]] ; means we can have valuedef1 type or typedef2 and typedef3 separated by #
;
;
; Enum definition syntax
; [Enum:name{value1|value2|value3|...}]
;
; In addition, to make the document more readable, I propose a special section used to declare enums and avoid in-place definitions
; [@EnumDefs@]
; EnumNameA = value1|value2|value3|...
; EnumNameB = value1|value2|value3|...
Comments
As briefly discussed on gitter, I really like the endeavor.
Regarding the details though, I'm afraid I will likely not be able to check it out thoroughly before the end of the week, as it's a very busy week on my side. Sorry for the delay!
Hi @ainvar,
I read the document a few times, however I'm not sure I grasp all the details.
Would you have some examples of all the different types of entries proposed, maybe base on the content of the current template files?
Thanks!
Of course.
Here's a first modification of SettingsTemplate.ini contents
Sorry I had to truncate it.
Here's the continuation:
Sorry for the huge delay. I went into shipping mode with my last project until February, then I have to admit it completely went out of my mind. I'll get back to it shortly, sorry again about that.