Should I allow non-Latin characters in filenames in a CLI application?
I'm currently designing a CLI application geared towards the more technical demographic of users that has a set of English subcommands, which (judging by other popular CLI applications such as git
) seems to be okay even for users that do not use English or Latin-based scripts (e.g. Japanese, Chinese, Hindi, Arabic, etc.)
The application allows the user to input short identifiers that turn into directories in the filesystem. Following typical programming convention, my knee-jerk reaction was to only allow /[A-Za-z0-9_-]+/
as the directory names.
However, I quickly realized that this might cut out users who simply do not understand latin scripts at all, and that perhaps I should be limiting more by spaces and whatnot. The problem is, these identifiers might also be used in URLs in the future, or even (perhaps) identifiers in scripts.
How much of a hinderance would limiting these identifiers to latin scripts be to such users? Do e.g. Japanese users create directories in Japanese in order to use them in scripts? Will I be causing more of a headache by allowing them?