Description du projet
SharpKeys est un utilitaire qui gère une clé de registre permettant à Windows de remapper une touche à n’importe quelle autre. L’application comprend une liste des touches courantes du clavier et une fonction Type Key pour reconnaître automatiquement la plupart des touches du clavier. Elle a été développée à l’origine en C# en utilisant .NET v2 mais a été mise à jour pour prendre en charge .NET 4.0 Client Profile
Appel à la rétroaction!
J’ai finalement fusionné le changement de code qui modifie la façon dont les touches sont entrées dans la liste, ce qui inclut la recherche de codes de touches à trois octets et devrait permettre la capacité de remapper Alt+Gr. Ce que je ne sais pas, c’est si cela fonctionne ou non, donc si vous réussissez ou non à remapper la touche Alt+Gr, merci de le faire savoir dans la section Issues – merci !
Mission originale:
C’est quelque chose que j’ai jeté ensemble pour aider les gens avec leurs mappages de clavier. Qu’est-ce qu’un mapping de clavier ? Combien de fois par jour appuyez-vous accidentellement sur la touche cAPS lOCK par erreur et finissez-vous par devoir revenir en arrière et retaper des trucs ? Pour moi, c’était au moins une fois par heure – en fait, j’avais l’habitude de retirer la touche de verrouillage des majuscules pour ne plus l’enfoncer, mais j’ai trouvé quelque chose de mieux dans Windows XP, ainsi que dans 2000, Server 2003, Vista, Windows 7, Windows 8 et Windows 10. Il y a un hack de registre peu utilisé qui vous permet de remapper les touches d’un clavier. Pour moi, cela signifiait que je disais à mon ordinateur de traiter la touche Caps Lock comme si c’était une touche shift, ce qu’il fait maintenant.
Plus je commençais à travailler avec d’autres claviers, plus je voulais avoir cette capacité à mapper d’autres touches à travers mon clavier, mais travailler avec les numéros Hex et devoir trop chercher les codes de numérisation pouvait être pénible…. d’où SharpKeys.
SharpKeys n’est responsable d’aucune des fonctionnalités de remappage du clavier – il expose simplement une clé de registre qui contrôle la façon dont Windows remappe les touches et qui est disponible pour nous depuis Windows 2000. La liste des touches qui sont incluses dans l’application proviennent de la plupart des claviers basés aux États-Unis que j’ai utilisés au fil des ans et il n’est pas garanti qu’elle soit 100% complète pour les claviers mondiaux.
Installer
Manuel
Cliquez sur le bouton Releases dans l’en-tête ci-dessus
Note : que pour les versions ARM de Windows, veuillez utiliser le fichier ZIP pour obtenir l’EXE : le MSI recherche x64/x86.
Winget
Si vous utilisez WinGet
winget install sharpkeys
scoop
Si vous utilisez scoop
scoop install sharpkeys
Comment l’utiliser ? Mise en route
- Lancez SharpKeys, en sélectionnant son icône dans le menu Démarrer. Si des erreurs sont signalées, veuillez consulter la section Dépannage ci-dessous
- Ajouter un nouveau mappage de clé ou modifier un mappage existant
- Cliquer sur « Write to registry » et attendre une confirmation que le registre a été mis à jour avec succès
- Fermer SharpKeys et soit se déconnecter (et se reconnecter), soit redémarrer pour appliquer les nouveaux mappages
Les choses que SharpKeys fera :
- Mapper une touche entière à n’importe quelle autre touche – par ex.p. ex. vous pouvez remapper le verrouillage des majuscules à une touche Shift
- Mapper plus d’une touche à une seule touche – p. ex. vous pouvez remapper chaque touche d’un clavier à la lettre Q
- Vous obliger à chercher la touche ALT gauche ou droite dans la liste des touches disponibles parce que Type Key ne peut pas scanner pour ALT
- Vous permettre de permuter deux touches entre elles – p. ex.par exemple, vous pouvez échanger la touche Windows gauche avec la touche Control gauche et vice versa
Les choses que SharpKeys ne fera pas :
- Mapper plusieurs pressions de touches à une touche – par exemple, il ne supportera pas une tentative de remapper Ctrl+C à la touche F5
- Mapper les clics de souris à n’importe quelle touche
- Supporter certaines touches matérielles qui n’arrivent jamais dans Windows – par ex. Les boutons de volume de Logitech ou la plupart des touches Fn
- Supportent plusieurs mappages pour différents utilisateurs – la touche Windows en cours de modification est pour une machine entière
- Vous protéger de vous-même – si vous désactivez votre touche DEL et que vous ne pouvez pas vous connecter parce que Ctrl+Alt+Del ne fonctionne pas maintenant, vous devrez reformater
Foire aux questions et réponses supplémentaires
Q : Puis-je remapper une combinaison de touches sur une seule touche ?
A : Malheureusement, non. SharpKeys ne remappe que des touches entières et non une touche modifiée. Par exemple, vous pouvez remapper Ctrl ou C mais vous ne pouvez pas remapper Ctrl+C sur une autre touche. Cela dit, l’outil Microsoft PowerToys offre cette fonctionnalité – vous pouvez en savoir plus sur leur outil ici : Microsoft PowerToys.
Q : Puis-je remapper un clic de souris sur une nouvelle touche ?
A : Désolé, mais non. La technologie de remappage que Windows utilise pour remapper vos touches n’est pas consciente de votre souris.
Q : Pourquoi ne puis-je pas remapper ma touche Fn sur mon clavier ?
A : Certaines touches ne parviennent tout simplement jamais à Windows. Dans le cas de la plupart des touches Fn, elles sont interprétées par le matériel et ne sont jamais transmises au système d’exploitation, peu importe comment elles semblent fonctionner… si Windows ne voit pas la touche, il n’y a aucun moyen pour la touche d’être remappée par Windows.
Q : Tapez une touche affiche 00_100 – puis-je remapper cette touche ?
A : 00_100 est un code fourre-tout que Windows rapporte lorsqu’une clé est capturée par le matériel ou un autre pilote, il n’y a donc aucun moyen de remapper cette clé avec succès, d’autant plus que plusieurs clés peuvent renvoyer le même code 00_100.
Q : Type a Key shows Unknown Key – can I remap this key?
A : Les chances sont que c’est juste une clé qui n’a jamais été vue par SharpKeys auparavant, donc il ne sait pas quoi faire avec elle. Ouvrez un problème sur ce site pour ce projet et quelqu’un de la communauté Open Source peut regarder pour l’ajouter.
Q : Tapez une clé montre un code qui est E0_nnnn – puis-je remapper cette clé ?
A : Si un scancode a 6 caractères, alors c’est ce qu’on appelle un scancode triple octet qui est quelque chose qui ne peut pas être remappé par le Registre Windows. Pour remapper une touche de ce type, vous aurez besoin d’un remappeur actif comme Microsoft PowerToys ou AutoHotKeys ou de l’application fournie avec le clavier (par exemple, Options de Logitech) si elle est disponible.
Q : Qu’est-ce que c’est que toutes ces histoires de « codes de balayage » ?
A : Chaque fois que vous appuyez sur une touche de votre clavier, il envoie un code binaire au contrôleur de clavier de votre PC. Ce code est transmis à Windows (dans la plupart des cas) et Windows l’interprète comme « ils ont appuyé sur le code 0x3A donc c’est le verrouillage des majuscules – activez-le ! ». Les versions modernes de Windows vérifient également une clé de registre au démarrage de la machine. Cette clé de registre indique à Windows « même s’ils ont appuyé sur 0x3A, traitez-le comme 0x2A » (ce qui correspond à la majuscule gauche). Ce que SharpKeys fait, c’est éditer cette clé de registre en utilisant une interface utilisateur simple et en évitant l’éditeur de registre.
Q : J’ai un nouveau PC qui a un bouton de raccrochage que je veux remapper – puis-je remapper cette clé ?
A : Beaucoup de gens demandent E0_1F65, mais comme la question ci-dessus l’appelle, les scancodes à trois octets ne peuvent pas être remappés avec le registre Windows. Cela s’applique aux ordinateurs portables ou de bureau de Lenovo, HP, Dell et de tout autre fabricant de PC.
Q : Type a Key ne reconnaît pas la touche Alt lorsque je la tape – comment puis-je remapper cette touche ?
A : Le scancode de la touche Alt ne passe pas par le système, pour arriver à la fenêtre Type a Key. Fondamentalement, lorsque vous tapez Alt, Windows l’envoie au menu système et l’active, plutôt que d’envoyer le scancode à la fenêtre. Vous pouvez toujours remapper cette touche, mais vous verrez qu’il faut la sélectionner manuellement dans la liste ; vous la trouverez dans le regroupement des touches marquées comme » Spéciales « .
Q : Quel est le remappage le plus fou que vous ayez fait ?
A : Je pense que c’est mon remappage actif sur les produits Surface, où certaines des touches de navigation du curseur partagent l’espace avec F9-F12. Comme j’utilise beaucoup F1-F8 pour Office ou Visual Studio, je ne veux pas avoir à me rappeler d’appuyer sur Fn, mais je ne veux pas non plus laisser Fn-Lock activé parce que j’ai aussi besoin de Home, End, PgUp et PgDn. Donc, je laisse Fn-Lock activé et j’ai remappé F9-F12 à Home/End/PgUp/PgDn et ensuite Home/End/PgUp/PgDn à F9-F12. J’ai également désactivé le verrouillage des majuscules et remappé l’Alt droit en Windows gauche parce que c’est tout simplement bien pour un ordinateur portable. Puisque d’autres personnes pourraient s’en servir, j’ai mis le fichier SKL dans le dépôt ici.
Q : Qu’est-ce qu’une touche » inconnue » ?
A : Il n’y a aucun moyen pour moi d’obtenir un laboratoire de claviers à tester, surtout lorsque presque tous les claviers modernes sont livrés avec des touches supplémentaires ou des touches spécifiques à une langue – certaines entreprises fabriquent même des claviers avec des boutons spéciaux pour leur propre logiciel ou leur gamme de produits. Par conséquent, lorsque vous utilisez Type Key et qu’il frappe une touche que SharpKeys ne connaît peut-être pas, celle-ci peut toujours être mappée, même si l’étiquette indique « inconnu ». S’il y a une touche que vous avez sur votre clavier qui est répertoriée comme inconnue mais que vous avez un utilisé pour elle, envoyez-moi un courriel et je verrai pour ajouter une meilleure étiquette pour elle.
Q : Que se passe-t-il si j’utilise votre utilitaire et que j’ajoute un tas de mappage de touches et que je ne peux plus utiliser mon ordinateur ?
R : Eh bien, plus ou moins, vous êtes foutu. J’ai beaucoup testé cette application, et il y a très peu de risques à modifier cette entrée du Registre, mais si vous désactivez une touche dont vous avez besoin pour votre mot de passe, vous n’avez pratiquement pas de chance. Vous pouvez essayer d’utiliser le clavier à l’écran disponible via les options d’accessibilité, car il ne sera pas affecté par les paramètres de remappage de Windows. Vous pouvez également essayer de brancher un clavier USB si vous êtes sur un ordinateur portable ou vous pouvez démarrer en mode sans échec et supprimer la clé de registre Scancode Map, mais vous devrez vous débrouiller seul. Cela dit, soyez prudent et vous utilisez SharpKeys à vos risques et périls !
Q : Je dois avoir le support des touches combinées ou des touches activées sur trois octets ! Pourquoi ne faites-vous pas ce changement ?!
R : Il n’y a absolument rien que je puisse faire à ce sujet : Windows remappe les touches et cette application est juste une UX pour la clé de registre qui contrôle le remappage. En fait, je pense avoir déjà répondu à cette question dans la FAQ. Cela dit, si vous voulez un niveau plus profond de prise en charge du remappage, veuillez consulter Microsoft PowerToys.
Les dispositions de clavier sauvegardées existantes
- Colemak – SKL via GitHub par @NathanDai5287
- Surface – fichier SKL décrit dans la FAQ
Espoir des contributions GitHub :
- Une liste plus complète pour supporter plus de claviers internationaux
- Une fonctionnalité d’import/export qui permet aux gens de permuter les keymappings plus facilement
- Un support continu pour les nouveaux .NET Frameworks
.