[19:40] <@ThFabba> Did something recently make kernel32 much larger? [19:40] <@hbelusca> yes. [19:40] <@ThFabba> The old base addresses no longer work for me either [19:41] <@ThFabba> Ah [19:41] <@hbelusca> The translations of the message files. [19:41] <@ThFabba> ah [19:41] <@hbelusca> (.mc) [19:41] <@hbelusca> That's why I did that baseaddress update. [19:41] <@ThFabba> I guess it's time I do the -DLANGUAGE_EN_US stuff [19:41] <@hbelusca> ? [19:41] <@hbelusca> ah, to compile only english :) [19:42] <@ThFabba> Though I bet this new mc translation hack doesn't take that into account [19:42] <@hbelusca> (here I need all langs so that I can test the translations) [19:42] <@hbelusca> ThFabba: nope. [19:42] <@hbelusca> Just realising that. [19:42] <@hbelusca> Because those translations are all stuffed into the .mc. [19:42] <@hbelusca> (and there is no #ifdefs inside). [19:42] <@ThFabba> Then let's preprocess the mc I guess [19:43] <@hbelusca> There *might* be a way to select which translations to compile with a command line option for mc.exe (or windmc) [19:43] <@hbelusca> but I don't now at all. [19:43] <@ThFabba> Whatever happened to "we really should have separate files per language" [19:43] <@hbelusca> ThFabba: check whether some cmdline stuff could do it. [19:43] <@hbelusca> ThFabba: I was preferring the separate file per lang. [19:43] <@hbelusca> But it has some cons (see the jira report) [19:53] <@learn_more> <@ThFabba> hbelusca: You need to redo MSVC base addresses with /RTC1 please [19:53] <@learn_more> why is that? [19:53] <@hbelusca> learn_more: because it's bigger :) [19:54] <@learn_more> aha ok [19:54] <@hbelusca> (and it's better to have some space reserve when you don't compile with rtc1, as usually done) [20:31] <@AmineKhaldi_> guys, are we really gonna be beefing errcodes.mc with translations instead of implementing muis ? [20:32] <@AmineKhaldi_> I don't like this kernel32 recent bloat at all [20:33] <@hbelusca> learn_more: ping [20:33] <@ThFabba> AmineKhaldi_: you're talking the words out of my mouth [20:33] <@learn_more> hbelusca [20:34] <@learn_more> yes it sucks but iirc muis were patented still [20:34] <+hyoenmadan> AmineKhaldi_: MUI mechanism is patent encumbered by MS i guess [20:39] <@ThFabba> From reading the mui patent, all we'd need to do is hardcode the mui file path [21:12] <@learn_more> hbelusca / ThFabba: but re the translation shit [21:12] <@learn_more> maybe we should 'invent' an alternative with .po files or something like that [21:15] <@learn_more> .po files are for gettext, which is gnu sort of default translation thing [21:15] <@ThFabba> Yeah I never learned the details of how gettext works [21:15] <@ThFabba> But it seems like a good way to get around that silly patent [21:16] <@learn_more> but, since we have a gnu expert here [21:16] <@learn_more> @ [TheFlash] [21:16] <@learn_more> :D [21:16] <@learn_more> maybe he can shine a light / lead the way [21:16] <@learn_more> and since a po file is used alot [21:16] <@learn_more> there exist tons of tools [21:16] <@learn_more> maybe we can use that for the rest of reactos as well, to make translating easier? [21:16] <@learn_more> https://localise.biz/free/poeditor [21:16] <@learn_more> etc [21:18] <@hbelusca> ThFabba: learn_more : like, implementing our "mui" "support" using po stuff? [21:19] <@learn_more> it can 21:19] <@[TheFlash]> what patent? [21:19] <@ThFabba> MUI [21:19] <@ThFabba> https://www.google.de/patents/US6252589 [21:19] <@[TheFlash]> why do we even need that stuff? [21:20] <@[TheFlash]> isn't that something vista-ish? [21:20] <@hbelusca> ThFabba: btw about MUI, is it available in ntdll / kernel ? (since ntoskrnl eg. has also a message table) [21:20] <@ThFabba> It's the _right_ way to do localization [21:20] <@[TheFlash]> what about our resource files? [21:20] <@ThFabba> I'm pretty sure MS has a copy of ntoskrnl.exe & ntdll.dll for each language [21:20] <@learn_more> basically, its a resource only version of the dll where requests for strings get redirected to [21:21] <@[TheFlash]> ThFabba: what do we use now? [21:21] <@ThFabba> [TheFlash]: rc files require you to either have all languages in the file (large) or make a separate binary per language [21:21] <@ThFabba> We use rc with a compile-time switch to select all languages or just one language [21:21] <@[TheFlash]> and what does MUI do? dynamically load text files? [21:22] <@learn_more> no [21:22] <@learn_more> <@learn_more> basically, its a resource only version of the dll where requests for strings get redirected to [21:22] <@learn_more> there are alotta impl details [21:22] <@learn_more> but this is the simple version :) [21:23] <@[TheFlash]> i don't see how that's any better than having all strings in the file [21:23] <@[TheFlash]> hmm... well [21:23] <@learn_more> because then you only load the dll for the language that you need [21:23] <@[TheFlash]> i guess it could be separate [21:23] <@ThFabba> Your basic install is small, then you can download or copy additional languages later [21:23] <@learn_more> instead of always loading all strings [21:23] <@learn_more> and that [21:23] <@ThFabba> Plus it's less memory overhead [21:23] <@hbelusca> [20:22:33] <@learn_more> basically, its a resource only version of the dll where requests for strings get redirected to <--- strings, and all the UI stuff. [21:24] <@hbelusca> (with lang stuff) [21:24] <@hbelusca> icons & bitmaps (if they are the same whatever the lang used) remains in the main resource file/main exe.