Skip to content

Instantly share code, notes, and snippets.

@lordpixel23
Last active December 3, 2025 20:56
Show Gist options
  • Select an option

  • Save lordpixel23/87498dc42e328eabdff6dd258a667efd to your computer and use it in GitHub Desktop.

Select an option

Save lordpixel23/87498dc42e328eabdff6dd258a667efd to your computer and use it in GitHub Desktop.
Adding support for Apple fn/Globe key to QMK

What this does

This allows you to define a key for your QMK keyboard which has some of the same functionality as the fn/Globe key on an Apple keyboard. Applying the following patch to your qmk repository creates a new keycode KC_GLOBE which can then be used in your keymaps.

Where is this from

This commit is updating @drashna's code from Nov 2023 to work with the Nov 2024 files.

How to

  1. Apply the changes from this commit in full
  2. Make sure rules.mk for your keyboard has KEYBOARD_SHARED_EP = yes or else Globe-E, Globe-Q etc. will not work.
  3. Use KC_GLOBE in your keymap to define a key as the fn/Globe key and compile as normal.

Alternatively if you want to avoid patching the generated header file, replace step 1. above with:

  1. Create thre new JSON file data/constants/keycodes/keycodes_0.0.4_basic.hjson from the commit above
  2. Run qmk generate-keycodes -v 0.0.5 -o quantum/keycodes.h in the root of the repo to update the keycodes
  3. Apply the change to tmk_core/protocol/report.h from the commit above

Caveats

This will not make the key behave fully like the key on an Apple keyboard. Specifically more is required if you want it to toggle between F1–F12 and controlling brightness etc. See @fauxpark's gist for the long details.

@andruhon
Copy link

The https://github.com/tzarc/qmk_modules/tree/main/globe_key seems to be effectively doing the same.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment