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

Italian translations #1377

Merged
merged 2 commits into from
Feb 8, 2022
Merged

Italian translations #1377

merged 2 commits into from
Feb 8, 2022

Conversation

alessandrococco
Copy link
Contributor

@alessandrococco alessandrococco commented Jan 31, 2022

No description provided.

@gfwilliams
Copy link
Member

This looks awesome - thanks! I noticed:

    "Delete all messages": "Cancella tutti i messaggi",
    "Delete All messages": "Cancella tutti i messaggi",
    "Delete All Messages": "Cancella tutti i messaggi",

Was this for testing, or does it actually seem to be required? I wonder whether it's worth me changing the translation code so it does something like check for the exact match (as now) and failing that use one that matches, just with different capitalisation

@alessandrococco
Copy link
Contributor Author

Actually it is the output of the language_scan tool. E.g:

/*LANG*/"Delete all messages" : () => {
  E.showPrompt(/*LANG*/"Are you sure?", {title:/*LANG*/"Delete All Messages"}).then(isYes => {

(Probably Delete All messages is a test, I can no longer find the source)


Maybe this is a silly question: is there a simple way to test the translations on my bangle?

@gfwilliams
Copy link
Member

Maybe this is a silly question: is there a simple way to test the translations on my bangle?

Yes, absolutely! If you've got the changes in your master branch (or I think you can set up GitHub pages to serve off a different branch) you can go to https://alessandrococco.github.io/BangleApps/ then 'more...' then 'Translations' and choose italian.

Any apps you upload from then-on that have the /LANG/ comments in them (Settings is the obvious one) will have your translations

@alessandrococco
Copy link
Contributor Author

alessandrococco commented Feb 1, 2022

Thanks!


Damn, Italian is so verbose..!

"Wake on FaceUp" → "Attiva se girato a faccia in su" / "Risveglia se girato a faccia in su" 😭

Anyway, what's the difference between Wake on FaceUp and Wake on Twist? They look the same to me 🤔

@Rarder44
Copy link
Contributor

Rarder44 commented Feb 1, 2022

ciao,
( vi prego, non fatemi scrivere in inglese anche per dare un aiuto nelle traduzioni 😭 )
(please do not let me write in English also to help with translations 😭)

di solito ho visto questo tipo di "notazione"
"Wake on FaceUp" → "Attiva a faccia in su"

credo che la differenza tra "FaceUp" e "Twisted" sia
"FaceUp"→ "faccia in su"
"Twisted"→ "scosso, mosso, fare il movimento rapido del polso che muova l'orologio di un certo gradiente"
( ok, forse l'ultima è un po' lunga ma la differenza credo che sia quella )

@alessandrococco
Copy link
Contributor Author

ciao, ( vi prego, non fatemi scrivere in inglese anche per dare un aiuto nelle traduzioni 😭 ) (please do not let me write in English also to help with translations 😭)

di solito ho visto questo tipo di "notazione" "Wake on FaceUp" → "Attiva a faccia in su"

credo che la differenza tra "FaceUp" e "Twisted" sia "FaceUp"→ "faccia in su" "Twisted"→ "scosso, mosso, fare il movimento rapido del polso che muova l'orologio di un certo gradiente" ( ok, forse l'ultima è un po' lunga ma la differenza credo che sia quella )

Ciao! The problem is that the length of a line is limited. "Wake on FaceUp" is already too long:

image

"Wake on Twist" should be "Attiva ruotando il polso" but it is too long. Maybe "Attiva col polso" or "Att. con polso"? And "Wake on FaceUp" → "Att. faccia su"


@gfwilliams To save space would it make sense to replace On/Off with Y/N (Italian: S/N)? E.g: Wake on Twist Y

@Rarder44
Copy link
Contributor

Rarder44 commented Feb 1, 2022

the solution could be scrolling text....
I think "Att." may not be understood....

@gfwilliams
Copy link
Member

To save space would it make sense to replace On/Off with Y/N

Yes, however I have plans to make some big changes to showMenu which would allow it to have some kind of checkbox/radio button.

While I'm not sure if there'd be scrolling text, menu items will be higher (to make them more finger-sized) and so should be able to display 2 lines of text then.

... so I wouldn't worry for now. Long titles is a problem with the standard English translations too and it's something I do plan to sort out pretty soon

@alessandrococco
Copy link
Contributor Author

While I'm not sure if there'd be scrolling text, menu items will be higher (to make them more finger-sized) and so should be able to display 2 lines of text then.

... so I wouldn't worry for now. Long titles is a problem with the standard English translations too and it's something I do plan to sort out pretty soon

Great, good to know!


Can an app name be translated? E.g. In the launcher an Italian user should find "Impostazioni" instead of "Settings".

Not all app names should be translated: Nifty-B Clock should remain Nifty-B Clock but all generic names should/could be translated (eg.: Compass → Bussola, Weather → Meteo, Calculator → Calcolatrice, etc.)

Maybe we could add a new field in app's metadata.js, e.g. "shouldTranslateAppName": true/false. If true, search for translated name (default to original name if not found). Or we could add the translated names inside the metadata.js:

{
  "id": "setting",
  "name": "Settings",
  "translatedName": {
     "it_IT": "Impostazioni",
     "de_DE": "Einstellungen",
     ...
   }
   ...
}

What do you think @gfwilliams?

@gfwilliams
Copy link
Member

Good idea! I guess all we really need is for the app loader to run the name of the app through the translation process it uses for other things?

Something like Nifty-B Clock wouldn't be translated anyway unless there was a specific entry in the translations for it, so I think we'd be safe. One option is to have a launcher entry in the translation JSON so you could have a separate translation (The Run app may have a different meaning from Run that is mentioned in other apps)

@alessandrococco
Copy link
Contributor Author

alessandrococco commented Feb 2, 2022

In my opinion a LAUNCHER entry in the translation JSON is the better solution 👍

@gfwilliams
Copy link
Member

Do you see any reason why I shouldn't merge this now? Seems like what you have is a huge improvement over normal

@alessandrococco
Copy link
Contributor Author

Do you see any reason why I shouldn't merge this now? Seems like what you have is a huge improvement over normal

Two reasons:

  1. The length of some of the translations
  2. The \n problem I reported in App Translations / Internationalisation #1311 (partially fixed now?)

I'll review again the translations because there are few things I want to fix but if 1. is not a real problem tonight I'll mark the PR as ready ;-)

@gfwilliams
Copy link
Member

Thanks! So yeah, I think the "\n" should be fine now.

In terms of translation length, I'd be tempted to leave them long for now and hopefully a firmware update soonish will sort out the menus so it's not an issue.

@alessandrococco
Copy link
Contributor Author

Done!

I also commited a small improvement in the language_scan tool.

@alessandrococco alessandrococco marked this pull request as ready for review February 7, 2022 21:35
@alessandrococco
Copy link
Contributor Author

alessandrococco commented Feb 7, 2022

Is there any Italian who wants to proofread the translations before merging? 😄

@gfwilliams
Copy link
Member

This looks excellent - thanks! This is a massive improvement over what was there before so I think we'll merge anyway and then folks can always suggest changes :)

@gfwilliams gfwilliams merged commit 90340ed into espruino:master Feb 8, 2022
@alessandrococco alessandrococco deleted the translations-ita branch February 8, 2022 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants