[Request] Multilingual support
Hi @SamDel,
Would it be possible to offer multilingual support? I would be able to provide a French translation.
Sincerely, WikiJM
That's nice! I first have to put all strings in a resource file then. I'll come back to you when it's done. Are you familiar with resource files in Visual Studio?
Hi @wikijm, I've added the French resource file, it's here:
https://github.com/SamDel/ChromeCast-Desktop-Audio-Streamer/blob/master/Source/ChromeCast.Desktop.AudioStreamer/Properties/Strings.fr.resx
The texts in the values of the data elements (at the bottom of the file) need to be overwritten with their French translation.
See for yourself how you want to work, you can create a pull request or drop the translations here.
Thanks a lot!
Hi @SamDel
Thanks for your fast and positive answer 😃
I'm not an active Visual Studio user/C++ developper, so badly no, I'm not familiar with 'resource files' 😥
How about using Multilingual App Toolkit 4.0? This seems to give a simple solution for our need.
Damn! I answer to your first answer without seeing the second one. I will apply your proposal first, then create a pull request.
Thanks for your time 😉
And here is the pull request: https://github.com/SamDel/ChromeCast-Desktop-Audio-Streamer/pull/22
Thanks, merged already. I had to change the user interface to make it all fit.
The Multilingual App Toolkit looks good, it supports the same resource files and you can also add a pseudo language to test the user interface. I'm going to play a bit longer, and add it to the project later on.
I made a new installer with the French translations, can you try?
Sadly, In 2 different computers, the app is still in english when I'm using the new setup.
Sorry, I forgot to add the localized resources to the setup project. Can you try with 1.9?
I also added a language dropdown to the options tab.
Everything's working fine.
Thanks a lot for your work 😃
Nice, thanks for your contribution! I hope other people will follow with more languages.
Hi @wikijm ,
A couple of labels are added in the application. In the Multilingual App Toolkit file I marked them as 'needs-review'. Do you have time to change/review them in this file? I want to do a new release later this week.
Thanks!
Hi @SamDel, I'll try to do it this week :wink:
And done 😃
That's fast :smiley:. I did some easy ones myself (with Google translate), not too bad :wink: We're testing the latest changes, I will release the new version when done.
Thanks!
In my opinion, DeepL is quite good for this kind of task. You're welcome 😉
That's a nice one! I use DeepL now for the translations. Can you check if it's OK like this (in the 2.0 branch, for the 2.1 release). The new ones are marked as needs-review:
<trans-unit id="Check_StartApplicationWhenWindowsStarts_Text" translate="yes" xml:space="preserve">
<source>Start application when Windows starts</source>
<target state="needs-review-translation">Démarrer l'application au démarrage de Windows</target>
</trans-unit>
<trans-unit id="DevicesOnly" translate="yes" xml:space="preserve">
<source>Devices only</source>
<target state="needs-review-translation">Appareils seulement</target>
</trans-unit>
<trans-unit id="GroupsOnly" translate="yes" xml:space="preserve">
<source>Groups only</source>
<target state="needs-review-translation">Groupes seulement</target>
</trans-unit>
<trans-unit id="ShowAll" translate="yes" xml:space="preserve">
<source>All</source>
<target state="needs-review-translation">Tous</target>
</trans-unit>
<trans-unit id="Check_AutonaticallyStartLastUsed_Text" translate="yes" xml:space="preserve">
<source>Automatically start last used devices and groups at startup</source>
<target state="needs-review-translation">Démarrage automatique des derniers appareils et groupes utilisés au démarrage</target>
</trans-unit>
<trans-unit id="Label_LinkHelp_Text" translate="yes" xml:space="preserve">
<source>Information about options on Github</source>
<target state="needs-review-translation">Informations sur les options sur Github</target>
</trans-unit>
<trans-unit id="Tooltip_RecordingLevel_Text" translate="yes" xml:space="preserve">
<source>Recording level</source>
<target state="needs-review-translation">Niveau d'enregistrement</target>
</trans-unit>
<trans-unit id="Label_FilterDevices_Text" translate="yes" xml:space="preserve">
<source>Filter devices</source>
<target state="needs-review-translation">Filtrer périphériques</target>
</trans-unit>
<trans-unit id="Tooltip_Group_Text" translate="yes" xml:space="preserve">
<source>Group</source>
<target state="needs-review-translation">Groupe</target>
</trans-unit>
<trans-unit id="Label_BufferInSeconds_Text" translate="yes" xml:space="preserve">
<source>Device buffer (in seconds)</source>
<target state="needs-review-translation">Mémoire tampon de l'appareil (en secondes)</target>
</trans-unit>
Hi @SamDel
Please take a look at https://github.com/SamDel/ChromeCast-Desktop-Audio-Streamer/pull/35 😃
Thanks! DeepL also is not perfect 😉. I merged it and will create new release later.
Hi @wikijm , Can you check the translation of Check_AutoMute_Text - 'Auto-mute/unmute desktop audio'? It's in the Development 2.4 branch.
Hi @SamDel Please take a look at https://github.com/SamDel/ChromeCast-Desktop-Audio-Streamer/pull/58 😃
The multilingual support is now perfectly functional, then propose to close this ticket and create another one dedicated to French translation? This will allow you to assign it to me, and to create one per language.
Thanks!
Not sure what's easier.
- One issue with multiple assignees. All languages (I hope more will follow) need to be updated at the same time.
- Or one per language, that makes it easier to have per language discussions.
Let's review again when a third language is added!
Sure, your proposal make sense.
Hi @wikijm, can you check the (internet) translation for the new 'Minimize to tray' option?
The French translation is "Réduire dans la barre d'état à la fermeture". You'll have better result if you try to translate 'system tray' instead of 'systray' 😉.
That's completely different 😄, thanks!
Thanks to you the work done 👍
Hi @wikijm, still there?
Are these translations correct? "Wav (Soundcard's sample rate/24bit)" => "Wav (taux d'échantillonnage de la carte son/24 bits)" "Convert multi-channel audio to stereo output" => "Conversion de l'audio multicanal en sortie stéréo"
Hi @SamDel
Yes, your translation is perfect 😃
Thanks to DeepL 😉 . Thanks again!
Hi @SamDel
Thanks again for your work! Your app is still in use with a good old Chromcast Audio 😉
I'm closing this issue as you implemented feature since almost 5 years 😛
Let me know if you French translation check is required 😄
Have a nice end of year celebrations!