scribble.rs
scribble.rs copied to clipboard
Modularise the languages
So as per our discussion I'll leave this first comment for musings;
- Languages should have tests on them to make sure theyre in a format that can be read, especially if different wording is comma separated or something.
- Languages are imported at build time, so either test then or import "passed" language packs.
- The menu selector isn't a static list but lookups what is imported
- Separate list for names people/characters that can be included in every game regardless of language chosen.
Now eventually perhaps we can have another sub menu, like select English and then choose localisation, but thats another ticket (other examples are Norwegian with Bokmal + nynorsk)
Not sure how the testing would be managed, if we assume every language long term, that would get messy, in the short time might be best to have some kind of index file for scribble to query to know whats installed. Testing could be a simple "yeah this is a flat list" at the moment anyway.
I'm not a dev so after a week im still unsure what this would actually look like.
Guess first I'd want to solve the technical side for a multi-picker component: https://github.com/scribble-rs/multi-item-picker/tree/develop
This way you could for example chose "english animals" and "english sports" or so. Or even multiple different general language lists like "english" and "german". The same list could be bound to a specific backend that offers additional lists and even allow inputting URLs to wordlists that follow a specific format.
I started developing a web component in the past, but stopped working on it.
With this and a simple HTTP endpoint, this could easily be implemented.
The languages repository could also be a golang repository, which would allow importing them at build time afaik.
Maybe I am wrong here, but I think it would work via a go:embed
directive. I'll be trying that out soon.
Now eventually perhaps we can have another sub menu, like select English and then choose localisation, but thats another ticket (other examples are Norwegian with Bokmal + nynorsk)
I deffo don't want to do any translation or accepting of translated word.
Either way, everything has to stay as simple and easy to use as possible. This should not add additional complexity for the user. I'll have to do some mockups and maybe demos and user tests to see whether this is doable in a powerful and easy to understand way. I am not sure how easy "normal" users can understand such UI components.
I deffo don't want to do any translation or accepting of translated word.
Oh I mean long term, if a Norwegian came along to add a dictionary to this, they have two written languages so they'd absolutely want to be able to switch between the two, similar to English spellings but worse I guess. That's a long term issue and I agree with you about wanting to keep it simple. So from a UX point of view, I really have no idea, but that support will be important without that single list getting overwhelming.
Close in favour of #84