Skip to content

Archives

  • januar 2022
  • december 2021
  • november 2021
  • oktober 2021
  • september 2021

Categories

  • Ingen kategorier
Trend RepositoryArticles and guides
Articles

Hvordan omplacerer man en enkelt Mac-tastaturtast

On december 31, 2021 by admin

Hvordan omplacerer man en Mac OS X-tastaturtast til en anden uden at bruge eksterne værktøjer?Er det overhovedet muligt at gøre uden at være mac-udvikler?Det viser sig at være ret enkelt i det nye macOS X 10.12 Sierra ved hjælp af et lille hjælpeprogram ved navn hidutil.

  • Problem
  • Løsning
  • Automatisk indstille brugerdefineret tastaturtilknytning efter hver genstart
  • Spørgsmål
  • Kilder

Problem

Du kan ikke lide dit Mac-tastaturlayout, eller endnu værre, du er nødt til at arbejde med et andet layout på arbejdet end derhjemme.I begge tilfælde kan du installere et eksternt værktøj, som vil gøre remapping for dig, men måske kan du ikke lide at have ekstra program bare for at remappe en enkelt tast?Mit problem var forbundet med at have britisk tastatur derhjemme og amerikansk på arbejdet. selv om det IMO ikke er et problem at vænne sig til nogen af dem at skifte mellem dem på daglig basis er irriterende. der var især en tast, som gør tingene lidt svært fra et udviklerperspektiv. det var en tilde tast `. tilde tasten er placeret ved siden af 1/! på det amerikanske tastatur og erstattet af et sektionstegn §-tasten på det britiske.

Løsning

Som det viser sig for macOS X 10.12 Sierra behøver man ikke gøre andet end at køre et kort stykke kode for at lave den nødvendige remapping.

Her er et simpelt eksempel på det problem, som jeg stod over for, som var remapping af §/£ til `/~-tasten.

hidutil property --set '{"UserKeyMapping": }'

Som du kan se, skal du placere passende værdier (brugs-id) for HIDKeyboardModifierMappingSrc og HIDKeyboardModifierMappingDst, som du skal finde i en tabel i de officielle dokumenter.Desuden skal du for hvert “Usage ID (hex)” beregne bitvis “OR” med 0x700000000, hvilket er meget nemt i de fleste tilfælde, men hvis du har problemer med det, kan du også bruge følgende Bash-kommando:

printf '%X\n' "$(( 0x700000000 | 0x64 ))"

Hvor 0x64 skal erstattes med en værdi fra kolonnen “Usage ID (hex)”.

For at kontrollere aktuelle/effektive tilknytninger kan du køre:

hidutil property --get "UserKeyMapping"

Og sidst men ikke mindst. For at nulstille alt, hvad du har sat op indtil nu, skal du blot udføre:

hidutil property --set '{"UserKeyMapping": }'

NOTE

Alle ændringer foretaget med hidutil er øjeblikkelige, så du behøver ikke at genstarte noget.

Automatisk indstille brugerdefineret tastaturtilknytning efter hver genstart

Opret plist-fil f.eks. /Library/LaunchDaemons/org.custom.keyboard-remap.plist:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"> <dict> <key>Label</key> <string>org.custom.keyboard-remap</string> <key>ProgramArguments</key> <array> <string>/usr/bin/hidutil</string> <string>property</string> <string>--set</string> <string>{"UserKeyMapping": }</string> </array> <key>RunAtLoad</key> <true/> <key>KeepAlive</key> <false/> </dict></plist>

Lad den derefter med sudo launchctl load -w /Library/LaunchDaemons/org.custom.keyboard-remap.plist, så den bliver indlæst ved hver genstart af systemet.

Hvis du vil kontrollere, om din plist-fil blev indlæst med succes, kan du bruge sudo launchctl list | grep org.custom.keyboard-remap.plist.

NOTATFor at aflæse plist-filen fra systemets autostart skal du brugesudo launchctl unload /Library/LaunchDaemons/org.custom.keyboard-remap.plist

Spørgsmål

Jeg har kun ét problem med dette problem, som var at finde et passende “Usage ID (hex)” for sektionstegnet §-nøglen.Det viste sig, at det blev navngivet i Apple-dokumentationen som Keyboard Non-US \ and |.For at finde ud af det har jeg brugt trial and error-metode, så intet smart.Hvis du støder på en bedre måde at finde “Usage ID (hex)”-koder, så del dem.

I tilfælde af, at du modtager Invalid property list fejlmeddelelse efter indlæsning af plist-fil, forsøger du højst sandsynligt at bruge den gamle syntaks for plist-fil med <key>Program</key> i stedet for den nævnte <key>ProgramArguments</key>.

Kilder

  • https://developer.apple.com/library/archive/technotes/tn2450/_index.html – Apple Technical Note regarding key remapping in macOS X Sierra
  • https://apple.stackexchange.com/questions/283252/how-do-i-remap-a-key-in-macos-sierra-e-g-right-alt-to-right-control – Stack Overflow-emne om det
  • https://en.wikipedia.org/wiki/British_and_American_keyboards – mulige tastaturlayouts
  • https://apple.stackexchange.com/questions/329085/tilde-and-plus-minus-%C2%B1-in-wrong-place-on-keyboard – nøjagtig samme emne fundet efter at have skrevet dette indlæg

Skriv et svar Annuller svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Arkiver

  • januar 2022
  • december 2021
  • november 2021
  • oktober 2021
  • september 2021

Meta

  • Log ind
  • Indlægsfeed
  • Kommentarfeed
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress