FreeCAD / FreeCAD-translations

Repository tracking localization issues and progress
5 stars 3 forks source link

Draft → main menu → Annotation → Dimension #258

Closed kaktusus closed 1 year ago

kaktusus commented 1 year ago
OS: Debian GNU/Linux trixie/sid (KDE/plasma)
Word size of FreeCAD: 64-bit
Version: 0.21.0.33576 (Git) AppImage
Build type: Release
Branch: master
Hash: 8e6fbd2886d3ad51b75232bd0019d92d496e80cb
Python 3.10.12, Qt 5.15.8, Coin 4.0.0, Vtk 9.2.5, OCC 7.6.3
Locale: Polish/Poland (pl_PL)
Installed mods: 
  * Curves 0.5.0
  * sheetmetal 0.2.56
  * Reinforcement
  * BIM 2021.12.0
  * Rocket 3.1.0
  * kicadStepUpMod 10.19.4
  * fasteners 0.4.56
  * Alternate_OpenSCAD 1.0.0
  * Render 2023.2.6
  * Movie 2023.6.10

Not all labels have translations in the GUI.

obraz

Dimension - string is in Crowdin (has a hidden parameter) https://crowdin.com/translate/freecad/548/en-pl#6607111

Local ... - All three string variants are in Crowdin https://crowdin.com/translate/freecad/548/en-pl#6604481 https://crowdin.com/translate/freecad/548/en-pl#6604485 https://crowdin.com/translate/freecad/548/en-pl#6604489

The translation for Local ... does not work in the other tools in this menu either.

kaktusus commented 1 year ago

The following strings conflict in all tools where they occur is a global problem :cry:

Local u0394Z Local u0394Y Local u0394Z

chennes commented 1 year ago

"Dimension" is an easy fix, but I suspect a CrowdIn issue for the greek "delta" symbol there: it looks like the backslash is getting lost, or something like that. I wonder if we can create that ∆ in another way.

chennes commented 1 year ago

@yorikvanhavre what do you think about changing all of these to something like "Local %s"/"Global %s" and using a placeholder to do the replacement with "X", "Y", "Z", "∆X", "∆Y", or "∆Z", as needed? Then translators don't translate the axis or the delta. Does that work? Do any languages ever change the x, y, or z?

e.g.

self.labelx.setText(translate("draft", "Local {}").format("\u0394X"))  # \u0394 = ∆ (Greek delta) 
self.labely.setText(translate("draft", "Local {}").format("\u0394Y"))
self.labelz.setText(translate("draft", "Local {}").format("\u0394Z"))

See https://github.com/FreeCAD/FreeCAD/pull/10230

kaktusus commented 1 year ago

Those languages that do not have a Latin alphabet can have their own letters. However moving the text out of the translation area seems like a good solution.

yorikvanhavre commented 1 year ago

Sorry for the late response... good solution!