Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

my problem is a simple one but clearly the solution is not as I've spent the last two hours searching to find a solution. My wife has a French computer with Windows XP in French... Therefore the default Language and keyboard is in French. I am English and touch type and therefore don't give a damn about what's actually written on the keys, I just want to be able to change the Language and keyboard to UK English and for it to stay there until its switched back. The Alt (left) + shift changes the language as can be seen on the language toolbar but the moment you seem to do anything, it switches back to French. I don't want to use different logins as I often help my wife on the computer but it drives me crazy when the keyboard language keeps switching. For example. Close all Windows so that just the desktop is displayed. Select UK English using Alt + shift. Then open InternetExplorer. guess what it changes back to French. So switch again using Alt+ shift because the application is clearly application dependent. Now click on the address bar to type a URL and low and behold it's changed back to French again. Even when you stay within Internet Explorer and you right click and open in another tab it changes the language back to French.

I've seen a lot written on this subject but nobody seems to have an answer and I am not alone with this problem Is there a registry setting so that the application will not look at the default language but take that which is currently set. Are there any thirty party solutions to the problem? Does Windows Vista or Windows 7 also have this very very annoying problem?

Thanks to all who take the time to reply and save my sanity

share|improve this question
add comment

migrated from stackoverflow.com Oct 7 '09 at 21:47

This question came from our site for professional and enthusiast programmers.

4 Answers

I use regularly two different keyboard languages within the same account, and what I have done is get rid of the language bar and the ALT-SHIFT shortcut. Instead, I use ALT-SHIFT-1 for the primary language, and ALT-SHIFT-2 for the second one (the settings can be changed in Control Panel, Regional and Language Options, Languages tab, Details... button, Key Settings... in the Settings tab.). That way, it’s become second nature to press the right combination before start typing in a new window.

share|improve this answer
add comment

Does this behaviour apply if you use the longer "change language" method- through regional options?

Third party method- shouldn't be too hard with Autohotkey. You can assign a hotkey to tell it to replicate whatever keyboard (or mouse) method you'd use to change language. Not a solution, but it'll make the frequent switching much swifter.

share|improve this answer
add comment

The problem is that IE uses a different one for each page. In other appllications, the shortcut keeps it working. There are two solutions: you can use FireFox, which stores the keyboard setting for the ENTIRE application, or you can use the method that Jiri sgguested. The problem with either of these methods is that they do not affect the applications that are currently open.

I suggest doing both. That way, when you open a new program it will respect the current default language and when you change the web browser's language, all the pages will change their keyboard layouts.

And, in answer to your other question: Vista and 7 use the same logic as XP when switching languages.

share|improve this answer
add comment

You can change current language for application by keyboard shortcut (ALT+SHIFT) or you can change default language for applications in control panels applet.

You can use this VB script (save as change_language.vbs) to automaticaly change default language:

Dim Wsh
Set Wsh = Wscript.CreateObject("Wscript.Shell")
Wsh.Run("rundll32.exe shell32.dll,Control_RunDLL intl.cpl,@1,0")

WScript.Sleep 1000
Wsh.SendKeys "+{TAB}"
WScript.Sleep 100
Wsh.SendKeys "{RIGHT}"
WScript.Sleep 100
Wsh.SendKeys "{RIGHT}"
WScript.Sleep 100
Wsh.SendKeys "{TAB}"
WScript.Sleep 100
Wsh.SendKeys " "
WScript.Sleep 500
Wsh.SendKeys "{DOWN}"
WScript.Sleep 500
Wsh.SendKeys "{ENTER}"
WScript.Sleep 200
Wsh.SendKeys "+{TAB}"
WScript.Sleep 200
Wsh.SendKeys "{ENTER}"

You have to tweak script a little depending on how many languages you have installed in control panel applet. I have two and I need 2 VB scripts, the second one is modified - line with DOWN action is instead UP action.

You can set up those scripts to some keyboard shortcut using standard windows procedure - create shortcuts to these scripts on desktop and in properties you can choose keyboard shortcut.

Unfortunately, changing default language does not affect already started applications but only applications you will start.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.