MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.17k stars 19.21k forks source link

[FR] Multi Language Support for Host Prompts #18714

Closed mehmetsutas closed 2 years ago

mehmetsutas commented 4 years ago

Description

For most of the host prompts the wording is included in the C code and for a few of the prompts wording is linked to the language files. e.g. MSG_REHEATING, MSG_NOZZLE_PARKED, MSG_HEATER_TIMEOUT, MSG_PRINT_DONE.

Both ways are acceptable:

or

My personal choice would be to link the wording to the language file so that each host software does not need to track the changes in Marlin, does not need to keep a list of the prompts and their translations and just presents the prompts to the user.

However linking some of the wordings to language files and including some in the C code is not acceptable. It makes it impossible to handle the prompts on the host side. Which one will be translated? If not translated, some prompts will be presented in English and some in local language.

We may even call the current situation a bug.

Feature Workflow

My preferred solution is to link all the prompt messages including the Continue_Str and the Dismiss_Str to language files.

Additional Information

I just raised this issue in order to discuss and decide on the subject. When decided I can create a pull request for the agreed solution.

mehmetsutas commented 4 years ago

@InsanityAutomation @thinkyhead @foosel @repetier

Your opinions would be highly appreciated.

repetier commented 4 years ago

It is not acceptable to think all hosts would do translations. This is an illusion with all the firmwares and forks and ongoing changes the host writers have no real chance to know all used terms and offer translations. So the way to go is that firmware offers all terms in it‘s selected language which should be one the user understands. These are messages from the firmware so all hosts are expected to do is show them.

foosel commented 4 years ago

I'm with @repetier on this one.

InsanityAutomation commented 4 years ago

Agreed this can and should be handled in Marlin and host just faithfully displays it. Host involvement is to sit back and drink beer :-P

foosel commented 4 years ago

I'm pretty sure the octopus is as adverse to alcoholic drinks as I am, so we'll stick to soft drinks if that's ok :-P

thinkyhead commented 2 years ago

We are now doing translated host prompts, so if any have been missed please submit patches as you find them.

github-actions[bot] commented 2 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.