Igor Sitikov 5 Posted December 12, 2022 On 11/2/2022 at 9:36 PM, omnibrain said: Tsilang is horrible, horrible, horrible for source control. It stores the translation data in a blob within the DFM. I don't know the other tools, but I would take a sharp look at how they store their translation data. You can always store translations in DFM as plain text just by using Text Data option during TsiLang Components Suite installation. Share this post Link to post
omnibrain 15 Posted December 12, 2022 15 hours ago, Igor Sitikov said: You can always store translations in DFM as plain text just by using Text Data option during TsiLang Components Suite installation. Ah, did not know that. Is there a way to convert our 100+ existing DFMs? Share this post Link to post
programmerdelphi2k 237 Posted December 12, 2022 (edited) Since the problem is "where" to store the information regarding each translation (country), wouldn't it be an alternative to create all the translations using "resouces/strings" inside a "RES" file, and, according to the user's selection , load this "RES" and update the visual components or not on the user's screen? In this way, you have the alternative of being able to add or remove the languages that your software can use, without the need to bloat your executable or dll. NOTE: if you have a slow internet you can the this happens on "Chrome" buttons... there, you can see just a text used to receive a text from user-language: like "S_Button_Start" ==> final text "Start" Edited December 12, 2022 by programmerdelphi2k Share this post Link to post
Anders Melander 1783 Posted December 12, 2022 1 hour ago, programmerdelphi2k said: Since the problem is "where" to store the information regarding each translation (country), wouldn't it be an alternative to create all the translations using "resouces/strings" inside a "RES" file, and, according to the user's selection , load this "RES" and update the visual components or not on the user's screen? How is that different from the way the standard Delphi RTL translation system works? Resourcestring and form translations are stored in external language modules, one per language, and at run-time forms and strings are loaded either from the exe or from a language module depending on the desired language. Share this post Link to post
Igor Sitikov 5 Posted December 13, 2022 5 hours ago, omnibrain said: Ah, did not know that. Is there a way to convert our 100+ existing DFMs? You would need just to "re-save" them. Open in the IDE and save again, and TsiLang will automatically convert its binary data to the textual. 1 Share this post Link to post
Igor Sitikov 5 Posted December 13, 2022 4 hours ago, programmerdelphi2k said: In this way, you have the alternative of being able to add or remove the languages that your software can use, without the need to bloat your executable or dll. At https://www.tsilang.com/create-user-translated-applications/ there is an article how you can add languages and modify translations in multilanguage applications even without re-compiling them. and this could be done even by end-users without any involvement of developer, Share this post Link to post