-
-
Notifications
You must be signed in to change notification settings - Fork 37.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Apple Fn / Globe key #20643
Add Apple Fn / Globe key #20643
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll leave the rest of the functionality to others, but there's some inconsistencies that'll need to be sorted out regardless.
I'm curious as to why this implementation over the other: Which seems to work with NKRO (which, IMO, would be preferable) |
A couple of reasons:
Having said that - I fully expect fauxpark to have his own take on this and I expect to close it anyway. |
After extensive testing [thanks @filterpaper, @drashna, @tzarc, @fauxpark] - it turns out that this still does not work without changing the VID/PID to one of Apple's keebs. This is however not the case if Karabiner-Elements is installed .. in which case any VID/PID will work. As this dependence sits outside of QMK, and it's alternative (to spoof an Apple keeb) leaves makers legally exposed, it thus makes no sense to add this to core as it would not work for the general consumer. Closing PR draft. (For now, fauxpark/applefn.patch remains the goto.) |
Question about how to use this, I don't see it mentioned in the QMK docs anywhere, I am relatively beginner so I only now how to use the QMK Configurator online, and I don't see this key as an option. |
Description
Modern macOS no longer locks out the use of the Apple Fn (🌐) key, thus allowing users to leverage this functionality in trade for NKRO. [ UPDATE: disproved > this is only true when the Karabiner-Elements driver is present]
Entirely based on @fauxpark 's Gist with 2 minor changes:
KC_APPLE_FN
is now keycode0x00C3
(since0x00C1
is taken up byKC_MISSION_CONTROL
)qmk generate-keycodes
did not generate theIS_APPLE_FN
macro inkeycode.h
, I changed this for the auto-genIS_APPLE_FN_KEYCODE
.No other attempt is made to change the code - meaning if one chooses to add the Apple Fn keys then one also needs to disable NKRO.
In lieu of docs
To compile:
Head on over to your keyboard keymap file and add the following two lines to the
rules.mk
file:Add the
KC_APFN
keycode to the appropriate spot on thekeymap.c
file.Fn/🌐 key combos to test on macOS Monterey & macOS Ventura
Fn
+F
- toggle full screen modeFn
+Up
/Fn
+Down
- Page scrollingFn
+Right
/Fn
+Left
- End of, and Start of document scrollingFn
+E
- Insert symbol or emojiFn
+Q
- Quick noteFn
+Delete
- Forward delete (same asContro
-D
)Fn
+F1
..F12
- Media keys (should also work on macOS Catalina)F1
- Main screen brightness down (for active screen useF14
)F2
- Main screen brightness up (for active screen useF15
)F3
- Mission ControlF4
- LaunchpadF5
- Underglow Down (obviously not on the QMK kb)F6
- Underglow Up (obviously not on the QMK kb)F7
- Previous TrackF8
- Play / PauseF9
- Next TrackF10
- MuteF11
- Volume DownF12
- Volume UpTypes of Changes
Issues Fixed or Closed by This PR
Checklist