OS X offre cette fonctionnalité vraiment intéressante lorsque vous avez plus de 3 sources d'entrée au clavier (langues) et que vous appuyez sur Cmd + Space vous basculez entre deux d'entre eux seulement.
Si vous voulez passer à une autre (troisième) langue, il vous suffit de tenir Cmd et appuyez sur Space choisir dans la liste des sources d’entrée disponibles.
Comment puis-je avoir une fonctionnalité similaire sur Windows 10? J'ai 3 sources d'entrée et les parcourir pour arriver à celle dont j'ai besoin est vraiment ennuyeux.
On peut attribuer à Windows 10 un raccourci clavier vers une langue:
Allez dans Panneau de configuration -> Horloge, langue et région -> Langue -> Paramètres avancés .
Sous Changement de méthode de saisie , cliquez sur Modifier les touches de raccourci de la barre de langue , puis cliquez sur sur votre langue, et enfin sur Modifier la séquence de touches .
Cela affichera une boîte de dialogue dans laquelle vous pouvez attribuer une touche de raccourci à cette langue:
Comme les touches de raccourci ci-dessus sont assez limitées, il est possible, par exemple, d'utiliser AutoHotkey pour remplacer cette combinaison par une autre combinaison de clavier. Une fois que vous aurez appris AutoHotkey, il sera facile de reproduire le comportement exact d’OSX (vous pouvez également demander de l’aide sur leur forum).
De nombreux scripts AutoHotkey sont disponibles sur Internet et on peut les personnaliser pour répondre à tous les besoins.
L’exemple de script suivant vise à améliorer le fonctionnement de Alt+Shift pour basculer entre les claviers anglais et russes de la fenêtre actuelle:
; This should be replaced by whatever your native language is. See
; http://msdn.Microsoft.com/en-us/library/dd318693%28v=vs.85%29.aspx
; for the language identifiers list.
ru := DllCall("LoadKeyboardLayout", "Str", "00000419", "Int", 1)
en := DllCall("LoadKeyboardLayout", "Str", "00000409", "Int", 1)
!Shift::
w := DllCall("GetForegroundWindow")
pid := DllCall("GetWindowThreadProcessId", "UInt", w, "Ptr", 0)
l := DllCall("GetKeyboardLayout", "UInt", pid)
if (l = en)
{
PostMessage 0x50, 0, %ru%,, A
}
else
{
PostMessage 0x50, 0, %en%,, A
}
Voici quelques fils de discussion proposant des scripts permettant de modifier la disposition du clavier avec diverses fonctionnalités:
Voici quelques produits gratuits qui le font aussi:
Il existe une solution (presque parfaite) à ce problème dans Windows 7 , qu'il est possible de mettre en œuvre dans Windows 10 avec quelques étapes supplémentaires.
La solution repose sur le fait qu'il existe deux entités distinctes dans Windows: le langage de saisie et la disposition du clavier .
Par défaut Alt+Shift parcourt les langues d'entrée configurées . Il s'agit du langage d'entrée que les utilisateurs ajoutent généralement lorsqu'ils ont besoin de langues supplémentaires dans leurs systèmes.
Mais.
Enfin, vous aurez plusieurs langages de saisie différents , pour lesquels vous aurez un raccourci clavier distinct, mais une fois que vous aurez choisi Langage de saisie vous serez en mesure d'utiliser régulière Alt+Shift qui bouclera entre les dispositions de clavier définies "à l'intérieur" de la langue de saisie .
Par souci de simplicité, supposons que vous souhaitiez utiliser 3 langues: anglais, russe et hébreu. Après avoir suivi les étapes ci-dessous, vous aurez trois modes de fonctionnement:
Étapes à configurer.
La configuration du même cas d'utilisation dans Windows 7 est plus simple et ne nécessite pas le téléchargement d'outils supplémentaires.
Il y a une particularité: dans certains programmes, vous pouvez obtenir des caractères tronqués, à moins que vous ne basculiez vers la bonne langue de saisie (par exemple, si vous saisissez une saisie russe déformée, utilisez Ctrl+3 pour passer à la disposition du clavier russe). Mais cela arrive assez rarement et seulement dans certaines circonstances inhabituelles (pour la plupart des utilisateurs de Windows), ne me dérange pas vraiment beaucoup.
AltShift
Le paramètre de registre direct permettant de désactiver la combinaison de touches d'activation du clavier est le suivant:
reg add "HKCU\Keyboard Layout\Toggle" /v "Layout Hotkey" /d 3
Vous pourriez aussi vouloir
reg add "HKCU\Keyboard Layout\Toggle" /v "Language Hotkey" /d 3
reg add "HKCU\Keyboard Layout\Toggle" /v "Hotkey" /d 3
Et pour les nouveaux utilisateurs, essayez ceci (dans une invite élevée):
reg load HKEY_USERS\temp "%USERPROFILE%\..\Default\NTUSER.DAT"
reg add "HKEY_USERS\temp\Keyboard Layout\Toggle" /v "Layout Hotkey" /d 3
reg unload HKEY_USERS\temp
Tapez dans la barre de recherche du menu de démarrage Panneau de configuration -> Cliquez sur Langue -> Cliquez sur Paramètres avancés -> Cliquez sur Modifier les touches de raccourci de la barre de langue -> Cliquez Modifier la séquence de touches
; AutoHotkey Script
#SPACE::
Send ^#{SPACE}
Return
; ♥
; macOS-like input language change algorithm
; Just use WIN + SPACE as normal
; Hold the WIN then tap SPACE to loop
; Test environment
; OS Version : Windows 10 1803
; AHK Version : 1.1.30.01
; Title : default setting should be like this
; Date : 4/8/2019
; Author : who cares
Pour ceux qui, comme moi, se sont retrouvés ici en recherchant le raccourci clavier par défaut pour basculer les claviers, la valeur par défaut dans Windows est Left. Alt + Shift.
Si vous voulez le comportement exact comme dans macOS, sans avoir à configurer, vous pouvez utiliser Ctrl+Win+Space pour basculer entre les deux langues récemment utilisées, comme ce que vous obtenez de Cmd+Space.
Pour basculer vers d'autres méthodes de saisie, comme lorsque vous appuyez sur Cmd+Space deux fois, juste utiliser Win+Space.