Skip to content
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

Feature request: Internationalization and localization #20

Closed
dotWee opened this issue Jul 3, 2019 · 8 comments
Closed

Feature request: Internationalization and localization #20

dotWee opened this issue Jul 3, 2019 · 8 comments
Labels
enhancement New feature or request

Comments

@dotWee
Copy link

dotWee commented Jul 3, 2019

First of all, thanks for your incredible work. You’re doing god’s work.

I would love to contribute and maintain a translation into the German language, but it seems that all strings are static and distributed over the whole source code. Maybe think about moving them into separate and translatable resource files.

Official references and documentation provided by Apple:

@keepassium
Copy link
Owner

Thanks, @dotWee !

The good news is that most of the groundwork is already done. All user-facing strings are either in storyboards (that are localizable at file level), or wrapped into NSLocalizedString. (Except diagnostic messages, though, as they won't be seen by most people.)

In theory, generating files for translation should be as easy as ticking a few checkboxes in Xcode.

In practice, however, I first have to ensure that localization context comments are both meaningful and consistent. That is, every “Done” is described as either an action or a state. And whenever a description says “This is one of the possible values of AppLock timeout setting” - to make sure that AppLock was not renamed to something else over the last few months.

So, to streamline the localization as much as possible, I usually eat my own dog food first translate the app myself (to Russian) and improve the localization comments along the way. This makes other translator’s life a bit easier.

Unfortunately, for the moment this makes me the bottleneck, as I am completely occupied to release the app this month...

@dotWee
Copy link
Author

dotWee commented Jul 4, 2019

Seams reasonable, so I’m ready to contribute my translation when you are. Just make sure to let us people know.

Thanks again for your work!

@Thunder33345
Copy link
Contributor

do update us when you are ready to recieve contributions of translation!

@Vistaus
Copy link

Vistaus commented Aug 9, 2019

I too am ready to contribute :)

@keepassium
Copy link
Owner

Ok, the preparatory work took waaay more time than I expected, but KeePassium is finally ready for localization!

The collaborative online translation platform is kindly provided by Crowdin. Kudos to @Andrulko for making it available to KeePassium for free!

In the best traditions of eating your own dog food, I have used the platform to translate the app to Russian. This process highlighted a few ambiguous phrases and unclear localization hints. The discovered issues have been fixed, but there will likely be more. Please use Crowdin discussion board and/or comments to raise any specific translation issues.

P.S. Due to legal formalities, KeePassium-L10n exists as a separate project published under the MIT license. This formally makes it independent from KeePassium and moves the collaborative localization effort from the scope of the GPL-vs-AppStore dispute, so we don't have to bother with copyright transfer forms...

@keepassium keepassium added the enhancement New feature or request label Sep 4, 2019
@Andrulko
Copy link

Andrulko commented Sep 5, 2019

@keepassium Congrats with the official l10n launch! Please add Ukrainian, too :)

@keepassium
Copy link
Owner

@Andrulko Thanks! I’ve added Ukranian and a few other languages, just in case :)

@dotWee
Copy link
Author

dotWee commented Sep 8, 2019

Nice to hear this, I’ve already started translation into the German language and will complete it fully within in the next days. Thanks for making this possible!

@dotWee dotWee closed this as completed Sep 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants