just an issue for translators to follow, and developers to register interest in doing.
I have already tested this id very old time, but not success xD
Need Great dev on QT for create this, after all user can translate that on owner language
Copying comment from discord:
Maintaining and initializing translations will be trickier than you think, I believe. This is speaking from experience on working on hardware with about 15 different languages.
So many "missing strings" or "you were a moron and translated something with a format in it, and this language is in opposite order"
Like it looks simple, but don't trust that ha
We decided not to do this for now some time ago
Just FYI, this feature will be kept on hold until RPCS3 becomes more stable, perhaps version 0.1, or even 1.0, we'll have to see when we get there.
don't want be a spam but is RPCS3 good enough to add languages now ?
If I'm not completely wrong there are some plans to f.ex. redesign (simplify) the settings screen. I doubt any translation work will be accepted before large UI changes like that are finished.
The functionality is implemented in #7396
If we support translations officially in the future then we have to figure out:
@Megamouse how can we help to translate the GUI in our language? I see now the first file in #7914 but i can only translate the text from English to Italian but i do not have any knowledge of Qt development, or Qm binary file. There is an easy way to do this or maybe an online courseguide i can follow to understand how to help? Sorry if this was an OT. Thanks in advance.
A small group of users have started a private translators group on Discord until the RPCS3 team officially accepts translations. Look for me around there.
Right now we have translators for German, Spanish, Russian, Polish and Hungarian. Any help is welcome.
As for translatable functions, I would like to add a list of features that are missing right now in order to make RPCS3 as close as 100% translatable, plus some suggestions I'd like to do for the English texts:
UNTRANSLATABLE CONTENT AND CODE FIXES (REQUIRED):
CHANGES TO THE ENGLISH TEXTS (SUGGESTIONS):
SUGGESTED CHANGES TO THE ENGLISH GUI:
if we wanna deploy them to the qt/translations directory as .qm file or ship them as qt resource in the binary
It should definitely be possible to add translations as separate file, as we can't expect every translator to compile the whole project every time they want to change something. But for release versions bundling them into the executable might be required to get the translations to work properly on appimages, and it'd allow having multiple rpcs3 versionss without translation conflicts.
which languages to add
Whichever we get translations for, oblivously. Although there should be some level of validation so that we don't get people running strings through google translate or submitting joke translations for less common languages.
who is gonna manage these
Translations should be stored in a separate repository to avoid cluttering this one. As for who's going to manage that repository, I think we can start with some folk who manage this one (Ani and you, perhaps?) and then see which people rise up in the translator community as manager type of people.
Some further questions:
Services such as https://www.transifex.com/ and https://crowdin.com/ are great for managing localization projects. They are used by many other Emulators. What i like about them is that you can start to translate immediately after updates have been pushed into repo. So the community will always keep them updated easily.
I have translated several emulator, and because these websites have such a great workflow and tools, i have a few times even been able to push out full translations within a day.
Some Emulators also use em for website translation which works very well.
For the french translation, I am interested to help.
A free plateform we can use is Weblate ( https://weblate.org/en/hosting/ : it's free for open source)
It supports Qt Linguist .ts and .qm file formats if I trust their doc
Until either the development team decides on a localisation solution (I have personally tested Crowdin and Weblate and they are both really good for translators, but I do not know for programmers) and until either the development team wraps up with all the remanining un-localizable strings or someone else does the legwork, a small unofficial group is handling the translations privately via Discord. Look for me in RPCS3's official Discord server.
What should happen with these in regards to translation:
"%0/%1 caches cleared"
"%0/%1 custom configurations cleared"
"%0/%1 custom pad configurations cleared"
"%0/%1 shader caches cleared"
Which would be the plurality apply to (term %0 or %1)?
I think in English it relies only on %1, but perhaps some languages have this different.
You're late to the game. We already handled most of this and there exist draft PRs for most of this stuff.
Also there's no use in trying to optimize some random strings when there isn't even a proper translation strategy implemented in the CI., Which is the reason why we didnt merge them.
But imo there is zero need to handle edge cases for some plurality of some super unimportant notification
Hi all,
I'd like to apply myself in translation of the emulator in my native language when possible let me know would be a pleasure to do it!
Most helpful comment
A small group of users have started a private translators group on Discord until the RPCS3 team officially accepts translations. Look for me around there.
Right now we have translators for German, Spanish, Russian, Polish and Hungarian. Any help is welcome.
As for translatable functions, I would like to add a list of features that are missing right now in order to make RPCS3 as close as 100% translatable, plus some suggestions I'd like to do for the English texts:
UNTRANSLATABLE CONTENT AND CODE FIXES (REQUIRED):
Allow translation of all the drop-down box contents (Bit type). Make sure each setting has an individual option and any repeated options are not optimized into a single string.FIXED IN #7965Allow for translation of the "Choose..." text found in the thread selection drop-down box.FIXED IN #7965Question: Should a debugger actually be translated?I'll answer myself: since debugging will and should be used by expert users, only the most superficial strings should be translatable, since English will always find a way to creep around.Modify the strings "Created PPU Caches for %0 titles", "%0/%1 caches cleared", "%0/%1 custom configurations cleared", "%0/%1 custom pad configurations cleared", "%0/%1 shader caches cleared", so they support multiple plural forms (seems like they need extra code in the source, not the ts file, please confirm).FIXED BY BEVANWEISS, APPROVED?(Localized) Change the hour/minute/second system so it uses the Qt plural form system to display properly the time per language. Polish requires different values, for example, for 1 hour, 2 hours, and then 3+ hours.FIXED BY BEVANWEISS, APPROVEDMake all the untranslatable drop-down boxes translatable (Handler types, Device types, Default Profile name)FIXED IN #7965, Default Profile is a file name and should not be translated via GUIAdd translations for all controllers (DS3, DS4, XInput, MMJoystick) keys and directions.FIXED IN #7965Add a translation for the "Icon Size" text.FIXED IN #7965-
Is it possible to separate the "Auto"/"Disabled" strings, one per each iteration? It's needed to follow the gender of each setting.FIXED IN #7969CPU: Allow translation of all the drop-down box contents (TSX Instructions, SPU Block Size, Preferred SPU Threads). Make sure each setting has an individual option and any repeated options are not optimized into a single string.FIXED IN #7965GPU: Allow translation of all the drop-down box contents (Renderer, Frame Limiter, Anti-Aliasing). Make sure each setting has an individual option and any repeated options are not optimized into a single string.FIXED IN #7965 AND #7969Audio: Allow translation of all the drop-down box contents (Microphone Type, Microphone numbers, strings exist but are not working properly). Make sure each setting has an individual option and any repeated options are not optimized into a single string.FIXED IN #7965The "Mic X" combo boxes, "None" option is still untranslatable.FIXED IN #7973I/O: Allow translation of all the drop-down box contents (EVERYTHING). Make sure each setting has an individual option and any repeated options are not optimized into a single string.FIXED IN #7965System: "Enter with Cross" and "Enter with Circle" are not displaying their translations.FIXED IN #7969Network: Allow translation of all the drop-down box contents (EVERYTHING). Make sure each setting has an individual option and any repeated options are not optimized into a single string.FIXED IN #7965Advanced: Allow translation of all the drop-down box contents (Sleep Timers Accuracy, Performance Overlay's Detail Level and Position). Make sure each setting has an individual option and any repeated options are not optimized into a single string.FIXED IN #7965Advanced: the Firmware Settings options have a translation, but it's not being loaded for some reason.FIXED IN #7965Advanced: The Game Window Title's default sample setting has an individual English string that is not being replaced when translating.MISTAKE: THIS STRING WAS ACTUALLY A PLACEHOLDER.The entire dialog doesn't display translations for some reason, even when the translation files do contain the equivalences. To fix.FIXED IN #7965Fix the translation status for the "Progress" text (Trophy Information box).FIXED IN #7965Make the trophy types from the list translatable.FIXED IN #7969Modify the " directory:" string so the left text can be moved to the right by using a control code or variable.FIXED IN #7965CHANGES TO THE ENGLISH TEXTS (SUGGESTIONS):
In the tooltip "Only framebuffers greater than this size will be upscaled.\nIncreasing this value might fix problems with missing graphics when upscaling, especially when Write Color Buffers is enabled.\nDo not touch this setting if you are unsure.", replace the last line with "If unsure, don't use this option." to follow the existing pattern.APPROVED IN #7917Replace all instances of "Unlocked"/"Locked" to "Not earned"/"Earned" when talking about Trophies, following Sony's naming conventions (Achievements are unlocked, Trophies are earned) (https://www.playstation.com/bg-bg/get-help/help-library/my-account/access-and-details/about-trophies/)Remove the space between "Please wait" and the ellipsis.APPROVED IN #7917(Localized) Replace the category names with either something more gramatically correct or something used in Sony Naming Conventions. Examples: "App Video" should be renamed to "Video App", "HDD Game" should be changed to "Downloaded game" following Sony's naming conventions. (https://manuals.playstation.net/document/en/ps3/current/game/dlgamestart.html) Those conventions were inferred by someone in the PS3DEV wiki by the two characters being used in the PARAM.SFO and do not represent (Except the Classics titles) what an end-user might see.*APPROVED IN #8539 *Change "Left analog" and "Right analog" to "Left stick" and "Right stick" following Sony's naming conventions (https://www.playstation.com/manual/pdf/CECH-2001A-2.75_1.pdf)APPROVED IN #7917(Tooltips): Add an ending period to the following description so it follows the existing pattern: "While it is possible to use a keyboard as a pad in RPCS3, the use of an actual controller is strongly recommended. To bind mouse movement to a button or joystick, click on the desired button to activate it, then click and hold while dragging the mouse to a direction"APPROVED IN #7917Maybe "Preview" isn't the proper name for this function, as this displays the complete, full-quality screen? Something like Screenshot Viewer, for example.System->Language: Replace the two-character short names for countries with the full length.APPROVED IN #7917System->Keyboard Language: Add an space before the parentheses of each option.APPROVED IN #7917ystem (Tooltips): Remove the preceding space to the string " Sets the used keyboard layout.\nCurrently only US, Japanese and German layouts are fully supported at this moment."APPROVED IN #7917System->Enter Button Assignment: Uppercase the Circle and Cross names, add the word "button" afterwards to follow Sony's naming conventions.APPROVED IN #7917Network (Tooltips): Add an ending period to every description so they follow the other tooltips.APPROVED IN #7917Advanced: Add a description for the Width/Height boxes of the Resize game window on boot setting.FIXED BY BEVANWEISS AND APPROVEDEmulator: Move the "Reset"/"Edit" tooltips to the Tooltips section and add an ending period to follow the current style.MISTAKE ON MY PART, THESE WERE ACTUALLY POPUP TOOLTIPS. SHOULD REMAIN AS THEY WEREAdd a trailing period after the text.APPROVED IN #7917SUGGESTED CHANGES TO THE ENGLISH GUI:
Support two lines per title in the Trophy list so the "Platinum Required" can be extended by non-English languages.DEBATED, UNREQUIRED