De Office-sleutel is een nieuwe sleutel die u op Microsoft-toetsenborden vindt. Hiermee kunt u snel apps zoals Word starten, maar u kunt het opnieuw toewijzen met AutoHotkey om als een extra modificatietoets te fungeren of de app-snelkoppelingen helemaal uit te schakelen.
Wat is de Office-sleutel?
U vindt deze sleutel op nieuwe Microsoft-toetsenborden die na 15 oktober zijn uitgebracht. Je hebt misschien ook gehoord van de speciale emoji-sleutel die Microsoft erbij heeft toegevoegd; beide toetsen passen op de plaats waar de rechter Windows-toets en menutoets waren, tussen Right Alt en Right Control:
Out of the box opent de Office-toets de Office-applicatie en heeft verschillende sneltoetsen om specifieke Microsoft-apps te openen. Er zijn standaard sneltoetsen zoals Office + W en Office + X om Word en Excel te openen, maar er zijn ook enkele meer obscure sneltoetsen: Office + L, Office + T en Office + Y openen LinkedIn, Microsoft Teams en Yammer.
De Office-toets verzendt Shift + Control + Alt + Windows
Dit is handig, maar u zou kunnen denken dat dit een nieuwe sleutel is die Microsoft heeft gemaakt, vergelijkbaar met de Windows-sleutel. Maar Microsoft geeft om achterwaartse compatibiliteit, en het zou een hele klus zijn om een geheel nieuwe sleutel uit te vinden, dus er was een kortere weg voor nodig.
Je hebt misschien gehoord van de “hyper” -toets. Hyper was een oude modificatietoets van oudsher en werd gebruikt op het Space-cadet-toetsenbord voor Lisp-machines. Het is praktisch een fossiel. Je vindt het niet op een modern toetsenbord en het wordt niet ondersteund in een huidig besturingssysteem. Maar de naam is cool, en het bleef hangen als een term voor een obscure modificatietoets die door geen enkele toepassing wordt gebruikt.
Tegenwoordig wordt de Hyper-toets geëmuleerd met een combinatie van elke modificatietoets. Op macOS wordt dit toegewezen aan Shift + Control + Option + Command. In Windows wordt de Hyper-toets geëmuleerd met Shift + Control + Alt + Windows.
VERWANT: Hoe u Caps Lock van uw Mac in een extra modificatietoets kunt veranderen
De gedachte achter deze mapping is dat geen enkele UX-ontwerper gek genoeg zal zijn om een applicatie te ontwerpen waarbij een gebruiker alle vier de modificatietoetsen tegelijk moet indrukken. Dit geeft je in wezen een volledig toetsenbord met modificatietoetsen die je kunt binden zoals je wilt, wat geweldig is.
Of, dat was het tenminste – in de Windows 10-update van mei 2019 voegde Microsoft voorlopige OS-ondersteuning voor de Office-sleutel toe voordat deze voor het publiek werd vrijgegeven. Raad eens waar de Office-toets naar verwijst?
Het is Hyper. In plaats van een nieuwe sleutel te implementeren, fungeert de Office-sleutel als alle vier de modificatietoetsen. De emoji-sleutel is op zichzelf niet echt een sleutel; het verwijst naar de snelkoppeling Office + Space, waarop u zelf kunt drukken om de emoji-viewer te openen. (U kunt ook op Windows +. Of Windows +; drukken om het emoji-paneel te openen.)
Het zou geweldig zijn om een speciale Hyper-toets op je toetsenbord te hebben. De meeste mensen gebruiken Caps Lock opnieuw, maar de Office-toets zou de nutteloze rechter Windows-toets vervangen en er iets nuttigs van maken. Helaas worden van de 27 beschikbare lettertoetsen en spatiebalk er 10 gebruikt door de Office-sneltoetsen, met de mogelijkheid dat Microsoft er in de toekomst meer toevoegt. Momenteel is er geen ingebouwde manier om deze snelkoppelingen uit te schakelen. Er is geen optie in Instellingen, geen registeraanpassing en geen groepsbeleid.
Natuurlijk heeft het feit dat u niet langer op Hyper + Y kunt drukken zonder naar de marketingpagina voor Yammer te worden geleid, Hyper key-gebruikers behoorlijk van streek gemaakt. Er zijn echter enkele aanpassingen die u zelf kunt doen om de sleutel opnieuw toe te wijzen of de snelkoppeling helemaal uit te schakelen. Voordat we aan de slag gaan met AutoHotkey, is er één registeraanpassing die u moet inschakelen door de volgende opdracht in PowerShell uit te voeren. Klik met de rechtermuisknop op uw Start-knop en klik op “PowerShell” om deze te openen:
REG ADD HKCUSoftwareClassesms-officeappShellOpenCommand /t REG_SZ /d rundll32
Gewoonlijk wordt de Office-app geopend als u alleen op de Office-toets drukt. Dit wijzigt de locatie die wordt geopend, waardoor de app niet start wanneer de toets wordt ingedrukt. Helaas is er niets vergelijkbaars dat we in het register hebben gevonden waardoor de app-specifieke sneltoetsen kunnen worden uitgeschakeld, dus u moet deze handmatig opnieuw toewijzen. Als u een manier vindt om de app-specifieke snelkoppelingen uit het register uit te schakelen, laat het ons dan weten in de opmerkingen en we zullen dit artikel bijwerken.
Hoe u de Office-sleutel opnieuw kunt toewijzen met AutoHotKey
AutoHotkey is een programma voor het opnieuw toewijzen van toetsenbordtoetsen aan specifieke acties. Het kan veel meer, maar in dit geval willen we het eigenlijk alleen gebruiken om de Windows-toets uit de Office-toetscombinaties te verwijderen.
AutoHotkey installeert een toetsenbordhaak op laag niveau die toetsenbordgebeurtenissen onderschept voordat de rest van het systeem erbij komt. Als het overeenkomt met een geconfigureerde sneltoets, wordt de gebeurtenis onderschept door AutoHotkey. AutoHotkey kan dan zijn eigen aangepaste toetsenbordgebeurtenissen verzenden. Dit staat je niet toe om het Shift+Control+Alt+Win+W
sneltoets, want dat zal nog steeds de Word-snelkoppeling activeren. U kunt wel verzenden Shift+Control+Alt+W
. Dat is nog steeds onpraktisch genoeg om als een Hyper-toets te worden beschouwd die u normaal niet zou indrukken, hoewel u moet controleren of uw toepassingen deze niet gebruiken.
Het volgende script zal Office + W opnieuw toewijzen aan Shift+Control+Alt+W
. Sla de tekst gewoon op als een AutoHotKey-script en voer het uit:
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. #UseHook #InstallKeybdHook #SingleInstance force SendMode Input #^!+W:: Send ^!+W return
De tekenreeks “#^!+
”Is de afkorting van AutoHotkey voor respectievelijk Windows, Control, Alt en Shift. Dit script komt overeen met Office + W en stuurt de gecorrigeerde volgorde terug, wat het probleem van het openen van Word oplost.
Natuurlijk moet je ook de andere toetsen opnieuw toewijzen, T, Y, O, P, D, L, X, N en Space, dus het volledige script is veel langer:
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. #UseHook #InstallKeybdHook #SingleInstance force SendMode Input #^!+W:: Send ^!+W return #^!+T:: Send ^!+T return #^!+Y:: Send ^!+Y return #^!+O:: Send ^!+O return #^!+P:: Send ^!+P return #^!+D:: Send ^!+D return #^!+L:: Send ^!+L return #^!+X:: Send ^!+X return #^!+N:: Send ^!+N return #^!+Space:: Send ^!+Space return
U kunt de gecorrigeerde sneltoetsen gebruiken voor elk van de tien toetsen die de Office-toets gebruikt, maar u kunt de volledige Hyper-toets gebruiken voor elke sleutel die niet wordt gebruikt. Je kunt deze sneltoetsen ook toewijzen aan AHK-functies, zodat je er totale vrijheid over hebt, op voorwaarde dat je ze op de een of andere manier afhandelt zodat de Office-app niet wordt geopend.
Deze oplossing is waarschijnlijk goed genoeg voor de meeste mensen totdat Microsoft besluit dit uit te schakelen (indien ooit). Maar als u de snelkoppelingen naar de Office-app echt helemaal wilt uitschakelen, is er een hacky-oplossing.
Hoe Office Key-integraties volledig te verwijderen
Waarschuwing: Het volgende is een beetje een lelijke hack. Deze oplossing is eigenlijk alleen voor gevorderde gebruikers, dus als je niet weet wat je doet, blijf dan bij de AutoHotkey-oplossing.
Maar als u de Shift-Control-Alt-Win-toetscombinatie als een Hyper-toets wilt gebruiken en wilt dat Microsoft nooit de Office-sneltoetsen heeft toegevoegd, is er een oplossing die het probleem volledig oplost.
In Windows moeten systeembrede sneltoetsen worden geregistreerd bij het besturingssysteem met behulp van de systeemfunctie RegisterHotKey. Onder de motorkap worden de Office Key-sneltoetsen op deze manier geregistreerd door Explorer, het proces dat verantwoordelijk is voor uw bureaublad, taakbalk en Verkenner. Het is een integraal onderdeel van Windows, dus het is logisch om hier sneltoetsen te registreren; sneltoetsen die met RegisterHotKey zijn gemaakt, worden automatisch afgemeld wanneer het proces waarmee ze zijn geregistreerd, wordt gesloten. Omdat Explorer altijd open is, zijn de sneltoetsen permanent.
Onze eerste gedachte is om de Office-sneltoetsen te negeren door onze eigen te registreren. Maar als u een programma maakt dat RegisterHotKey uitvoert, zult u merken dat het niet zal werken. U kunt geen sneltoetsen registreren die al door een ander programma zijn geregistreerd.
Wanneer programma’s echter worden afgesloten, wordt de registratie van hun sneltoetsen automatisch ongedaan gemaakt. Dit betekent dat als u het programma waarmee de sneltoetsen zijn geregistreerd, kunt sluiten, u deze kunt uitschakelen. Helaas is het sluiten van Explorer geen erg haalbare oplossing, omdat u zonder een bruikbare computer zou zitten. En als u Explorer opnieuw start, registreert het de sneltoetsen opnieuw wanneer het een back-up maakt.
Dus deze oplossing werkt als volgt: het Office-key-fixprogramma sluit Explorer, waardoor de sneltoetsen worden overschreven. Het registreert vervolgens elke Office-key-gerelateerde sneltoets die we willen uitschakelen en start Explorer opnieuw. Wanneer Explorer een back-up maakt, probeert het de Office-sneltoetsen zoals normaal te registreren, maar wordt geblokkeerd omdat ons programma ze al heeft geregistreerd. Het probeert dit alleen bij het opstarten te doen, dus het enige wat we hoeven te doen is een paar seconden wachten en dan het programma afsluiten. Hierdoor worden de sneltoetsen tijdens het proces afgemeld, waardoor ze door andere programma’s kunnen worden gebruikt.
Deze oplossing werkt perfect en stelt de eigenlijke Office-toets of geëmuleerde Hyper-toets in staat om elke snelkoppeling op het toetsenbord te gebruiken zonder het risico te lopen willekeurige Microsoft-apps te openen. Het snijdt de Office-sneltoetsen volledig af. Explorer krijgt niet eens een bericht wanneer u op deze toetscombinaties drukt.
Het enige nadeel is dat, omdat we de verkenner herstarten, wanneer dit programma bij het opstarten wordt uitgevoerd, het bureaublad een fractie van een seconde zwart knippert voordat het opnieuw wordt opgestart. Het is niet super opdringerig, maar het is genoeg om op te merken. Als het even duurt voordat uw pc de opstart-apps laadt, worden alle geopende Verkenner-vensters gesloten. Het voordeel is dat je gerust kunt zijn, wetende dat je 1-0 bent in de strijd tegen de marketingafdeling van Microsoft voor controle over je toetsenbord.
Hoe dan ook, het script is een relatief kort stukje C ++:
#include <windows.h> #include <stdio.h> #include <thread> #include <chrono> #include <iostream> int main(int argc, wchar_t* argv[]) { //Build Array Of Keys To Unregister //These map to W, T, Y, O, P, D, L, X, N, and Space, respectively. UINT offendingKeys[10] = { 0x57, 0x54, 0x59, 0x4F, 0x50, 0x44, 0x4C, 0x58, 0x4E, 0x20 }; //Kill Explorer system("taskkill /IM explorer.exe /F"); //Register hotkey for (int i = 0; i < 10; i++) { RegisterHotKey(NULL, i, 0x1 + 0x2 + 0x4 + 0x8 | MOD_NOREPEAT, offendingKeys[i]); } //Restart Explorer system("start C:/Windows/explorer.exe"); /* Sleep for a few seconds to make sure Explorer has time to attempt to register the Office hotkeys, and get blocked by our hotkeys */ std::this_thread::sleep_for(std::chrono::milliseconds(4000)); //deregister hotkeys by ID for (int i = 0; i < 10; i++) { UnregisterHotKey(NULL, i); } return 1; }
Je kunt het ook hier op GitHub vinden. Je zult het zelf moeten compileren, maar je zou sowieso niet echt willekeurige uitvoerbare bestanden moeten draaien die je op internet vindt. Zodra je het als een binair bestand hebt, plaats je het in C:ProgramDataMicrosoftWindowsStart MenuProgramsStartup
dus het werkt nadat uw computer is opgestart.
Het openen van uitvoerbare bestanden die in de opstartmap zijn geplaatst, duurt even, dus het programma wordt waarschijnlijk 5-10 seconden nadat u het bureaublad ziet, uitgevoerd. Het zal alle geopende Verkenner-vensters sluiten, maar andere applicaties zoals Chrome worden niet afgesloten.
Als iemand die dit leest een manier kent om te voorkomen dat Explorer de sneltoetsen registreert zonder hem opnieuw te starten – of als het op de een of andere manier mogelijk is om sneltoetsen die door een andere thread zijn gemaakt, af te melden – laat het ons dan weten in de commentaren.