-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Translation (German, French, Spanish, Italian...) #29
Comments
How should we go about it? I was thinking about using a compilation-time flag (something like |
In c land, folks usually use tools like "gettext" for internationalization. Overview of the process: You replace all your string declaration with a macro:
Strings like the below: Then you use the Then you hand off this *.pot file to someone who knows the language you want to support. They use a po editor tool (it's a text file, so you can just edit it directly too) and export a The As time goes on and you add/modify strings, you can also run I think gettext can also fix number internationalization issues (commas vs periods, etc) too, but I've never touched that. |
My C is quite rusty but Italian is my first language and with my chemistry background I think I can help you with the Italian localization if we decide how to handle the translation process first. |
The gettext approach seems to be the best way to handle localisation! It clearly separates the "programming work" from the "translation work". Unless other methods of similar efficiency come up, I think we can go ahead with this one. If you'd like to submit an Italian translation alongside the switch to |
I can help translate from English to Spanish, but I have literally 0 idea on C (I know about Python). I've worked in multiple translation projects. How can I proceed? |
Objective
Provide a German translation of the strings defined in
headers/text.h
.Rationale
Users, especially in educative contexts, might want to use the software in their native language.
The text was updated successfully, but these errors were encountered: