Dimillian / ACHNBrowserUI

Animal Crossing New Horizon companion app in SwiftUI
https://apps.apple.com/us/app/ac-helper/id1508764244?ls=1
Apache License 2.0
1.67k stars 182 forks source link

User interface localization #68

Open Dimillian opened 4 years ago

Dimillian commented 4 years ago

Without even talking about the data, we need to localize at least the UI. There ton of Text constructed with variable in the middle of the string and I don't think it's a good pattern to have. Anyway let's look into it. Never localized a SwiftUI app yet.

TheVaan commented 4 years ago

First steps in #92 I‘m going to continue my work. You may give this issue an „in progress“ label.

TheVaan commented 4 years ago

Let us create a check-list in the issue (maybe someone can copy paste):

(edit: moved list to issue)

Add / remove languages as desired.

klin0816 commented 4 years ago

I am able to provide ZH_TW Chinese localization but I am not good at Swift Is that any template that I can fill in the translation?

jonnyklemmer commented 4 years ago

@klin0816 here's the "template" file you use for Localization in iOS: https://github.com/Dimillian/ACHNBrowserUI/blob/master/ACHNBrowserUI/ACHNBrowserUI/en.lproj/Localizable.strings

so for example replacing "music" = "Music"; with "music" = "音樂";

I'm sure if you were able to do that it'd help @TheVaan out

TheVaan commented 4 years ago

Edit: I didn't saw the pull request, so you can ignore most of my tutorial how to do it, but as it could be helpfull for others I will let it as it is. You can read it anyway, because there are some hints that you missed in your PR (@Dimillian already commented this in your pull request)

Original: @klin0816 That would be awesome! As @jonnyklemmer mentioned, there are no Swift skills necessary. We changed the way translation works a little bit - the linked English localization file is not complete.

You have to choose between two ways:

First:

Second:

I would prefer the first way, because I don't want to steel you a contributor entry to the app. Translation costs time, that should be honored!

One tipp: Use nookipedia to find translation of villagers name. Each villager has an information box with all known names in different languages.

klin0816 commented 4 years ago

@TheVaan Thanks for your guide anyway. I will try to complete the translation ASAP.

mimikun commented 4 years ago

Hello. I want to Japanese Localization. Would you tell me how to do it?

TheVaan commented 4 years ago

@mimikun that's great! Thank you! You can follow the tutorial I posted above. Use as name for your folder ja.lproj - you don't need Xcode, it can be done with any editor, case the strings file is plain UTF-8.

Dimillian commented 4 years ago

Or UTF-16 in case of Japanese/Chinese, and it works. Just pulled the Chinese items and now we have it in the app @klin0816 :)

Screenshot 2020-05-14 at 08 42 28 Screenshot 2020-05-14 at 08 44 45
mimikun commented 4 years ago

@TheVaan Thanks. I'll try to complete the translation ASAP.

shibotong commented 4 years ago

I am able to provide “Chinese Simplified” and I am familiar with swift. But there is no “Chinese Simplified” option in your comments☹️

TheVaan commented 4 years ago

@kartbnb I can add it. The amount of Chinese language variants is not that transparent to me 😅 You are welcome to create a pull request with translated data!

TheVaan commented 4 years ago

You have two options:

MrOgeid commented 4 years ago

Hi, I can provide the Italian localization, if anybody isn't working on it just yet. 😀 The folder name for the Italian language is it_IT.lproj ?

TheVaan commented 4 years ago

@MrOgeid this would be awesome! There is no one translating to Italian (as far as we know). The folders name has to be it.lproj

MrOgeid commented 4 years ago

@TheVaan Ok! Thank you for the correct folder's name! I'll try to translate all the string as soon as possible!

Dimillian commented 4 years ago

And for items and villagers, they should already display in Italian. You can confirm @MrOgeid ?

MrOgeid commented 4 years ago

@Dimillian Villager's names are displaying in Italian but I see the items in the Catalog in English.

Dimillian commented 4 years ago

@MrOgeid On latest commit I've enable Italian so you'll find the correct folder and file. And it also enable Italien items :) Simulator Screen Shot - iPhone 8 - 2020-05-19 at 17 59 41

MrOgeid commented 4 years ago

@Dimillian Sorry, probably I didn't understand.😅 I don't have access right know to Xcode as I'm not a very expert software developer, I'm more a graphic designer and copywriter.

Dimillian commented 4 years ago

Well if you start your translation from the last commit, you'll find the It.lproj folder with the file ready :)

MrOgeid commented 4 years ago

Thanks @Dimillian !

MrOgeid commented 4 years ago

Hi @Dimillian I translated in Italian all the strings from Localizable.strings in the "de.lproj" folder into the same file in the "it.lproj" folder. But I'm not quite sure if I made a correct pull request.😬

Dimillian commented 4 years ago

Congrats to @mimikun for adding japanese in #136 !!

Dimillian commented 4 years ago

Added credits in our readme :) https://github.com/Dimillian/ACHNBrowserUI#localizations-credits

Dimillian commented 4 years ago

I'll try to tag on this issue everything I'm adding to French localization (which should be everything we have to localize) so it give a change to anyone who wants to updated their localization file to do so :)

rohanrk commented 4 years ago

I figure this thread is better than opening a new issue but there are quite a few strings that are in other languages that aren't in the English file (e.g: "Friendly Reminder") Should the English strings file be expanded?

TheVaan commented 4 years ago

No. Swift uses the key as translation if there is no localization. So we only add a key to the English localization if it is an unreadable key.

AndyH0ng commented 3 years ago

I think I'm done with Korean one. Is there anything missing I have to do?