ArtificialQualia / PyEveLiveDPS

PyEveLiveDPS (PELD) is a live DPS calculator and grapher for EVE Online
GNU General Public License v3.0
157 stars 27 forks source link

Localization for PELD #75

Open 1MLightyears opened 3 years ago

1MLightyears commented 3 years ago

Saw an issue of localization but closed What can i do to contribute to localization works?

ArtificialQualia commented 3 years ago

Unfortunately not much work has been done for localization. I did not hear back from the other user that wanted to contribute to localization. Currently all user visible strings are hardcoded in English, so a localization library would need to be chosen to wrap all those strings (something like the built-in gettext module or maybe a separate package), a language setting would have to be added to the settings window, and then of course somebody would have to translate all the strings in a localization file to Chinese or whatever languages desired.

There may be additional difficulties with changing languages as PELD uses both multiple threads and processes.

How much would you be willing to contribute/what are your areas of expertise?

1MLightyears commented 3 years ago

Hi

Sorry for the delay, I'm suffering from some network troubles these days :(

As for the localization, I managed to do some work and figured out a zh-CN version of PELD latest a few days ago. It worked well but may take me a bit longer to package it with pyinstaller.

I drafted some localization module which might look like the PyQt native i18n approach; but my version is much dumber :sad: but it works for now.

I also left interfaces for other languages. I plan to add comments and draft a PR of my version when my network is fixed (around 16th, if everything goes well).:smile:

ArtificialQualia commented 3 years ago

No worries, glad you could continue to work on it.

Don't worry too much about packaging it using pyinstaller, that is handled automatically via the small CI/CD process in AppVeyor. We can test binaries if your code is merged into a branch by getting the binaries from AppVeyor.

I'm interested to see your i18n approach. Not a huge fan of Qt's XML translation files or having to create 'compiled' versions of those files, but I would probably have to do that anyways if I ever have the time to refactor PELD to use PyQt as I started to do in the mostly dead qt-rewrite branch.

Thanks for the work, I look forward to seeing the PR!