Englishize Cmd – Change Non-English Command Line Interface to English Fast
Also on Chocolatey: choco install englishizecmd / winget: winget install englishizecmd
[2019-05-13] Update: As reported by a German user (thanks), some en-US files (e.g. ipconfig.exe.mui) are no longer included for the German release of Windows 10 since 1809. This doesn't seem to affect other countries or regions. For details and a workaround, refer to the comment section below or this comment.
[2021-03-27] Update: Continued from the above, another German user reported an issue with the German 2004 version of Windows 10. In German Windows 10 2004, not only those files do not exist, but that putting the files back do not work. Again, this doesn't seem to affect other countries or regions. For a workaround, refer to this GitHub issue.
List of Features
- Toggles between English and non-English for many Windows commands.
- For English system admins who manages Windows PCs of other languages.
- No need to log off; settings are appled immediately.
- Comes with a restorer. Apply or restore is as simple as a click or typing 'EnglishizeCmd' and 'RestoreCmd' commands.
- Better character compatibility than changing DOS codepage.
- Many languages and executables are supported. Customizable.
- Ensure the outputs which your scripts catch are always in English.
- Administrator rights are required. It asks for rights to elevates itself. (Does not elevate over network mapped drives.)
- Parameter '/quiet' can be used to suppress confirmation messages for unattended usage. (Only works when existing Command Prompt is run elevated.)
- Supports Windows Vista and later, as well as their server versions only, including Windows 10 or Windows Server 2019
- Portable by default. Optional installer enables 'EnglishizeCmd' and 'RestoreCmd' commands globally in Command Prompt and Run Prompt. (The commands including the extensions would be 'EnglishizeCmd.bat' and 'RestoreCmd.bat')
Background
Somebody recently asked in a discussion group how to use all built-in command-line tools in English in non-English Windows, as they are localized to another language which can be a nightmare for system administrators who only speak English. People shared various ways such as entering "chcp 437", which is the English codepage, prior to running a command. Or, creating a shortcut to cmd.exe and setting in its properties the "Current Codepage" setting to 437.Unfortunately both methods could make non-English characters non-displayable (becoming questions marks ????). Also, the former method requires typing "chcp 437" every time (although it can be configured to automatically do so in "HKLM\SOFTWARE\Microsoft\Command Processor\AutoRun" registry key), while the latter is limited to shortcuts. So I thought it would be useful to share this method which employs a different technique.
For command line programs, Non-English versions of Windows Vista and later actually ship with both English and non-English MUIs (Multilingual User Interface). That means if we don't like the fact the command line interface is localized and shown in non-English (e.g. Chinese Taiwan, i.e. zh-TW), in some simpler way we must be able to set it to English without totally switching to a English user account in Regional Options then reboot the PC. (BTW, don't forget the fact that non-Ultimate/Enterprise editions of Windows cannot officially install MUI).
Concept (Temporary Language File Renaming)
Upon investigation with Sysinternals Process Monitor, I noticed whenever Windows fails to locate a .exe.mui file in any zh-TW directory, it falls back to locating the .exe.mui in en-US. Then an idea came: Why not temporarily rename the .mui file in zh-TW to something else so that it just falls back to using the one in en-US? Now, it has been confirmed this technique works, except that it is a lot of work deciding which system files can be renamed, unprotecting those files as they are protected by WRP (Windows Resource Protection), renaming every single command-line executable... Comes "Englishize Cmd" for this. "Englishize Cmd" is a simple customizable program (batch script) I wrote to automate this tiresome process so that changing back and forth from English to non-English is easier.Instructions
"Englishize Cmd" comes with 4 files:- "EnglishizeCmd.bat" for changing command line tools from non-English to English.
- "RestoreCmd.bat" to restore everything back to original language.
- "_lang_codes.txt" is a modifiable list containing all non-English language codes. It includes most languages but in case your language is not there, add it and "Englishize Cmd" will support it.
- "_files_to_process.txt" is a modifiable list of file names of command-line executables that will be affected in the change. All commands in Windows Vista and 7 should be covered (although it contains much more commands than there actually are, it doesn't matter because it has no effect on commands that don't exist.) If you decide some commands are better left localized rather than being changed to English, remove them from this list before running "EnglishizeCmd.bat". Also, although the list covers command-line executables, you can add GUI – Graphical User Interface - programs such as Paint - mspaint.exe and lots of others to "_files_to_process.txt". There is a limitation here though. Windows comes with both English and non-English .mui files for command-line programs only; by default .mui for GUI programs don't exist in en-US folder until users install the English MUI through Windows Update) or Vistalizator (for non-Ultimate/Enterprise Windows users).
Tip: If Englishize Cmd is installed in the computer (instead of using it the portable way), the above files would be located in either %ProgramFiles(x86)%\wandersick\EnglishizeCmd
(for an all-user setup) or %LocalAppData%\wandersick\EnglishizeCmd
(for a per-user setup)
Video Demonstrating Englishize Cmd
(Tip: Enable YouTube captions for a walkthrough)
Safety Design
Englishize Cmd has been designed with safety in mind; it does not allow a .mui to be disabled when its en-US counterpart is not found, in order to prevent from causing system problems. On the other hand, 'RestoreCmd.bat' restores original permission and ownership information in addition to renaming language files back to original file names. It is recommended to run 'RestoreCmd.bat' after use to fall back to original configuration at once. Next time, when it is desired to use Englishize Cmd, simply repeat the procedure of running 'EnglishizeCmd.bat' and 'RestoreCmd.bat' again.Suggestions
Have you found a bug or got a suggestion? Please drop me a line here.Download
Over the years, Englishize Cmd has been seen referenced by or integrated in several projects by others. Feel free to continue doing so, and thanks for linking back even if it is optional.⭐ Download Englishize Cmd and its source code on GitHub .
Word of Mouth
Below are some of the kind comments left by users of the script. (Thanks!)
- "You provide a really great script. It saved my life because we here at school need the English commands in cmd with German OS language in Windows 10."
- "It's a very useful app. Thanks."
- "Your script is awesome!"
- "I just can't thank you enough for your efforts! I really appreciate it. You helped a lot!"
The homepage of Englishize Cmd has also been referenced by Microsoft Support for the discovered technique of renaming .mui files.
Englishize Cmd has been seen referenced by or integrated in several projects by others, such as NetChecker by HakerDefo and Xbox One Disk Partitioning Script by XFiX.
(If you find any additional projects or interesting usage leveraging Englishize Cmd, feel free to let me know!)
Release History
Ver | Date | Update | MD5 |
2.0 | 20200705 | - Added the option to install (and uninstall) Englishize Cmd into system for ease of use, alongside existing portable option. - Fix (remove) EnableLUA debug message displayed during UAC elevation. - Improved elevation mechanism so that it supports Run prompt. - Append 'Cmd' to commands, i.e. 'EngishizeCmd' and 'RestoreCmd'. - Add support for '/quiet' parameter for unattended usage (suppress 'pause' messages) | Refer to GitHub Releases |
1.7a | 20140513 | A quick fix to patch the recently updated restoration script which launched incorrect batch script during elevation. | c0b89ec00a51403db6afc650cc4dba16 |
1.7 | 20140511 | Fixes non-stop prompting when run as standard user w/o UAC. | 6ae00a4461d0946d38f442e279c416fe |
1.6a | 20140105 | A quick fix to improve the last version. | 72a3fe23d386d400f0b6d7d31b0562d7 |
1.6 | 20140105 | 1. Fixed bug in some non-English localized versions of Windows where 'Administrators' group account is named something else. Thanks Markus (echalone). 2. Confirmed working in Windows 8.1. | 0f45d9df16c9597a58804103fc0b492e |
1.5 | 20130215 | 1. Support for mui files under %systemroot%\syswow64. 2. Restoration script now restores original permissions and ownership (TrustedInstaller). 3. Confirmed working in Windows 8. Updated with new CLI tools. | 8f6a103cad75167408f7dce43460eff9 |
1.4a | 20120408 | Fixed "_lang_codes.txt". It should not contain any en-XX languages; otherwise, even English is disabled. | 6793d377acd497643a9c762d3fed6c81 |
1.4 | 20120407 | Improved "_lang_codes.txt" so that all system languages are supported. (Please report if your locale is not included) | dc458d3e02d72956a61021bb0d90c2ff |
1.3 | 20100428 | Now asks for elevation automatically. Added check for Windows version. | 2312bb99d93915a7645237dbb1de2191 |
1.2 | 20100420 | Documentation and coding improvements | b25aa93e43577b3209f4aa57d9966e60 |
1.1 | 20100416 | Added check for admin rights | d4082b73326963ecf17f4801106bc371 |
1.0 | 20100401 | First public release | d8f0e80c6c6fc9f03629aab911f102ee |
Welcome to support this project by buying a cup of coffee if this tool is useful to you. 😊 Thanks!
Hello, Englishize doesn't work for me. Windows 7 64bit Polish (pl) rofroldeletitplease@gmail.com
ReplyDeleteHi,
ReplyDeleteCould you please use PSR (problem steps recorder) to record a run of Englishize Cmd and send me the .mht file PSR generates at the end?
PS: for help on using PSR, please see: http://technet.microsoft.com/en-us/windows/dd320286
To anyone having the same issue: The bug was fixed in version 1.4.
ReplyDeletecould you advise me what to do with the same problem on win XP???
ReplyDeleteHi. I'm running out of time for a reply but I'll do my best.
DeleteThere is no way officially, because only *English* Windows XP *Professional* supports the MUI packs.
For other languages, I just came up with a thought: How about we workaround by copying the exes (e.g. taskkill, getmac.exe) from an English system to the target non-English system to run?
I just tried it. It works for some exes but not all. Those that works (taskkill.exe, getmac.exe) display messages in English, while those that don't (find.exe, fc.exe) still display messages in the native language.
Reminder: For security and stability reasons, do not replace the exes. Instead, run the English ones in a separate path.
Hi. After running Englishize, commands like ipconfig works fine in English, but it doesn't work for the chddsk command. I am running Win 7 Ultimate in Chinese. Please advise.
ReplyDeleteHi,
DeleteAs stated in pt. 6 in 'List of Features', Englishize Cmd works for most commands but does not work for a few. This is a limitation of this technique.
As a workaround, you may use 'chcp 437'.
If you are only looking for help on using the command (i.e. /?), instead of performing 'chkdsk /?' (for example), you may try a specially crafted command prompt (ECPP) I created which supports 'man' and 'man2' command (i.e. manual) that display a more detailed command line reference in English.
See here a screenshot how it works:
http://goo.gl/photos/bQqbxzTyPj
I haven't publicly released a version that support this feature yet. If you want to beta-test that, feel free to send me an email at gmail.com.
Regards,
wandersick
Good evening how a about the other way around. I'm using English version win 7 sp1 already I want it to be in Japaneses ... Can you tell me how??? Because I have kanji batch scrip I receive from friend in japan whenever I lunch it the character is mess up ... then close batch automatically ..
ReplyDeleteHi sasuke,
DeleteIn your case, you just have to change the "Language for non-Unicode programs" setting from English to Japanese in "Control Panel > Region and Language".
Here's a user guide for that:
http://www.coscom.co.jp/learnjapanese801/japanesefont/nonunicode_win7.html
Hope that helps.
wandersick
hi there im using win 8 italian language how can i change it into english
ReplyDeleteHi. If you mean the whole system user interface (instead of only commands-line tools), then the above method is not for you. What you need is to follow the instructions in this guide to install the official English language pack: http://support.microsoft.com/kb/2607607
DeleteHey there!
ReplyDeleteI have a german Windows 7 x64 and it didn't work for me at first. I analyzed it and recognized that cacls tries to give the rights to the group administrators, which didn't exist because in the german Windows version its administratoren... but I changed every occurrence of administrators to %USERNAME% in englishize and restore and that worked just fine.
Sadly the command "net use" wasn't translated, so I actually couldn't use it in the end... still, maybe my little adventure might be of some use to you ;)
Best regards,
Markus
Markus,
DeleteThat's informative. Thanks so much!
I've fixed the problem and updated the utility to new version 1.6. Feel free to give it a try!
Best Regards,
wandersick
Englishize Cmd has been tested on Windows 10 editions until the latest LTSB, Windows 10 1607 x64, and confirmed to work. As there are many versions of Windows 10, your mileage may vary though :)
ReplyDeleteHello, I tried to use your program in Window 7 Professional with German language. It does not work for me. Is there anything to do?
ReplyDeleteTy.
Hi Nam,
DeleteThe problem with German Windows systems was fixed in v1.6 years ago thanks to the message from another German reader, echalone (left here on January 4, 2014). He successfully used Englishize Cmd to translate applications that Englishize Cmd supports (e.g. ipconfig, robocopy), except those that are not supported due to limitations of some commands, e.g. "net use".
Therefore, could you please provide more details by describing what you are trying to do and how it does not work? For example, commands you are trying to run and any error messages? You may email screenshots to me ([put_my_name_here]@googlemail.com).
Thanks,
wandersick
Hello,
ReplyDeletegreat script! We are using it since the beginning of windows 10, but unfortunately it doesn't work anymore for us (German to English CMD) with the 1809 Version of Windows 10.
(The below has been emailed to the original question owner a long time ago. I forgot I still had to answer the question in the comment section of this blog article, so here it comes!)
ReplyDeleteThanks for emailing a detailed problem report to me. After my test using your German Windows 10 1809 ISO, I see that Microsoft should have stopped including certain en-US files (e.g. ipconfig.exe.mui) for the German release of Windows 10 1809.
Please find the workarounds as follows. (For readers out there, if you have any ideas too, feel free to comment.)
Method 1. Copying missing MUI files from an English OS
Steps
a. Copy e.g. ipconfig.mui.exe from an English version of Windows 10 1809* (CPU architecture has to match, i.e. either x64 or x86)
b. Run Englishize Cmd (as usual)
I tried this and it works – ipconfig command was successfully run in English on German Win 10 Pro 1809.
*To acquire the latest English version of Windows 10, a way is go to download the trial version from Microsoft at https://www.microsoft.com/en-us/evalcenter/evaluate-windows-10-enterprise. However, this may not be the version you need, so you would have to look elsewhere.
Method 2. Installing English Windows 10 and German language pack
Another workaround I can think of is to install the English version of Windows 10 1809 first and then install German language pack next (instead of German version of Windows 10 1809 and then English language pack).
That way, you will get the en-US .mui language files.
Other notes
- I found that this issue does not affect my mother language, as I just installed a Taiwan version of Win 10 1903 for testing and it still includes en-US ipconfig.exe.mui.
- Maybe the German Windows 10 team of Microsoft forgot to do this for the 1809 version? :)
- If you have time, you may leave a friendly message to the German team of Microsoft, consulting them why :)
- This is the official German Windows 10 forum of Microsoft: https://social.technet.microsoft.com/Forums/de-DE/home?category=Windows10ITPro
BTW, I may consider doing a minor update of the Englishize Cmd to v1.7b or something (or simply updating the blog post) to remind users of this issue and the workarounds above.
Kindly let me know if you think of anything else :)
Regards,
wandersick
I just downloaded englishize.bat. It's a very useful app. Thanks.
ReplyDeleteWill the command:
icacls "!destination!\*.txt" /deny everyone:(d,wdac) /c
work on a japanese windows 10 pc? Or should I replace "everyone" with its SID which is *s-1-1-0?
I got the information from https://ss64.com/nt/icacls.html
Hi Jimwell,
DeleteThanks for your question. Using SID instead of "Everyone" sounds like a nice idea to make things work across regions, as I don't know if there are Windows editions or regions where "Everyone" is translated to the localized language where commands involving the use of "Everyone" would not work.
Good luck!
Thanks for the response.
ReplyDeleteMine was interesting. (german version)
ReplyDeleteAs i actually had set everything to english, run englishize cmd, still doesnt work.
I found out thtat ipconfig was already in en-us and de-de ipconfig config has been disable.
I need to change language from english(canada) to english (united states).
That solves the problem !
Thanks for sharing!
Delete