Open ghost opened 10 years ago
if you really want DTD validation.
I don’t think SMC needs DTD validation, because it is, as you say, a closed system. Our XML is not given out to the public for consuming.
Vale, Quintus
UI-wise I suggest that in the editor there’s a combo box of available locales (= those locales we have Gettext translations for) next to the text entry field. The level designer then inputs his text, and if he wants to add a translation for another locale, he can simply chose that one from the combo box. The text field gets cleared, and he can start again.
Vale, Quintus
This is going to require a deep rework of the translation system, thus rather suited for 3.0.0 than for 2.x.
I'm not even sure, if that is required feature. One possibility is to keep the old text as fallback/default-en text and choose to add text to other available languages. XML-whise example: <property name="text" value="Herro" /> <property name="text-de" value="Grützi" /> Or even better, when more properties of one type are possible: <property name="text" value="Herro" /> <property name="text" lang="de" value="Grützi" /> Where lang="default" could be the implicit DTD value, if you really want DTD validation.
(Although I don't see a good reason for validation in a closed system like SMC; maybe only in debugging mode. Also it might have to do with the massive speeddown, as traversing nodes may impact performance, according to this: http://gameprogrammingpatterns.com/data-locality.html)