microsoft / winfile

Original Windows File Manager (winfile) with enhancements
MIT License
6.81k stars 705 forks source link

Add additional languages beyond English, Chinese, Hebrew, Japanese, Polish, German #77

Open Anixx opened 6 years ago

Anixx commented 6 years ago

Windows releases contained Winfile in multiple languages (such as Russian). This project currently has only English language version.

craigwi commented 6 years ago

I'll go digging in the NT4 source tree for the other languages. I'll need help with any new/changed strings.

magol commented 6 years ago

I can help with the Swedish language version.

daviunic commented 6 years ago

Considering Windows is now available in languages in which NT 4.0 wasn't, will there be any additional translation efforts for such languages?

ZanderBrown commented 6 years ago

@daviunic you offering?

IQBigBang commented 6 years ago

I could do Czech and Slovakia version if developer would want to translate...

thecatkitty commented 6 years ago

I can help with the Polish resources.

I think it would be rather all languages in one EXE than additional MUI files, wouldn't it?

NazmusLabs commented 6 years ago

I'd be able to help with translations in French and Bengali, as I speak these languages as well. So even if Windows NT didn't support one of these languages, we can have them.

QianNangong commented 6 years ago

I can help with translations in Simplified Chinese.

daviunic commented 6 years ago

@ZanderBrown yes, I could do the Slovenian translation.

craigwi commented 6 years ago

I have yet to find any translations of the WinFile strings inside Microsoft.

What do folks think about @thecatkitty's idea that all languages are in one EXE?

ZanderBrown commented 6 years ago

Makes sense, perhaps we need additional UI to override system language?

Anixx commented 6 years ago

I do not think this utility should override system language.

mischastik commented 6 years ago

I'd be glad to help if assistance with German is needed.

ZanderBrown commented 6 years ago

@Anixx to clarify:

WinFile should use the system language by default, as should all applications, but have the option to manually specify a language use

Anixx commented 6 years ago

@ZanderBrown I know no app that provides this feature, not necessary in my opinion.

NazmusLabs commented 6 years ago

@Anixx I've seen plenty of apps that give you the option to switch to another language or use the default system language.

I'm not arguing either way in this case. I'm just noting that I've seen may apps that do this and many that don't.

This feature will definitely be useful for Windows 7 or older. Windows 7 doesn't let you switch languages on the fly unless you have ultimate. With windows 10, there are more languages to download on demand that ever, and the process is very easy now that it is distributed through the Windows Store, as of Version 1803.

Again, I'm neutral in regards to this point, as it doesn't affect me significantly and, thus, won't be fair for me to just pick a side for the same of it.

rafnogueira commented 6 years ago

I could try to help in translations to Portuguese and Brazilian Portuguese .

ttsirkia commented 6 years ago

How the translation was originally done?

craigwi commented 6 years ago

I'm still trying to track down the original translations and the tools used. What I found thus far (scouring a repo and also asking someone) was the attached file (without the .txt extension).

winfile.tok.txt

I was hoping to find other languages, but this is the think I have found thus far.

thecatkitty commented 6 years ago

@ttsirkia my speculations: It seems line there were a bunch of RC files, one for every language. During the build process of a particular localized release (Windows before 2000 was always single-language) they might just select which source directory contains RC files for the language and compile it instead of the English one.

With Windows PE EXE resources it is very simple to have multi-language versions of UI elements. Splitting it into one file per every language is also easy. Moreover, it would make it possible to build the executable with one locale, all locales or selected locales. But there are still two things to consider:

  1. If @craigwi doesn't manage to find the original Windows NT translation files (perhaps they're are not there; they could be in Microsoft's foreign divisions' archives as well), are we going to translate everything ourselves? The number of translations would be very limited then. The second question (and probably an option) there is: Are we permitted to extract these localized strings from (eg.) NT4 Service Pack update files (which is trivial, as seen below). It wouldn't make Craig search for the code which might just not be there, but on the other hand, I am unable to tell if this would be a legally clean solution. winfile_res_pl
  2. We need to decide if the user should have a possibility of selecting a non-default language. It is possible. One option is to use FindResourceEx, the second, a more straightforward approach, would be to use SetThreadLocale, but MSDN says that it shouldn't be used for changing the UI language. I am not sure why.
fitojb commented 6 years ago

Heyo! In the spirit of open source collaboration, I’ll be glad to help out with Spanish and Catalan translations.

TheFanatr commented 6 years ago

I'd be happy to help with Romanian if needed.

craigwi commented 6 years ago

Hi folks. We are in the final stages of getting PR #120 added to master. If you volunteered to write a translation, you can begin that process using as a guide what @MouriNaruto and @mattn have done. Don't forget to put it in the lang subdirectory and find the right locale string to use.

craigwi commented 6 years ago

We are up to four languages (once I add Polish). Several folks indicated willingness to help: @magol, @IQBigBang, @NazmusLabs, @daviunic, @mischastik, @bitsbr, @fitojb, and @TheFanatr.

Follow the patterns in recent PR with #143 being the most recent.

NazmusLabs commented 6 years ago

I'm able to do French and Bengali. French would be the first one to target.

peterooch commented 6 years ago

One thing to note, Right-to-left languages (such as Arabic, Hebrew) use DIALOGEX instead of DIALOG, and to use EXSTYLE WS_EX_LAYOUTRTL to enable mirrored layout. Non-dialog mirroring is on its way + Hebrew translation (since the wfw3.1 version)

craigwi commented 6 years ago

Thanks @peterooch for solving the RTL issues. German is in the works by @BaldwinTechnology.

I am looking at applying the change by @malxau for resizable dialogs in a way that doesn't burden all translations. Thus other translations can proceed.

Those offering: @magol, @IQBigBang, @NazmusLabs, @daviunic, @mischastik, @bitsbr, @fitojb, and @TheFanatr.

clzls commented 6 years ago

@Anixx @craigwi The title of this issue need a change now (or closing it), since we have so many languages other than English now.(Hebrew, Simplified Chinese, Japanese, German, Polish...) Since we have so many languages, we may be able to create a Translators' List (or so) now.