As I already discussed, I do not feel that it is legitimate to impose any restrictions on user-generated filenames beyond the restrictions of his host filesystem. It is ordinarily the software developer's responsibility to accept any valid input on his host platform. While it is technically feasible to implement arbitrary name restrictions on files my software reads and writes (at least on the platform I develop with), such restrictions are arbitrary, highly abnormal, and would not meet users' expectations.
I understand the desire for maximal compatibility here; it's just I don't consider this to be an issue over which LDraw has any control.
If we limit the spec to discussion of LDraw's technical details, the following technical restrictions emerge:
Obviously, files in the official library cannot include any characters which are illegal on any target filesystem. That, however, is a restriction for the part tracker, not the LDraw spec.
Allen
I understand the desire for maximal compatibility here; it's just I don't consider this to be an issue over which LDraw has any control.
If we limit the spec to discussion of LDraw's technical details, the following technical restrictions emerge:
- Freestanding files unreferenced by any other LDraw file: no technical restrictions
- Files referenced by another file: name cannot begin with spaces or tabs.
Obviously, files in the official library cannot include any characters which are illegal on any target filesystem. That, however, is a restriction for the part tracker, not the LDraw spec.
Allen