terminal icon indicating copy to clipboard operation
terminal copied to clipboard

Inconsistent/incorrect translations in Spanish localization for settings

Open florelis opened this issue 3 years ago • 13 comments

Windows Terminal version

1.13.10395.0

Windows build number

10.0.22572.0

Other Software

No response

Steps to reproduce

Use Terminal in Spanish, then go to Configuración -> Acciones (Settings -> Actions)

Expected Behavior

No response

Actual Behavior

Some items are translated inconsistently or incorrectly.

  • Most actions use infinitive verbs, but some use imperative: "Cierre la ventana" should be "Cerrar ventana", "Desplácese hacia arriba una página" should be "Desplazarse hacia arriba una página" (likewise for "abajo").

  • Some ambiguous words are translated as nouns instead of verbs:

    • "Panel dividido" (as in 'a split panel') should be "Dividir panel" (as in 'do split panel').
    • "Citación de la ventana Quake" ('summon Quake window') should be something like "Invocar ventana de Quake", likewise for "Citación de la ventana de terminal", which also doesn't have Terminal capitalized.
    • "abajo panel de intercambio" should be "Intercambiar panel hacia abajo" (capitalize first word, and change noun by verb), same for all other three directions.
    • "Zoom del panel de alternancia" should probably be "Alternar zoom del panel".

    I would suggest adding notes for the localization team on all items like these that can be understood in multiple ways.

  • Next/Previous Tab are translated as "Pestaña anterior" and "Siguiente pestaña" (different order); I'd prefer "Pestaña siguiente" for consistency.

I also noticed that the sorting of the list for picking actions puts the lowercase items at the bottom, so it goes A...Za..z. I would expect it to be Aa...Zz.

florelis avatar Mar 10 '22 21:03 florelis

I like nit-picking at Spanish localizations. I would go through all the strings, but I couldn't find the resources file.

florelis avatar Mar 10 '22 21:03 florelis

Thanks for these suggestions! If you want to go through and nitpick more, the English strings are all listed in Resources.resw files, but there's unfortunately not a good place on the repo that lists all the localized versions of those strings.

zadjii-msft avatar Apr 13 '22 19:04 zadjii-msft

When filing these as an issue I need to file them as "English source string with key X (was translated as Y but) should be translated as Z" (see #14293 for instance). While it's extremely valuable that you brought up these issues, to be entirely frank, I'm unable to effectively submit them to the localization team.

That aside, you also brought up two issues that are unrelated to the localization and need to be fixed by us independently:

  • Actions are sorted A-Za-z and not Aa-Zz
  • .resw comments are often way too rudimentary and not helpful for human translators

I'll try to address them both in the near term. But I'm not sure what to do about the localization though...

lhecker avatar May 08 '23 21:05 lhecker

When filing these as an issue I need to file them as "English source string with key X (was translated as Y but) should be translated as Z" (see #14293 for instance).

If you can point me to the localized .resw file, I can do that. I know it's not checked in, but maybe it's an artifact in some internal pipeline?

florelis avatar May 09 '23 17:05 florelis

Here's a dump of the latest localization as of yesterday: LocOutput.zip It contains all languages, but if you search for "es-ES" you should find all those relevant to you. Specifically, these two files contain almost all relevant strings:

  • src\cascadia\TerminalApp\Resources\en-US\es-ES\Resources.resw (general UI)
  • src\cascadia\TerminalSettingsModel\Resources\en-US\es-ES\Resources.resw (settings UI)

At this point I should probably mention that we've been wishing for a way where we could properly accept community translations via GitHub. 🥲 Unfortunately we haven't had time to further pursue this and internally there's no real support for this either (nor is support planned by the localization team).

lhecker avatar May 10 '23 21:05 lhecker

Here's a dump of the latest localization as of yesterday: LocOutput.zip

Thanks. I'll go through it when I have some time :)

At this point I should probably mention that we've been wishing for a way where we could properly accept community translations via GitHub. 🥲 Unfortunately we haven't had time to further pursue this and internally there's no real support for this either (nor is support planned by the localization team).

On winget-cli what we do is that we have the localized resource files checked in on the repository, so when someone has a suggestion they usually make a PR with the changes. We can't accept them there, but when we file a bug against the localization team to consider, we can just point them to the PR and there it's clear which string IDs are replaced by what text

florelis avatar May 10 '23 22:05 florelis

On winget-cli what we do is that we have the localized resource files checked in on the repository, so when someone has a suggestion they usually make a PR with the changes. We can't accept them there, but when we file a bug against the localization team to consider, we can just point them to the PR and there it's clear which string IDs are replaced by what text

Oh... and you automatically merge any changes coming from the localization team into the repository? That's clever! I think we should do this too...

lhecker avatar May 10 '23 22:05 lhecker

you automatically merge any changes coming from the localization team into the repository?

Well, not automatically. We have a loc pipeline that we run manually to query the loc changes and produces a git patch. We then apply it and send the changes as a PR. Not sure why it was set up that way, maybe to avoid noise from frequent PRs.

I think we only have to run that pipeline twice per release, once to send the new strings and once to get the updated translations.

florelis avatar May 10 '23 22:05 florelis

@florelis You have a link to how that works? We've been very curious about this topic, see: https://github.com/microsoft/terminal/issues/10667#issuecomment-1095579029

If we had the localizations from the pipeline just... checked in, then we'd be able to accept community translations? This might be a BIG deal

zadjii-msft avatar May 11 '23 14:05 zadjii-msft

Checked in resources in winget-cli repo: https://github.com/microsoft/winget-cli/tree/master/Localization/Resources

Localization pipeline definition: https://github.com/microsoft/winget-cli/blob/master/azure-pipelines.loc.yml The actual pipeline is internal - can't remember why, maybe TDBuild task wasn't installed in the AzDO project we wanted. From time to time someone runs it manually to submit the strings, then some time later again to get the LocalizedStrings.patch. It is applied and sent as a PR. For example microsoft/winget-cli#2264

We do get suggestions for translation improvements from the community, like microsoft/winget-cli#3044 Then we reference the PR in the internal work item, like https://task.ms/43701445

florelis avatar May 12 '23 00:05 florelis

Here's a dump of the latest localization as of yesterday: LocOutput.zip

Maybe you already know, but there's some weirdness in the paths there. The resources for each locale seem to be inside the en-us folder, when they probably should be next to it. For example, there is src\cascadia\TerminalApp\Resources\en-US\es-ES instead of src\cascadia\TerminalApp\Resources\es-ES

florelis avatar May 12 '23 00:05 florelis

Here's a dump of the latest localization as of yesterday: LocOutput.zip

Maybe you already know, but there's some weirdness in the paths there. The resources for each locale seem to be inside the en-us folder, when they probably should be next to it. For example, there is src\cascadia\TerminalApp\Resources\en-US\es-ES instead of src\cascadia\TerminalApp\Resources\es-ES

Ohhhhh yes, this is by design according to the TDBuild folks.

We have a build phase to move them about :|

DHowett avatar May 12 '23 03:05 DHowett

When filing these as an issue I need to file them as "English source string with key X (was translated as Y but) should be translated as Z"

@lhecker

String ID Current Suggestion Reason Comment to dev
CloseWindowCommandKey Cierre la ventana Cerrar ventana String is not an instruction to user, but a label for keyboard shortcut. Also for consistency with ClosePaneCommandKey and others Maybe add a comment that it is a label for a keyboard shortcut
ScrollDownPageCommandKey Desplácese hacia abajo una página Desplazarse hacia abajo una página Consistency across all Scroll*CommandKey strings Same
ScrollUpPageCommandKey Desplácese hacia arriba una página Desplazarse hacia arriba una página Same Same
ScrollDownCommandKey Desplazar hacia abajo Desplazarse hacia abajo Same
ScrollDownSeveralRowsCommandKey Desplazar hacia abajo {0} línea(s) Desplazarse hacia abajo {0} línea(s) Same
ScrollUpCommandKey Desplazar hacia arriba Desplazarse hacia arriba Same
ScrollUpSeveralRowsCommandKey Desplazar hacia arriba {0} línea(s) Desplazarse hacia arriba {0} línea(s) Same
SplitPaneCommandKey Panel dividido Dividir panel String does not refer to an object but to an action as it is the label for a keyboard shortcut Maybe add a comment that it is a label for a keyboard shortcut
SplitPaneParentCommandName Panel dividido Dividir panel Same Maybe add a comment that it is a label for a keyboard shortcut
SplitPaneText Panel dividido Dividir panel Same Maybe add a comment that it is a label for a keyboard shortcut
TogglePaneZoomCommandKey Zoom de panel de alternancia Zoom de panel de alternancia Same Same
SwapPaneCommandKey Panel de intercambio Intercambiar panel Should be consistent with SwapPaneToLastUsedPane Same
SwapPaneWithArgCommandKey {0} panel de intercambio Intercambiar panel hacia {0} As the comment mentions, "{0}" is a placeholder for a direction, so it cannot be at the start of the sentence.
QuakeModeCommandKey Mostrar u ocultar ventana Desastre Mostrar u ocultar ventana Quake As the comment mentions, Quake is the name of a videogame Maybe add {locked} comment for Quake
NextTabCommandKey Siguiente pestaña Pestaña siguiente Consistency with PrevTabCommandKey

florelis avatar May 12 '23 17:05 florelis

Internally filed as GCS-553438 in the GlobalCollaborationService project.

lhecker avatar May 17 '24 15:05 lhecker