Projektbeschreibung
SharpKeys ist ein Dienstprogramm, das einen Registry-Schlüssel verwaltet, der es Windows ermöglicht, eine Taste auf eine beliebige andere Taste umzuordnen. Die Anwendung enthält eine Liste gängiger Tastaturtasten und eine „Type Key“-Funktion zur automatischen Erkennung der meisten Tastaturtasten. Es wurde ursprünglich in C# unter Verwendung von .NET v2 entwickelt, wurde aber aktualisiert, um das .NET 4.0 Client-Profil zu unterstützen
Aufruf zum Feedback!
Ich habe endlich die Code-Änderung eingebunden, die die Art und Weise ändert, wie Tasten in die Liste eingetragen werden, was die Suche nach Triple-Byte-Tastaturcodes einschließt und die Fähigkeit ermöglichen sollte, Alt+Gr umzuordnen. Was ich nicht weiß, ist, ob es funktioniert oder nicht. Wenn Sie also die Alt+Gr-Taste erfolgreich oder erfolglos umbelegen, lassen Sie es die Leute bitte im Problembereich wissen – danke!
Original Mission:
Dies ist etwas, das ich zusammengewürfelt habe, um Leuten mit ihren Tastaturbelegungen zu helfen. Was ist eine Tastaturbelegung? Wie oft am Tag drücken Sie aus Versehen die Tastensperre und müssen am Ende zurückgehen und etwas neu tippen? Bei mir war es mindestens einmal pro Stunde – tatsächlich habe ich die Feststelltaste abgeschaltet, damit ich sie nicht mehr drücke, aber ich habe etwas Besseres in Windows XP gefunden, ebenso wie in 2000, Server 2003, Vista, Windows 7, Windows 8 und Windows 10. Es gibt einen wenig genutzten Registry-Hack, der es erlaubt, Tasten auf der gesamten Tastatur neu zu belegen. Für mich bedeutete das, dass ich meinem Computer sagte, er solle die Feststelltaste wie eine Umschalttaste behandeln, was er jetzt auch tut.
Je mehr ich anfing, mit anderen Tastaturen zu arbeiten, desto mehr wollte ich diese Möglichkeit haben, andere Tasten auf meiner Tastatur zuzuordnen, aber die Arbeit mit den Hex-Zahlen und das Nachschlagen von Scan-Codes konnte schmerzhaft sein…. daher SharpKeys.
SharpKeys ist nicht für die Tastatur-Remapping-Funktionalität verantwortlich – es stellt einfach einen Registry-Schlüssel zur Verfügung, der steuert, wie Windows die Tasten neu zuordnet, und der uns seit Windows 2000 zur Verfügung steht. Die Liste der Tasten, die in der Anwendung enthalten sind, stammt von den meisten US-amerikanischen Tastaturen, die ich im Laufe der Jahre verwendet habe, und es wird nicht garantiert, dass sie für Welttastaturen 100% vollständig ist.
Installieren
Handbuch
Klicken Sie auf die Schaltfläche „Releases“ in der Kopfzeile oben
Hinweis: für ARM-Versionen von Windows verwenden Sie bitte die ZIP-Datei, um die EXE zu erhalten: das MSI sucht nach x64/x86.
winget
Wenn Sie WinGet verwenden
winget install sharpkeys
scoop
Wenn Sie scoop verwenden
scoop install sharpkeys
Wie benutze ich es? Erste Schritte
- Starten Sie SharpKeys, indem Sie das Symbol aus dem Startmenü auswählen. Wenn Fehler gemeldet werden, lesen Sie bitte den Abschnitt „Fehlerbehebung“ weiter unten
- Hinzufügen einer neuen Tastenbelegung oder Bearbeiten einer bestehenden
- Klicken Sie auf „In die Registrierung schreiben“ und warten Sie auf eine Bestätigung, dass die Registrierung erfolgreich aktualisiert wurde
- Schließen Sie SharpKeys und melden Sie sich entweder ab (und wieder an) oder starten Sie neu, um die neuen Zuordnungen zu erzwingen
Dinge, die SharpKeys tun wird:
- Eine ganze Taste einer beliebigen anderen Taste zuordnen – z.z. B. könnten Sie die Feststelltaste auf eine Umschalttaste umbelegen
- mehrere Tasten auf eine einzelne Taste umbelegen – z. B. könnten Sie jede Taste auf einer Tastatur auf den Buchstaben Q umbelegen
- Sie zwingen, in der Liste der verfügbaren Tasten nach der linken oder rechten ALT-Taste zu suchen, da Type Key nicht nach ALT scannen kann
- Erlaubt Ihnen, zwei Tasten miteinander zu vertauschen – z.z. B. können Sie die linke Windows-Taste mit der linken Steuerungstaste vertauschen und umgekehrt
Was SharpKeys nicht kann:
- Mehrere Tastendrücke einer Taste zuordnen – z. B. wird der Versuch, Strg+C der F5-Taste zuzuordnen, nicht unterstützt
- Mausklicks einer beliebigen Taste zuordnen
- Unterstützen Sie bestimmte Hardware-Tasten, die es nie in Windows schaffen – z. B. Logitechs Lautstärketasten oder die meisten Fn-Tasten
- Unterstützen Sie mehrere Zuordnungen für verschiedene Benutzer – die Windows-Taste, die angepasst wird, gilt für einen ganzen Rechner
- Schützen Sie sich vor sich selbst – wenn Sie Ihre Entf-Taste deaktivieren und sich nicht anmelden können, weil Strg+Alt+Entf nicht mehr funktioniert, müssen Sie neu formatieren
Zusätzliche Fragen und Antworten
Q: Kann ich eine Tastenkombination auf eine Taste umbelegen?
A: Leider nein. SharpKeys remappt nur ganze Tasten und nicht eine modifizierte Taste. Zum Beispiel können Sie Strg oder C umbelegen, aber Sie können nicht Strg+C auf eine andere Taste umbelegen. Allerdings bietet das Tool Microsoft PowerToys diese Funktionalität – mehr über das Tool erfahren Sie hier: Microsoft PowerToys.
Q: Kann ich einen Mausklick auf eine neue Taste umbelegen?
A: Leider nein. Die Mapping-Technologie, die Windows verwendet, um Ihre Tasten neu zuzuordnen, kennt Ihre Maus nicht.
Q: Warum kann ich meine Fn-Taste auf meiner Tastatur nicht neu zuordnen?
A: Einige Tasten kommen einfach nie bei Windows an. Im Fall der meisten Fn-Tasten werden sie von der Hardware interpretiert und werden nie an das Betriebssystem weitergegeben, egal wie sie zu funktionieren scheinen… wenn Windows die Taste nicht sieht, gibt es keine Möglichkeit, die Taste von Windows neu zuzuordnen.
Q: Eine Taste zeigt 00_100 – kann ich diese Taste neu zuordnen?
A: 00_100 ist ein Catch-All-Code, den Windows meldet, wenn eine Taste von der Hardware oder einem anderen Treiber erfasst wird, so dass es keine Möglichkeit gibt, diese Taste erfolgreich neu zuzuordnen, zumal mehrere Tasten denselben 00_100-Code zurückgeben können.
Q: Type a Key shows Unknown Key – can I remap this key?
A: Wahrscheinlich handelt es sich nur um eine Taste, die von SharpKeys noch nie gesehen wurde, so dass es nicht weiß, was es damit tun soll. Eröffnen Sie ein Problem auf dieser Seite für dieses Projekt und jemand aus der Open-Source-Gemeinschaft kann sich darum kümmern.
Q: Type a Key zeigt einen Code an, der E0_nnnn ist – kann ich diesen Schlüssel neu zuordnen?
A: Wenn ein Scancode 6 Zeichen hat, dann ist es ein sogenannter Triple-Byte-Scancode, der nicht von der Windows-Registry neu zugeordnet werden kann. Um eine solche Taste neu zu belegen, benötigen Sie einen aktiven Remapper wie Microsoft PowerToys oder AutoHotKeys oder die App, die mit der Tastatur geliefert wurde (z.B. Logitech’s Options), falls verfügbar.
Q: Was ist das alles für ein Zeug über „Scancodes“?
A: Immer wenn Sie eine Taste auf Ihrer Tastatur drücken, sendet diese einen binären Code an den Tastaturcontroller in Ihrem PC. Dieser Code wird an Windows weitergegeben (in den meisten Fällen) und Windows interpretiert ihn als „Sie haben den Code 0x3A gedrückt, das ist also die Feststelltaste – schalten Sie sie ein!“ Moderne Versionen von Windows überprüfen außerdem einen Registrierungsschlüssel, wenn der Computer hochfährt. Dieser Registry-Schlüssel sagt Windows: „Auch wenn sie 0x3A gedrückt haben, behandle es als 0x2A“ (das ist die linke Umschalttaste). Was SharpKeys macht, ist diesen Registry-Schlüssel zu bearbeiten, indem es eine einfache Benutzeroberfläche benutzt und den Registry-Editor umgeht.
Q: Ich habe einen neuen PC, der einen Auflegeknopf hat, den ich neu zuordnen möchte – kann ich diesen Schlüssel neu zuordnen?
A: Viele Leute fragen nach E0_1F65, aber wie die obige Frage schon sagt, können Triple-Byte-Scancodes nicht mit der Windows-Registry neu zugeordnet werden. Dies gilt für Laptops und Desktops von Lenovo, HP, Dell und allen anderen PC-Herstellern.
Q: Type a Key erkennt die Alt-Taste nicht, wenn ich sie eingebe – wie kann ich diese Taste neu zuordnen?
A: Der Scancode der Alt-Taste schafft es nicht durch das System, um zum Type a Key-Fenster zu gelangen. Grundsätzlich sendet Windows bei der Eingabe der Alt-Taste diese an das Systemmenü und aktiviert es, anstatt den Scancode an das Fenster zu senden. Sie können diese Taste immer noch umbelegen, aber Sie müssen sie manuell aus der Liste auswählen; Sie finden sie in der Gruppierung der Tasten, die als „Spezial“ markiert sind.
Q: Was ist die verrückteste Umbelegung, die Sie je gemacht haben?
A: Ich glaube, es ist meine aktive Umbelegung auf den Surface-Produkten, wo sich einige der Cursor-Navigationstasten den Platz mit F9-F12 teilen. Da ich F1-F8 für viel für Office oder Visual Studio benutze, möchte ich nicht daran denken müssen, Fn zu drücken, aber ich möchte auch nicht Fn-Lock eingeschaltet lassen, weil ich auch Home, End, PgUp und PgDn brauche. Soooooo, ich lasse Fn-Lock an und habe dann F9-F12 auf Home/End/PgUp/PgDn und dann Home/End/PgUp/PgDn auf F9-F12 umgestellt. Ich habe auch die Feststelltaste deaktiviert und die rechte Alt-Taste auf die linke Windows-Taste umgestellt, weil das für einen Laptop einfach gut ist. Da auch andere Leute davon Gebrauch machen könnten, habe ich die SKL-Datei hier ins Depot gestellt.
Q: Was ist eine „Unbekannte“ Taste?
A: Es gibt keine Möglichkeit, ein Labor mit Tastaturen zum Testen zu bekommen, vor allem, wenn fast jede moderne Tastatur mit Zusatztasten oder sprachspezifischen Tasten ausgestattet ist – einige Firmen stellen sogar Tastaturen mit speziellen Tasten für ihre eigene Software oder Produktpalette her. Wenn Sie also Type Key verwenden und es eine Taste trifft, die SharpKeys vielleicht nicht kennt, kann sie trotzdem zugeordnet werden, auch wenn auf dem Etikett „unknown“ steht. Wenn es eine Taste auf Ihrer Tastatur gibt, die als Unbekannt aufgelistet ist, Sie aber eine Verwendung dafür haben, schicken Sie mir eine E-Mail und ich werde sehen, ob ich eine bessere Beschriftung dafür hinzufügen kann.
Q: Was passiert, wenn ich Ihr Dienstprogramm benutze und ich eine Reihe von Tastenbelegungen hinzufüge und ich kann meinen Computer nicht mehr benutzen?
A: Nun, mehr oder weniger, Sie sind am Ende. Ich habe diese Anwendung ausgiebig getestet, und es besteht nur ein sehr geringes Risiko, diesen Registry-Eintrag zu ändern, aber wenn Sie eine Taste deaktivieren, die Sie für Ihr Kennwort benötigen, haben Sie meistens Pech. Eine Möglichkeit ist es, die Bildschirmtastatur zu verwenden, die über die Eingabehilfen-Optionen verfügbar ist, da diese nicht von den Mapping-Einstellungen für Windows betroffen ist. Sie können auch versuchen, eine USB-Tastatur anzuschließen, wenn Sie einen Laptop verwenden, oder Sie können im abgesicherten Modus booten und den Registrierungsschlüssel für die Scancode-Zuordnung entfernen, aber dann sind Sie auf sich allein gestellt. Seien Sie also bitte vorsichtig und benutzen Sie SharpKeys auf eigene Gefahr!
Q: Ich brauche die Unterstützung von Combo-Tasten oder Triple-Byte-aktivierten Tasten! Warum wollen Sie diese Änderung nicht vornehmen?
A: Es gibt absolut nichts, was ich dagegen tun kann: Windows ordnet die Tasten neu zu und diese App ist nur ein UX für den Registry-Schlüssel, der die Neuzuordnung steuert. Tatsächlich glaube ich, dass ich dies bereits in der FAQ beantwortet habe. Das heißt, wenn Sie eine tiefergehende Unterstützung für das Remapping wünschen, schauen Sie sich bitte Microsoft PowerToys an.
Vorhandene gespeicherte Tastaturlayouts
- Colemak – SKL via GitHub via @NathanDai5287
- Surface – SKL-Datei, beschrieben in der FAQ
Hoffe auf GitHub-Beiträge:
- Eine vollständigere Liste, um mehr internationale Tastaturen zu unterstützen
- Eine Import/Export-Funktionalität, die den Austausch von Tastaturbelegungen erleichtert
- Fortgesetzte Unterstützung für neue .NET-Frameworks