Comment changer la disposition du clavier via la ligne de commande cmd.exe sous Windows XP / 7?

Réponses:

11

Oui.

http://blogs.msdn.com/b/shawnste/archive/2007/04/12/configuring-international-settings-from-the-command-line.aspx

http://msdn.microsoft.com/en-us/goglobal/bb964650#eyb

exemple de ligne de commande:

control intl.cpl,, /f:"%CD%\AddKeyboardLanguage.xml"

Exemple AddKeyboardLanguage.xml:

<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend"> 
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/></gs:UserList> 
<gs:InputPreferences> 

<!--ch-Google--><gs:InputLanguageID Action="add" ID="0804:E0200804"/>

</gs:InputPreferences>
</gs:GlobalizationServices>

Exemple RemoveKeyboardLanguage.xml:

<gs:GlobalizationServices xmlns:gs="urn:longhornGlobalizationUnattend"> 
<gs:UserList>
<gs:User UserID="Current" CopySettingsToDefaultUserAcct="true" CopySettingsToSystemAcct="true"/></gs:UserList> 
<gs:InputPreferences> 

<!--ch-Google--><gs:InputLanguageID Action="remove" ID="0804:E0200804"/>

</gs:InputPreferences>
</gs:GlobalizationServices>
lapin
la source
2
Je me demande s'il y a une commande du cmd juste pour dire quelle disposition de clavier vous utilisez actuellement dans Windows7? Je veux dire une commande qui renvoie une valeur de chaîne de la mise en page de langue que vous utilisez - pas de changer la mise en page simplement en vous renseignant.
doctorat
2

Windows 8 apporte un nouveau module International PowerShell. Malheureusement, il ne semble pas que cela puisse être rétroporté ou qu'il existe une alternative à Windows 7


Configurer les paramètres internationaux à l'aide des applets de commande PowerShell

Dans Windows 8, vous pouvez utiliser les applets de commande PowerShell des paramètres internationaux pour modifier la langue sur une installation Windows en cours d'exécution. L'avantage de l'utilisation des applets de commande PowerShell est que vous pouvez les incorporer dans un script pour faciliter le déploiement et la configuration de Windows. Source: http://technet.microsoft.com/en-us/library/hh825705.aspx

  1. Ouvrez une invite Windows PowerShell.
  2. Importez le module des paramètres internationaux en exécutant la commande suivante:

    ipmo international

  3. Affichez les informations de paramètres régionaux sur l'ordinateur en exécutant la commande suivante:

    Get-WinSystemLocale

  4. Définissez les paramètres régionaux pour la région et la langue souhaitées. Par exemple, la commande suivante définit les paramètres régionaux du système sur japonais (Japon):

    Set-WinSystemLocale ja-JP

thommck
la source
1
Cette réponse modifie les paramètres régionaux . Cela ne semble pas affecter les claviers, tout au plus la page de code sera différente.
jiggunjer
2
Set-WinUserLanguageList -Force 'ja-JP'changera la langue de saisie du clavier. Notez que l'utilisation de -Forceest uniquement pour ne pas obtenir la boîte de dialogue contextuelle. Get-WinUserLanguageListvous donnera la liste des langues disponibles pour l'utilisateur pour la saisie.
yasouser
2

"Windows 8 apporte un nouveau module International PowerShell. Malheureusement, il ne semble pas que cela puisse être rétroporté ou avoir une alternative à Windows 7"

Vous pouvez essayer ceci (exemple) .. cela active uniquement les dispositions de clavier sélectionnées et efface les autres

Install-Module -name timezone -force
#Sets the systems timezone on "Western Europe Standard time" 
$langlist = New-WinUserLanguageList en-US

#Clears the other input methods from the displayed language
$langlist[0].InputMethodTips.Clear()

#Sets and adds the swiss-German keyboard
$langlist[0].InputMethodTips.add('0409:00000807')

#Sets and adds the swiss-french keyboard
$langlist[0].InputMethodTips.add('0409:0000100C')

#Apply the changes made on the system (and force to avoid the prompt  message)
Set-WinUserLanguageList $langlist -Force
user709166
la source
1

Non (pas via CMD), vous devrez le changer de la manière suivante. Il existait auparavant une keyb.comcommande sous DOS mais elle n'existe plus sous Windows.

La source:

Windows 7 ou Windows Vista

  1. Cliquez sur Démarrer, tapez intl.cpl dans la zone Démarrer la recherche et appuyez sur ENTRÉE.
  2. Sous l'onglet Claviers et langue, cliquez sur Modifier les claviers. Cliquez sur Ajouter.
  3. Développez la langue souhaitée. Par exemple, développez français (Canada).
  4. Développez la liste Clavier, activez la case à cocher français canadien, puis cliquez sur OK.
  5. Dans les options, cliquez sur Afficher la disposition pour comparer la disposition avec le clavier réel.
  6. Dans la liste Langue d'entrée par défaut, cliquez sur Français (Canada) - Français canadien, puis cliquez deux fois sur OK.
  7. Dans la boîte de dialogue Options régionales et linguistiques, cliquez sur OK.
  8. Cliquez sur la barre de langue, puis sur FR français (Canada).

Windows XP

  1. Cliquez sur Démarrer, tapez intl.cpl dans la zone Exécuter, puis appuyez sur ENTRÉE.
  2. Sous l'onglet Langues, cliquez sur Détails.
  3. Sous Services installés, cliquez sur Ajouter.
  4. Dans la liste Langue d'entrée, sélectionnez la langue souhaitée. Par exemple, sélectionnez Français (Canada).
  5. Dans la liste Disposition du clavier / IME, cliquez sur Français canadien, puis sur OK.
  6. Dans la liste Sélectionnez l'une des langues d'entrée installées à utiliser lorsque vous démarrez votre ordinateur, cliquez sur Français (Canada) - Français canadien, puis sur OK.
  7. Dans la boîte de dialogue Options régionales et linguistiques, cliquez sur OK.
  8. Cliquez sur la barre de langue, puis sur français (Canada).

Mais vous pouvez utiliser Linuxloadkeys .

sealz
la source
À votre santé! +1 à vous! :)
studiohack
0
$psdrive = New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS

Set-ItemProperty -Path "HKU:\.DEFAULT\Keyboard Layout\Preload\" -Name 1 -Value 00001033

$psdrive | Remove-PSDrive

Cela fonctionne bien dans Windows 7 PowerShell, mais vous devez vous déconnecter et vous reconnecter pour l'activer, il change la mise en page en anglais si vous voulez une autre langue, vous devez changer le numéro de valeur, vous pouvez les trouver ici: https: // www. science.co.il/language/Locale-codes.php

Jana-Panda
la source
0

Pour information: Set-WinUserLanguageListcomme suggéré dans d'autres réponses, non seulement vous changez la langue d'entrée du clavier active , mais vous remplacez votre liste actuelle de langues d'entrée (activées). Pour configurer deux langues ou plus parmi lesquelles vous pouvez basculer, utilisez quelque chose comme ceci:

Set-WinUserLanguageList -Force en-US,sv-SE

La langue indiquée comme premier argument de la liste sera sélectionnée comme langue active, ce qui peut être un moyen efficace de modifier à la fois la langue active et la liste globale des langues de clavier disponibles.

Per Lundberg
la source