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

Updated Italian translations. #1128

Open
boromyr opened this issue Apr 30, 2021 · 59 comments
Open

Updated Italian translations. #1128

boromyr opened this issue Apr 30, 2021 · 59 comments
Labels
help wanted Someone can do the work and submit a pull request?

Comments

@boromyr
Copy link

boromyr commented Apr 30, 2021

Working italian translation and no crash.
Version 2.3.55.5, I made a quick test on version 56 and seems to work.

Pretradotto automaticamente, con revisione personale durante l'utilizzo.
Alcuni termini specifici sono stati mantenunti in inglese, come i bridge, ironing, brim ecc.
La denominazione delle aggiunzioni dei supporti è stata revisionata:

  • "Aggiungi struttura di supporto"
  • "Aggiungi divieto di supporto"

Crash nella sezione raffreddamento risolto.
Soldi è stato sostituito con "€", varie correzioni di articoli, plurali e singolari e altre correzioni minori.

If you find errors you can post them below.
The non-translated entries must still be added to the .pot files.
Extract files to SuperSlicer\resources\localization\it.

it.zip

@Liger0
Copy link

Liger0 commented Apr 30, 2021

I noticed something that can be improved, for example there is no need to say Cost(€) since on the value there is writen €/kg again, and a lot of stuff are using infinitive mood rather than imperative.

I did change the SuperSlicer.po file but I am not sure how they work, as even changing the SuperSlicer.po file, the changes aren't displayed in the gui, and I am not sure why, maybe the SuperSlicer.po file isn't the one that is used to show the language?

@supermerill is there a documentation of what each file in the localization directory does?
I also don't understand something like why the & here is in the middle of the words.

`#: src/slic3r/GUI/MainFrame.cpp:1297
msgid "&Collapse sidebar"
msgstr "Ridu&ci barra laterale"

#: src/slic3r/GUI/GUI_App.cpp:1645
msgid "&Configuration"
msgstr "&Configurazione"

#: src/slic3r/GUI/GUI_App.cpp:1480
msgid "&Configuration Snapshots"
msgstr "Istantanee di &Configurazione"

#: src/slic3r/GUI/MainFrame.cpp:1194
msgid "&Copy"
msgstr "&Copia"

#: src/slic3r/GUI/MainFrame.cpp:1178
msgid "&Delete selected"
msgstr "Eli&mina selezionati"`

@boromyr
Copy link
Author

boromyr commented Apr 30, 2021

Yes I know is not perfect, base I translated with Bing and DeepL, Google gave problems with the syntax of the .po code, then I started to fix the translations more frequent or those that were more annoying to read.

Regarding & in the middle of words not exactly what it is for.

@supermerill
Copy link
Owner

I also don't understand something like why the & here is in the middle of the words.

It's for shortcuts in the menus. ONly displayed if pressing alt and the '&' is before a majuscule.

is there a documentation of what each file in the localization directory does?

I'll add a readme.
There is currently https://github.com/supermerill/SuperSlicer/wiki/Creating---updating-a-translation
I've just finished the new tool. Just the readme to copy & update and I'll commit it..

@Liger0
Copy link

Liger0 commented Apr 30, 2021

Well those seem problematic for example then.

msgstr "Ridu&ci barra laterale"
msgstr "Eli&mina selezionati"`

@supermerill
Copy link
Owner

It's not mandatory to keep it.
Look at the menu, and make sure there's no overlapping.

Also I'm not sure of it but it may be needed to write: msgstr "Eli&Mina selezionati" o show the shortcut.
PrusaSlicer wrote msgid "Re&load from disk" but I think it may be a mistake and they should have written msgid "Re&Load from disk"

@supermerill
Copy link
Owner

supermerill commented May 1, 2021

localization_tool.zip

Here is the updated tool & readme.
It may take me some time to push it on the master branch.

@Liger0
Copy link

Liger0 commented May 1, 2021

Riduci and Elimina are two full words, they can't be separated.
Can the & be placed anywhere before a majuscole or is there a difference before which one you place it?
If not it can just be the first character..

@supermerill
Copy link
Owner

how to:

  • write al translation without any '&'
  • compile the .po and start the app with it
  • open a menu, and white on paper on which letter you want the shortcut to be (try to be consistent with other app or get the same as the English version)
  • modify the .po
    • search for the menu string
    • add the & before the letter you want
    • if you want to the letter to by underlined, make it uppercase
  • test again, and with alt+key

@Liger0
Copy link

Liger0 commented May 6, 2021

I made a lot of changes.
I also fixed most of the infinitive mood that end in "are" to imperative. I probably missed some of them, and the "ere" and "ire" ones are still to do.
SuperSlicer it 6 may 2021.zip

@supermerill
Copy link
Owner

I fixed two little errors.

it.zip

@Liger0
Copy link

Liger0 commented May 23, 2021

I made various changes.
The problems are though that for some reasons when compiling the characters aren't read correctly.
character
I also worked on the TODO file but I am failing at merging it
pom merger

@boromyr
Copy link
Author

boromyr commented May 23, 2021

Strange, nothing happened to me. I used Merill's correct version.
In my opinion we are making too much confusion with translations, I would try to choose the latest stable version of the translation, update entries from the .pot and todo file, and use it as a starting file.

@Liger0
Copy link

Liger0 commented May 23, 2021

Nevermind, I fixed the characters.

@boromyr
Copy link
Author

boromyr commented May 23, 2021

If you use Poedit, you can go to "Translation" and "Update from Pot file"
This is the already updated file, the items with "requires verification" contain the new voices automatically translated, as well as those that were already present.
SuperSlicer.po.txt

@Liger0
Copy link

Liger0 commented May 23, 2021

it.zip
This is the working file, with the unmerged TODO (I fixed some errors and the characters).
It works fine in SuperSlicer
In poedit I have this tho:
poedit red

@boromyr
Copy link
Author

boromyr commented May 23, 2021

Red Poedit errors refer to a different letter after a "% ". So "% for" to "% per" cause a mistake that SuperSlicer has no.
This is your last file with the new non-translated entries. I propose to start from this.
SuperSlicer.po.txt

@Liger0
Copy link

Liger0 commented May 23, 2021

Red Poedit errors refer to a different letter after a "% ". So "% for" to "% per" cause a mistake that SuperSlicer has no.
This is your last file with the new non-translated entries. I propose to start from this.
SuperSlicer.po.txt

Oh, if it's the % it should be fine then since it's the % as a text.
Isn't my last file good? There shouldn't be any error.

@Liger0
Copy link

Liger0 commented May 23, 2021

This is your last file with the new non-translated entries. I propose to start from this.
SuperSlicer.po.txt

I started from this and worked a bit. Tell me what you think. It works for me, but I cannot merge the TODO, tell me if you succeed.
it 23 may.zip

@supermerill
Copy link
Owner

found the bug.
it_po_05_23_merged.zip

@Liger0
Copy link

Liger0 commented May 26, 2021

found the bug.
it_po_05_23_merged.zip

I tried this translation. Just like the old ones, it still crashes the debug build to me like in #1166 , while working in old nightlies.
Same error
debug failed

@boromyr
Copy link
Author

boromyr commented May 27, 2021

With the latest update everything works correctly, Liger I would suggest to start from the translation file present in 56.1 and work only on that to avoid confusion.
Regarding the Visual C++ error try to install the full package with all libraries from https://github.com/abbodi1406/vcredist

@Liger0
Copy link

Liger0 commented May 27, 2021

With the latest update everything works correctly, Liger I would suggest to start from the translation file present in 56.1 and work only on that to avoid confusion.
Regarding the Visual C++ error try to install the full package with all libraries from https://github.com/abbodi1406/vcredist

I installed that software, and it's still crashing the same. Old nightly as I said doesn't....

@supermerill
Copy link
Owner

supermerill commented May 27, 2021

Can't reproduce your crash. It happens at startup, right?
Did you try with a new empty setting directory (using the local-setting .bat for example)?

At least, the error seems to have changed. It's now maybe an error in the .po
Problem is, i can't debug that by picture, i need the debugger to run to see where the exception occur.

@Liger0
Copy link

Liger0 commented May 27, 2021

Actually, if I tried the "debug" release that you posted some days ago, I still have the error about the debug assertion failed.
While, if I try the "better spacing" last release, I get the "invalid string position".
Both using the last translation of "better spacing".

And using the local settings bat file, effectively there's no crash.
SuperSlicer.zip
This then should be the incriminated directory, maybe it's worth seeing if some settings cause the issue?
If I put this directory in the local one and start with the local bat, it crashes, so it must be the culprit.
So I can import old profiles etc safely into the new version. Plus maybe some setting can make the new slicer crash.

@supermerill
Copy link
Owner

supermerill commented May 27, 2021

Found the error. It's in the notification manager.
It creates an index on a long text string and then tries to apply it on a short one.

Prusa has already revamp this code, so maybe i'll grab their version. instead of just patching it.

I think it's the pop-up that tries to say "there is new version available, do you want them?"

@Liger0
Copy link

Liger0 commented Jun 7, 2021

Fixed various errors. The translation is complete and mostly checked and it's a big jump from the one present in the last stable, could this be updated?

Thanks. :)

it 7 june.zip

@supermerill
Copy link
Owner

I will.
I'm doing a pass on all strings that are problematic right now. (not translated, etc..)
I'll merge with it and i'll let you know if there is still one or two to finish it.

@Liger0
Copy link

Liger0 commented Jun 7, 2021

I totally forgot it still needed to fix the infinite mood tences that ended by "ere" and "ire". Now it should be taken care of it too.
it 7 june v2.zip

@supermerill
Copy link
Owner

supermerill commented Jun 24, 2021

updated it translation in https://github.com/supermerill/SuperSlicer/blob/Nigthly/resources/localization/it/Slic3r.po
(you can get the latest nightly to download & test it)
I worked to fix all untranslatable string.
I added small things that I could translate myself.
There is no more than ~ 70 things still to translate.

@Sterbo88
Copy link

is it normal that in the print settings in the left column, width and flow is not translated? and also perimeters and shells? I ask to understand if I have correctly entered the latest language update

@supermerill
Copy link
Owner

It's not up to date.
But you can help improve it.
If you can't follow the tutorial, I can send you a file to complete.

@supermerill
Copy link
Owner

supermerill commented Oct 31, 2021

If someone is ready to add the 242 untranslated entries (2799 are already made)
here is my it working files.
You only have to update the TODO and give me back.
The Slic3r.po contains useful translation
The database contains all translations since the beginning, to be able to reuse them if needed, or as a comparison point.

How to modify the TODO?

#Similar to me: %s flow rate is maximized 
# 2    changes:  flow rate is maximized 
#  translation:  Il flusso viene massimizzato 
msgid "%s flow rate is maximized "
msgstr ""

there is a comment section, behind '#'
the last line is the one that need to be filled
The comment give us advice with similar translations already made.
Be careful! the number of '%' need to be the same or a crash may occur.
So here, the last line may become something like:
msgstr "Il flusso %s viene massimizzato, ecco"

it_2021_10_31.zip

Also note that some text has seen many lines added, and so the algo didn't recognize anything similar, but you may be able to find something yourself by a search in the database.

@supermerill supermerill added the help wanted Someone can do the work and submit a pull request? label Oct 31, 2021
@macchinette
Copy link

macchinette commented Feb 17, 2022

If someone is ready to add the 242 untranslated entries (2799 are already made)
here is my it working files.
You only have to update the TODO and give me back.
The Slic3r.po contains useful translation
The database contains all translations since the beginning, to be able to reuse them if needed, or as a comparison point.

How to modify the TODO?

#Similar to me: %s flow rate is maximized 
# 2    changes:  flow rate is maximized 
#  translation:  Il flusso viene massimizzato 
msgid "%s flow rate is maximized "
msgstr ""

there is a comment section, behind '#'
the last line is the one that need to be filled
The comment give us advice with similar translations already made.
Be careful! the number of '%' need to be the same or a crash may occur.
So here, the last line may become something like: msgstr "Il flusso %s viene massimizzato, ecco"

it_2021_10_31.zip

Also note that some text has seen many lines added, and so the algo didn't recognize anything similar, but you may be able to find something yourself by a search in the database.

Hello Supermerill, since I love your program and I want to be of help, I took the liberty of translating the attached files into Italian.
Since I am not able to compile it in order to generate the file necessary to check it, I ask you if you can do it and I make myself available for new translations for Italian that will be missing with future updates, the important thing for me is to have a file to be edited with notepad.
I noticed that in the general translation file there are from line 15006 paths that refer to a specific unit.

image

it_2022_02_17.zip

I have now made some updates and have updated the zip file.

Thanks Cristian

@macchinette
Copy link

@supermerill
Good morning, I have a couple of questions:

  1. I wanted to ask you if you have entered the translations I sent you?
  2. Since in version 2.4.58.2 you mention the fact that translations are easily updatable, I was wondering which files I need to edit and if the compilation is automatic.

Thank you

@supermerill
Copy link
Owner

supermerill commented Apr 2, 2022

I wanted to ask you if you have entered the translations I sent you?

i guess. I'll check.

Since in version 2.4.58.2 you mention the fact that translations are easily updatable, I was wondering which files I need to edit and if the compilation is automatic.

https://github.com/supermerill/SuperSlicer/tree/master_dev/resources/localization/it

I now not only commit the slic3r.po localization file but also the other ones that I use to create it.
All you have to do is to edit the TODO.po (in your computer or directly on github), and to ask for a pull request (or send it to me by another mean).

it's also easier to execute the pom_merger.py, as the settings are already set.

@macchinette
Copy link

macchinette commented Apr 12, 2022

I wanted to ask you if you have entered the translations I sent you?

i guess. I'll check.

Since in version 2.4.58.2 you mention the fact that translations are easily updatable, I was wondering which files I need to edit and if the compilation is automatic.

https://github.com/supermerill/SuperSlicer/tree/master_dev/resources/localization/it

I now not only commit the slic3r.po localization file but also the other ones that I use to create it. All you have to do is to edit the TODO.po (in your computer or directly on github), and to ask for a pull request (or send it to me by another mean).

it's also easier to execute the pom_merger.py, as the settings are already set.

Hi Merill, unfortunately I wasn't able to use Phyton, so I managed with Poedit to compile the .mo file, testing voice by voice if the translation appears and editing with Note Pad.
I am translating the whole program for version 2.3.57.12 and for 2.4.58.3 and I have noticed that some translations are not displayed.
Below example:

image

def = this->add("retract_lift_top", coStrings);
def->label = L("On surfaces");
def->full_label = L("Lift only on");
def->category = OptionCategory::extruders;
def->tooltip = L("Select this option to not use/enforce the z-lift on a top surface.");
def->gui_type = ConfigOptionDef::GUIType::f_enum_open;
def->gui_flags = "show_value";
def->enum_values.push_back(("All surfaces"));
def->enum_values.push_back(("Not on top"));
def->enum_values.push_back(("Only on top"));
def->mode = comAdvancedE | comSuSi;
def->is_vector_extruder = true;
def->set_default_value(new ConfigOptionStrings{ "All surfaces" });

Could the problem be above?

When I have completed everything I can find, I will open Pull Requests and load the .po and .mo files at that point I will ask you to extract the missing translations because I can't with Phyton.

Thanks and I hope to be helpful.
Cristian

@supermerill
Copy link
Owner

supermerill commented Apr 13, 2022

Could the problem be above?

yes, forgot to add the labels with the L like that

def->enum_labels.push_back(L("All surfaces"));
def->enum_labels.push_back(L("Not on top"));
def->enum_labels.push_back(L("Only on top"));

will fix
Note that you can add them manually to the po file.

Thanks for the report.

@macchinette
Copy link

macchinette commented Apr 13, 2022 via email

@supermerill
Copy link
Owner

I can run python for you, if you need to merge some .po together.
If python is install but refuse to run the merge script, try to install the dependencies:
execute python -m pip install python-Levenshtein in a command prompt.

@macchinette
Copy link

macchinette commented Apr 18, 2022

I can run python for you, if you need to merge some .po together. If python is install but refuse to run the merge script, try to install the dependencies: execute python -m pip install python-Levenshtein in a command prompt.

Happy Easter!
I translated everything I could find, testing it on versions 2.3.57.12 and 2.4.58.3

Now I'm stopped because with Phyton I can't and also the Levenshtein module can't be installed.

So I ask you: can you do the magic to get the TODO file with the missing translations for both versions?

Attached is the ZIP file with the updated Slic3r.po file in Italian and the compiled SuperSlicer.mo.
it_2022_04_19.zip

Once I have the TODO.po file with the missing translations I will translate them and insert them in the Slic3r.po file and I will compile with PoEdit (as I have done until now), at this point I will open the Pull Request for the Italian Translation and I will upload the updated and complete Slic3r.po and SuperSlicer.mo files ready to release.

Thank you for your collaboration, I love the SuperSlicer project!

@supermerill
Copy link
Owner

supermerill commented Apr 20, 2022

For 2.3: ~3560 lines changed, no todo (huge work, you re-translated everything?)
for 2.4 (latest nightly): ~100 TODO, mostly from latest updates/changes. I think it's a good spot for a beta release. You can wait for a more stable one to continue.
it_2022_04_20_SuSi_2.4.zip

@macchinette
Copy link

For 2.3: ~3560 lines changed, no todo (huge work, you re-translated everything?) for 2.4 (latest nightly): ~100 TODO, mostly from latest updates/changes. I think it's a good spot for a beta release. You can wait for a more stable one to continue. it_2022_04_20_SuSi_2.4.zip

Yes, I double-checked and retranslated everything, but since I'm still making corrections it's okay to wait for another stable version.
In the meantime, I translated the missing ones and I realized that from your .PO file some phrases that were translated were missing and the .POT file is probably not complete, so I added translations by finding them during use.

Thanks

@macchinette
Copy link

macchinette commented Nov 1, 2023

@hi @supermerill Supermerill, I'm very happy about your new work adventure,
Since you will be returning to work on SuperSlicer, I wanted to ask you to insert this translation file into Italian.

SuperSlicer ITA.zip

I continued the Italian translation project and translated everything up to the last night you made and it seems like a good job.

My intention is to continue translating with every update you make, because for me it is important to make the most of your magnificent slicer.

Thank you very much and welcome back.

The image shows the only translation I can't do
image

@supermerill
Copy link
Owner

Hi
Can you send me the .po instead?
I'm planning for the future to dedicate a repository for each language, so you won't need me anymore to update the itallian file.

@macchinette
Copy link

macchinette commented Nov 23, 2023

Hi Can you send me the .po instead? I'm planning for the future to dedicate a repository for each language, so you won't need me anymore to update the itallian file.

Hi SuperMerill,
here is the zip with both files (.PO and .MO) updated to the latest night, as I had previously indicated I inserted translations not present in the Slic3r.POT file, so if you make it process only that one the translations disappear, and it is for this reason I will also send you the .MO which contains all the translations including those of the PrusaSlicer.POT file
it_2023_11_23.zip

The translations that don't work are these, one of which is missing translation even in PrusaSlicer
image
image
image
image

Thanks for collaboration.
Excuse my English

@supermerill
Copy link
Owner

supermerill commented Nov 27, 2023

Thanks.
I have to do a 59.4 then.

had previously indicated I inserted translations not present in the Slic3r.POT file, so if you make it process only that one the translations disappear, and it is for this reason I will also send you the .MO which contains all the translations including those of the PrusaSlicer.POT file

You know, for the translation, there is a big it_database.po file with the translations of everything since the start, and everything you send me replace / is added into it. When making the releases, each line is translated by finding the right one inside this big file. That way, if a line is reverted to a previous one, it doesn't need to be re-translated, and it provide a good chance for the script to find equivalent sentence to propose as baseline when creating the TODO.po.

supermerill added a commit that referenced this issue Dec 23, 2023
@macchinette
Copy link

Thanks. I have to do a 59.4 then.

had previously indicated I inserted translations not present in the Slic3r.POT file, so if you make it process only that one the translations disappear, and it is for this reason I will also send you the .MO which contains all the translations including those of the PrusaSlicer.POT file

You know, for the translation, there is a big it_database.po file with the translations of everything since the start, and everything you send me replace / is added into it. When making the releases, each line is translated by finding the right one inside this big file. That way, if a line is reverted to a previous one, it doesn't need to be re-translated, and it provide a good chance for the script to find equivalent sentence to propose as baseline when creating the TODO.po.

Hi Supermerill,
thank you for the effort you are putting into development.
I improved all the Italian translations (so all the Italian translations should be replaced) and translated all the missing sentences up to your last night.
Unfortunately the translations for the sentences in the photo below do not appear and I think the problem is in the code in "format_wxstr".
Then the other 4 in the photo are not in the code designed to be translated.

Immagine 2024-01-27 123748

Attached with the translations. it_2024_01_27.zip

Thank you

P.S. there would still be these:

image
image
image

@supermerill
Copy link
Owner

1- I cleaned it up a bit, and re-generte the pot, there are inside. I give you the new pot below.
2- Weird that the other are ok. I changed a bit the code where it's tranlated, I wasn't sure how it managed to work before...
3- fixed.
All changes are available in next nightly.
Slic3r.pot..zip

@supermerill
Copy link
Owner

supermerill commented Jan 27, 2024

for current 2.5: TODO.zip

@macchinette
Copy link

for current 2.5: TODO.zip

HI,
I translated everything that TODO said was missing.
I don't understand why your check detects missing translations of Z z X x Y y _ etc...

This part of the code is doubled in the PresetHints.cpp file
if (preset_fil.config.opt_int("top_fan_speed", 0) == 1)
out += "\n\n" + _L("! 1 for maximum fan speed is not recommended, set it to 0 to stop the fan!");

In the code the translations that don't work that are in the photo below are set with format_wxstr while those that work boost::format
image

The files are attached. it_2024_01_28.zip

Thank you

@supermerill
Copy link
Owner

once I re-generate the .mo, these translation are translated for me. I'll check again in the release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Someone can do the work and submit a pull request?
Projects
None yet
Development

No branches or pull requests

5 participants