qmk_firmware/keycodes.html

24 lines
181 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en-US" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Keycodes Overview | QMK Firmware</title>
<meta name="description" content="Documentation for QMK Firmware">
<meta name="generator" content="VitePress v1.1.3">
<link rel="preload stylesheet" href="/assets/style.No8zk9aC.css" as="style">
<script type="module" src="/assets/app.D2yWvPhv.js"></script>
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/assets/chunks/framework.DyMmIvSC.js">
<link rel="modulepreload" href="/assets/chunks/theme.CXwPehsq.js">
<link rel="modulepreload" href="/assets/keycodes.md.hkOkKJPh.lean.js">
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-5d98c3a5><!--[--><!--]--><!--[--><span tabindex="-1" data-v-0f60ec36></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-0f60ec36> Skip to content </a><!--]--><!----><header class="VPNav" data-v-5d98c3a5 data-v-ae24b3ad><div class="VPNavBar has-sidebar top" data-v-ae24b3ad data-v-ccf7ddec><div class="wrapper" data-v-ccf7ddec><div class="container" data-v-ccf7ddec><div class="title" data-v-ccf7ddec><div class="VPNavBarTitle has-sidebar" data-v-ccf7ddec data-v-ab179fa1><a class="title" href="/" data-v-ab179fa1><!--[--><!--]--><!--[--><!--[--><!--[--><img class="VPImage dark logo" src="/qmk-logo-dark.svg" alt data-v-8426fc1a><!--]--><!--[--><img class="VPImage light logo" src="/qmk-logo-light.svg" alt data-v-8426fc1a><!--]--><!--]--><!--]--><span data-v-ab179fa1>QMK Firmware</span><!--[--><!--]--></a></div></div><div class="content" data-v-ccf7ddec><div class="content-body" data-v-ccf7ddec><!--[--><!--]--><div class="VPNavBarSearch search" data-v-ccf7ddec><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-ccf7ddec data-v-7f418b0f><span id="main-nav-aria-label" class="visually-hidden" data-v-7f418b0f>Main Navigation</span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="./" tabindex="0" data-v-7f418b0f data-v-9c663999><!--[--><span data-v-9c663999>Home</span><!--]--></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-ccf7ddec data-v-e6aabb21><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="Switch to dark theme" aria-checked="false" data-v-e6aabb21 data-v-d1f28634 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-d1f28634></span><span class="vpi-moon moon" data-v-d1f28634></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-ccf7ddec data-v-0394ad82 data-v-7bc22406><!--[--><a class="VPSocialLink no-icon" href="https://reddit.com/r/olkb" aria-label target="_blank" rel="noopener" data-v-7bc22406 data-v-eee4e7cb><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" width="50px" height="50px"><path d="M 29 3 C 28.0625 3 27.164063 3.382813 26.5 4 C 25.835938 4.617188 25.363281 5.433594 25 6.40625 C 24.355469 8.140625 24.085938 10.394531 24.03125 13.03125 C 19.234375 13.179688 14.820313 14.421875 11.28125 16.46875 C 10.214844 15.46875 8.855469 14.96875 7.5 14.96875 C 6.089844 14.96875 4.675781 15.511719 3.59375 16.59375 C 1.425781 18.761719 1.425781 22.238281 3.59375 24.40625 L 3.84375 24.65625 C 3.3125 26.035156 3 27.488281 3 29 C 3 33.527344 5.566406 37.585938 9.5625 40.4375 C 13.558594 43.289063 19.007813 45 25 45 C 30.992188 45 36.441406 43.289063 40.4375 40.4375 C 44.433594 37.585938 47 33.527344 47 29 C 47 27.488281 46.6875 26.035156 46.15625 24.65625 L 46.40625 24.40625 C 48.574219 22.238281 48.574219 18.761719 46.40625 16.59375 C 45.324219 15.511719 43.910156 14.96875 42.5 14.96875 C 41.144531 14.96875 39.785156 15.46875 38.71875 16.46875 C 35.195313 14.433594 30.800781 13.191406 26.03125 13.03125 C 26.09375 10.546875 26.363281 8.46875 26.875 7.09375 C 27.164063 6.316406 27.527344 5.757813 27.875 5.4375 C 28.222656 5.117188 28.539063 5 29 5 C 29.460938 5 29.683594 5.125 30.03125 5.40625 C 30.378906 5.6875 30.785156 6.148438 31.3125 6.6875 C 32.253906 7.652344 33.695313 8.714844 36.09375 8.9375 C 36.539063 11.238281 38.574219 13 41 13 C 43.75 13 46 10.75 46 8 C 46 5.25 43.75 3 41 3 C 38.605469 3 36.574219 4.710938 36.09375 6.96875 C 34.3125 6.796875 33.527344 6.109375 32.75 5.3125 C 32.300781 4.851563 31.886719 4.3125 31.3125 3.84375 C 30.738281 3.375 29.9375 3 29 3 Z M 41 5 C 42.667969 5 44 6.332031 44 8 C 44 9.667969 42.667969 11 41 11 C 39.332031 11 38 9.667969 38 8 C 38 6.332031 39.332031 5 41 5 Z M 25 15 C 30.609375 15 35.675781 16.613281 39.28125 19.1875 C 42.886719 21.761719 45 25.226563 45 29 C 45 32.773438 42.886719 36.238281 39.28125 38.8125 C 35.675781 41.386719 30.609375 43 25 43 C 19.390625 43 14.324219 41.386719 10.71875 38.8125 C 7.113281 36.238281 5 32.773438 5 29 C 5 25.226563 7.113281 21.761719 10.71875 19.1875 C 14.324219 16.613281 19.390625 15 25 15 Z M 7.5 16.9375 C 8.203125 16.9375 8.914063 17.148438 9.53125 17.59375 C 7.527344 19.03125 5.886719 20.769531 4.75 22.71875 C 3.582031 21.296875 3.660156 19.339844 5 18 C 5.714844 17.285156 6.609375 16.9375 7.5 16.9375 Z M 42.5 16.9375 C 43.390625 16.9375 44.285156 17.285156 45 18 C 46.339844 19.339844 46.417969 21.296875 45.25 22.71875 C 44.113281 20.769531 42.472656 19.03125 40.46875 17.59375 C 41.085938 17.148438 41.796875 16.9375 42.5 16.9375 Z M 17 22 C 14.800781 22 13 23.800781 13 26 C 13 28.199219 14.800781 30 17 30 C 19.199219 30 21 28.199219 21 26 C 21 23.800781 19.199219 22 17 22 Z M 33 22 C 30.800781 22 29 23.800781 29 26 C 29 28.199219 30.800781 30 33 30 C 35.199219 30 37 28.199219 37 26 C 37 23.800781 35.199219 22 33 22 Z M 17 24 C 18.117188 24 19 24.882813 19 26 C 19 27.117188 18.117188 28 17 28 C 15.882813 28 15 27.117188 15 26 C 15 24.882813 15.882813 24 17 24 Z M 33 24 C 34.117188 24 35 24.882813 35 26 C 35 27.117188 34.117188 28 33 28 C 31.882813 28 31 27.117188 31 26 C 31 24.882813 31.882813 24 33 24 Z M 34.15625 33.84375 C 34.101563 33.851563 34.050781 33.859375 34 33.875 C 33.683594 33.9375 33.417969 34.144531 33.28125 34.4375 C 33.28125 34.4375 32.757813 35.164063 31.4375 36 C 30.117188 36.835938 28.058594 37.6875 25 37.6875 C 21.941406 37.6875 19.882813 36.835938 18.5625 36 C 17.242188 35.164063 16.71875 34.4375 16.71875 34.4375 C 16.492188 34.082031 16.066406 33.90625 15.65625 34 C 15.332031 34.082031 15.070313 34.316406 14.957031 34.632813 C 14.84375 34.945313 14.894531 35.292969 15.09375 35.5625 C 15.09375 35.5625 15.863281 36.671875 17.46875 37.6875 C 19.074219 38.703125 21.558594 39.6875 25 39.6875 C 28.441406 39.6875 30.925781 38.703125 32.53125 37.6875 C 34.136719 36.671875 34.90625 35.5625 34.90625 35.5625 C 35.207031 35.273438 35.296875 34.824219 35.128906 34.441406 C 34.960938 34.058594 34.574219 33.820313 34.15625 33.84375 Z"/></svg></a><a class="VPSocialLink no-icon" href="https://discord.gg/qmk" aria-label="discord" target="_blank" rel="noopener" data-v-7bc22406 data-v-eee4e7cb><span class="vpi-social-discord" /></a><a class="VPSocialLink no-icon" href="https://github.com/qmk/qmk_firmware" aria-label="github" target="_blank" rel="noopener" data-v-7bc22406 data-v-eee4e7cb><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-ccf7ddec data-v-d0bd9dde data-v-b6c34ac9><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-b6c34ac9><span class="vpi-more-horizontal icon" data-v-b6c34ac9></span></button><div class="menu" data-v-b6c34ac9><div class="VPMenu" data-v-b6c34ac9 data-v-e7ea1737><!----><!--[--><!--[--><!----><div class="group" data-v-d0bd9dde><div class="item appearance" data-v-d0bd9dde><p class="label" data-v-d0bd9dde>Appearance</p><div class="appearance-action" data-v-d0bd9dde><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="Switch to dark theme" aria-checked="false" data-v-d0bd9dde data-v-d1f28634 data-v-1d5665e3><span class="check" data-v-1d5665e3><span class="icon" data-v-1d5665e3><!--[--><span class="vpi-sun sun" data-v-d1f28634></span><span class="vpi-moon moon" data-v-d1f28634></span><!--]--></span></span></button></div></div></div><div class="group" data-v-d0bd9dde><div class="item social-links" data-v-d0bd9dde><div class="VPSocialLinks social-links-list" data-v-d0bd9dde data-v-7bc22406><!--[--><a class="VPSocialLink no-icon" href="https://reddit.com/r/olkb" aria-label target="_blank" rel="noopener" data-v-7bc22406 data-v-eee4e7cb><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" width="50px" height="50px"><path d="M 29 3 C 28.0625 3 27.164063 3.382813 26.5 4 C 25.835938 4.617188 25.363281 5.433594 25 6.40625 C 24.355469 8.140625 24.085938 10.394531 24.03125 13.03125 C 19.234375 13.179688 14.820313 14.421875 11.28125 16.46875 C 10.214844 15.46875 8.855469 14.96875 7.5 14.96875 C 6.089844 14.96875 4.675781 15.511719 3.59375 16.59375 C 1.425781 18.761719 1.425781 22.238281 3.59375 24.40625 L 3.84375 24.65625 C 3.3125 26.035156 3 27.488281 3 29 C 3 33.527344 5.566406 37.585938 9.5625 40.4375 C 13.558594 43.289063 19.007813 45 25 45 C 30.992188 45 36.441406 43.289063 40.4375 40.4375 C 44.433594 37.585938 47 33.527344 47 29 C 47 27.488281 46.6875 26.035156 46.15625 24.65625 L 46.40625 24.40625 C 48.574219 22.238281 48.574219 18.761719 46.40625 16.59375 C 45.324219 15.511719 43.910156 14.96875 42.5 14.96875 C 41.144531 14.96875 39.785156 15.46875 38.71875 16.46875 C 35.195313 14.433594 30.800781 13.191406 26.03125 13.03125 C 26.09375 10.546875 26.363281 8.46875 26.875 7.09375 C 27.164063 6.316406 27.527344 5.757813 27.875 5.4375 C 28.222656 5.117188 28.539063 5 29 5 C 29.460938 5 29.683594 5.125 30.03125 5.40625 C 30.378906 5.6875 30.785156 6.148438 31.3125 6.6875 C 32.253906 7.652344 33.695313 8.714844 36.09375 8.9375 C 36.539063 11.238281 38.574219 13 41 13 C 43.75 13 46 10.75 46 8 C 46 5.25 43.75 3 41 3 C 38.605469 3 36.574219 4.710938 36.09375 6.96875 C 34.3125 6.796875 33.527344 6.109375 32.75 5.3125 C 32.300781 4.851563 31.886719 4.3125 31.3125 3.84375 C 30.738281 3.375 29.9375 3 29 3 Z M 41 5 C 42.667969 5 44 6.332031 44 8 C 44 9.667969 42.667969 11 41 11 C 39.332031 11 38 9.667969 38 8 C 38 6.332031 39.332031 5 41 5 Z M 25 15 C 30.609375 15 35.675781 16.613281 39.28125 19.1875 C 42.886719 21.761719 45 25.226563 45 29 C 45 32.773438 42.886719 36.238281 39.28125 38.8125 C 35.675781 41.386719 30.609375 43 25 43 C 19.390625 43 14.324219 41.386719 10.71875 38.8125 C 7.113281 36.238281 5 32.773438 5 29 C 5 25.226563 7.113281 21.761719 10.71875 19.1875 C 14.324219 16.613281 19.390625 15 25 15 Z M 7.5 16.9375 C 8.203125 16.9375 8.914063 17.148438 9.53125 17.59375 C 7.527344 19.03125 5.886719 20.769531 4.75 22.71875 C 3.582031 21.296875 3.660156 19.339844 5 18 C 5.714844 17.285156 6.609375 16.9375 7.5 16.9375 Z M 42.5 16.9375 C 43.390625 16.9375 44.285156 17.285156 45 18 C 46.339844 19.339844 46.417969 21.296875 45.25 22.71875 C 44.113281 20.769531 42.472656 19.03125 40.46875 17.59375 C 41.085938 17.148438 41.796875 16.9375 42.5 16.9375 Z M 17 22 C 14.800781 22 13 23.800781 13 26 C 13 28.199219 14.800781 30 17 30 C 19.199219 30 21 28.199219 21 26 C 21 23.800781 19.199219 22 17 22 Z M 33 22 C 30.800781 22 29 23.800781 29 26 C 29 28.199219 30.800781 30 33 30 C 35.199219 30 37 28.199219 37 26 C 37 23.800781 35.199219 22 33 22 Z M 17 24 C 18.117188 24 19 24.882813 19 26 C 19 27.117188 18.117188 28 17 28 C 15.882813 28 15 27.117188 15 26 C 15 24.882813 15.882813 24 17 24 Z M 33 24 C 34.117188 24 35 24.882813 35 26 C 35 27.117188 34.117188 28 33 28 C 31.882813 28 31 27.117188 31 26 C 31 24.882813 31.882813 24 33 24 Z M 34.15625 33.84375 C 34.101563 33.851563 34.050781 33.859375 34 33.875 C 33.683594 33.9375 33.417969 34.144531 33.28125 34.4375 C 33.28125 34.4375 32.757813 35.164063 31.4375 36 C 30.117188 36.835938 28.058594 37.6875 25 37.6875 C 21.941406 37.6875 19.882813 36.835938 18.5625 36 C 17.242188 35.164063 16.71875 34.4375 16.71875 34.4375 C 16.492188 34.082031 16.066406 33.90625 15.65625 34 C 15.332031 34.082031 15.070313 34.316406 14.957031 34.632813 C 14.84375 34.945313 14.894531 35.292969 15.09375 35.5625 C 15.09375 35.5625 15.863281 36.671875 17.46875 37.6875 C 19.074219 38.703125 21.558594 39.6875 25 39.6875 C 28.441406 39.6875 30.925781 38.703125 32.53125 37.6875 C 34.136719 36.671875 34.90625 35.5625 34.90625 35.5625 C 35.207031 35.273438 35.296875 34.824219 35.128906 34.441406 C 34.960938 34.058594 34.574219 33.820313 34.15625 33.84375 Z"/></svg></a><a class="VPSocialLink no-icon" href="https://discord.gg/qmk" aria-label="discord" target="_blank" rel="noopener" data-v-7bc22406 data-v-eee4e7cb><span class="vpi-social-discord" /></a><a class="VPSocialLink no-icon" href="https://github.com/qmk/qmk_firmware" aria-label="github" target="_blank" rel="noopener" data-v-7bc22406 data-v-eee4e7cb><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-ccf7ddec data-v-e5dd9c1c><span class="container" data-v-e5dd9c1c><span class="top" data-v-e5dd9c1c></span><span class="middle" data-v-e5dd9c1c></span><span class="bottom" data-v-e5dd9c1c></span></span></button></div></div></div></div><div class="divider" data-v-ccf7ddec><div class="divider-line" data-v-ccf7ddec></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-5d98c3a5 data-v-a6f0e41e><div class="container" data-v-a6f0e41e><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-a6f0e41e><span class="vpi-align-left menu-icon" data-v-a6f0e41e></span><span class="menu-text" data-v-a6f0e41e>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-a6f0e41e data-v-267dd0ed><button data-v-267dd0ed>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-5d98c3a5 data-v-575e6a36><div class="curtain" data-v-575e6a36></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-575e6a36><span class="visually-hidden" id="sidebar-aria-label" data-v-575e6a36> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>Tutorial</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Introduction</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_getting_started" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Setup</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_building_firmware" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Building Your First Firmware</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_flashing" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Flashing Firmware</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/support" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Getting Help/Support</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_external_userspace" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>External Userspace</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_learn_more_resources" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Other Resources</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/syllabus" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Syllabus</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>FAQs</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/faq_general" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>General FAQ</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/faq_build" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Build/Compile QMK</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/faq_misc" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Troubleshooting QMK</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/faq_debug" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Debugging QMK</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/faq_keymap" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Keymap FAQ</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/squeezing_avr" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Squeezing Space from AVR</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/reference_glossary" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Glossary</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>Configurator</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_building_firmware_configurator" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/configurator_step_by_step" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Step by Step</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/configurator_troubleshooting" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Troubleshooting</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/configurator_architecture" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Architecture</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>QMK API</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/api_overview" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/api_docs" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>API Documentation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/reference_configurator_support" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Keyboard Support</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/configurator_default_keymaps" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Adding Default Keymaps</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section></div><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>CLI</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/cli" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/cli_configuration" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Configuration</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/cli_commands" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Commands</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/cli_tab_complete" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Tab Completion</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0 has-active" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>Using QMK</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Guides</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/custom_quantum_functions" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Customizing Functionality</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/driver_installation_zadig" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Driver Installation with Zadig</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/keymap" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Keymap Overview</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-2" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h4 class="text" data-v-b8d55f3b>Development Environments</h4><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/getting_started_docker" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Docker Guide</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-2" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h4 class="text" data-v-b8d55f3b>Flashing</h4><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/flashing" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Flashing</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/flashing_bootloadhid" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Flashing ATmega32A (ps2avrgb)</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-2" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h4 class="text" data-v-b8d55f3b>IDEs</h4><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/other_eclipse" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Using Eclipse with QMK</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/other_vscode" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Using VSCode with QMK</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-2" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h4 class="text" data-v-b8d55f3b>Git Best Practices</h4><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_git_best_practices" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Introduction</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_git_using_your_master_branch" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Your Fork</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_git_resolving_merge_conflicts" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Merge Conflicts</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/newbs_git_resynchronize_a_branch" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Fixing Your Branch</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section><section class="VPSidebarItem level-1 has-active" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Simple Keycodes</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/keycodes" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Full List</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/keycodes_basic" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Basic Keycodes</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/reference_keymap_extras" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Language-Specific Keycodes</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/feature_advanced_keycodes" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Modifier Keys</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/quantum_keycodes" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Quantum Keycodes</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/keycodes_magic" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Magic Keycodes</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Advanced Keycodes</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/command" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Command</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/dynamic_macros" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Dynamic Macros</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/grave_esc" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Grave Escape</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/leader_key" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Leader Key</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/mod_tap" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Mod-Tap</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/feature_macros" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Macros</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/mouse_keys" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Mouse Keys</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/programmable_button" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Programmable Button</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/repeat_key" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Repeat Key</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/space_cadet" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Space Cadet Shift</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/keycodes_us_ansi_shifted" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>US ANSI Shifted Keys</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Software Features</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/auto_shift" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Auto Shift</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/autocorrect" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Autocorrect</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/caps_word" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Caps Word</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/combo" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Combos</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/feature_debounce_type" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Debounce API</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/digitizer" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Digitizer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/feature_eeprom" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>EEPROM</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/key_lock" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Key Lock</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/key_overrides" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Key Overrides</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/feature_layers" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Layers</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/one_shot_keys" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>One Shot Keys</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/os_detection" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>OS Detection</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/rawhid" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Raw HID</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/secure" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Secure</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/send_string" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Send String</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/sequencer" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Sequencer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/swap_hands" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Swap Hands</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/tap_dance" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Tap Dance</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/tap_hold" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Tap-Hold Configuration</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/tri_layer" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Tri Layer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/unicode" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Unicode</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/feature_userspace" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Userspace</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/wpm" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>WPM Calculation</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Hardware Features</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><section class="VPSidebarItem level-2" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h4 class="text" data-v-b8d55f3b>Displays</h4><!----></div><div class="items" data-v-b8d55f3b><!--[--><section class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/quantum_painter" data-v-b8d55f3b><!--[--><h5 class="text" data-v-b8d55f3b>Quantum Painter</h5><!--]--></a><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-4 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/quantum_painter_lvgl" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Quantum Painter LVGL Integration</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/hd44780" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>HD44780 LCD Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/st7565" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>ST7565 LCD Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/oled_driver" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>OLED Driver</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-2" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h4 class="text" data-v-b8d55f3b>Lighting</h4><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/backlight" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Backlight</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/led_matrix" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>LED Matrix</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/rgblight" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>RGB Lighting</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/rgb_matrix" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>RGB Matrix</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/audio" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Audio</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/bluetooth" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Bluetooth</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/bootmagic" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Bootmagic Lite</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/feature_converters" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Converters</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/custom_matrix" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Custom Matrix</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/dip_switch" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>DIP Switch</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/encoders" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Encoders</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/haptic_feedback" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Haptic Feedback</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/joystick" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Joystick</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/led_indicators" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>LED Indicators</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/midi" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>MIDI</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/pointing_device" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Pointing Device</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/ps2_mouse" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>PS/2 Mouse</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/split_keyboard" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Split Keyboard</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/features/stenography" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Stenography</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Keyboard Building</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/easy_maker" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Easy Maker for One Offs</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/porting_your_keyboard_to_qmk" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Porting Keyboards</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/hand_wire" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Hand Wiring Guide</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/isp_flashing_guide" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>ISP Flashing Guide</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section></div><div class="group" data-v-575e6a36><section class="VPSidebarItem level-0" data-v-575e6a36 data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h2 class="text" data-v-b8d55f3b>Developing QMK</h2><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/pr_checklist" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>PR Checklist</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Breaking Changes</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/breaking_changes" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/breaking_changes_instructions" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>My Pull Request Was Flagged</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/ChangeLog/20240526" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Most Recent ChangeLog</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/breaking_changes_history" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Past Breaking Changes</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/support_deprecation_policy" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Deprecation Policy</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>C Development</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/arm_debugging" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>ARM Debugging Guide</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/coding_conventions_c" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Coding Conventions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/compatible_microcontrollers" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Compatible Microcontrollers</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/hardware_drivers" data-v-b8d55f3b><!--[--><h4 class="text" data-v-b8d55f3b>Drivers</h4><!--]--></a><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/adc" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>ADC Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/apa102" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>APA102 Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/audio" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Audio Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/eeprom" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>EEPROM Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/flash" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Flash Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/i2c" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>I2C Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/serial" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>'serial' Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/spi" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>SPI Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/uart" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>UART Driver</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/ws2812" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>WS2812 Driver</p><!--]--></a><!----></div><!----></div><!--]--></div></section><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/drivers/gpio" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>GPIO Controls</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/hardware_keyboard_guidelines" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Keyboard Guidelines</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Python Development</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/coding_conventions_python" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Coding Conventions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/cli_development" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>QMK CLI Development</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Configurator Development</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><section class="VPSidebarItem level-2" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h4 class="text" data-v-b8d55f3b>QMK API</h4><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/api_development_environment" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Development Environment</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/api_development_overview" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Architecture Overview</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>Hardware Platform Development</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><section class="VPSidebarItem level-2" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h4 class="text" data-v-b8d55f3b>Arm/ChibiOS</h4><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/platformdev_selecting_arm_mcu" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Selecting an MCU</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/platformdev_chibios_earlyinit" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Early initialization</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/platformdev_rp2040" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Raspberry Pi RP2040</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/platformdev_proton_c" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Proton C</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-3 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/platformdev_blackpill_f4x1" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>WeAct Blackpill F4x1</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>QMK Reference</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/contributing" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Contributing to QMK</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/config_options" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Config Options</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/data_driven_config" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Data Driven Configuration</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/getting_started_make_guide" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Make Documentation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/documentation_best_practices" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Documentation Best Practices</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/documentation_templates" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Documentation Templates</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/feature_layouts" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Community Layouts</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/unit_testing" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Unit Testing</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/ref_functions" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Useful Functions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/reference_info_json" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>info.json Format</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1" data-v-b8d55f3b data-v-b8d55f3b><div class="item" role="button" tabindex="0" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><h3 class="text" data-v-b8d55f3b>For a Deeper Understanding</h3><!----></div><div class="items" data-v-b8d55f3b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/how_keyboards_work" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>How Keyboards Work</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/how_a_matrix_works" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>How a Matrix Works</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-b8d55f3b data-v-b8d55f3b><div class="item" data-v-b8d55f3b><div class="indicator" data-v-b8d55f3b></div><a class="VPLink link link" href="/understanding_qmk" data-v-b8d55f3b><!--[--><p class="text" data-v-b8d55f3b>Understanding QMK</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-5d98c3a5 data-v-1428d186><div class="VPDoc has-sidebar has-aside" data-v-1428d186 data-v-39a288b8><!--[--><!--]--><div class="container" data-v-39a288b8><div class="aside" data-v-39a288b8><div class="aside-curtain" data-v-39a288b8></div><div class="aside-container" data-v-39a288b8><div class="aside-content" data-v-39a288b8><div class="VPDocAside" data-v-39a288b8 data-v-3f215769><!--[--><!--]--><!--[--><!--]--><div class="VPDocAsideOutline" role="navigation" data-v-3f215769 data-v-935f8a84><div class="content" data-v-935f8a84><div class="outline-marker" data-v-935f8a84></div><div class="outline-title" role="heading" aria-level="2" data-v-935f8a84>On this page</div><nav aria-labelledby="doc-outline-aria-label" data-v-935f8a84><span class="visually-hidden" id="doc-outline-aria-label" data-v-935f8a84> Table of Contents for current page </span><ul class="VPDocOutlineItem root" data-v-935f8a84 data-v-b933a997><!--[--><!--]--></ul></nav></div></div><!--[--><!--]--><div class="spacer" data-v-3f215769></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-39a288b8><div class="content-container" data-v-39a288b8><!--[--><!--]--><main class="main" data-v-39a288b8><div style="position:relative;" class="vp-doc _keycodes" data-v-39a288b8><div><h1 id="keycodes-overview" tabindex="-1">Keycodes Overview <a class="header-anchor" href="#keycodes-overview" aria-label="Permalink to &quot;Keycodes Overview&quot;"></a></h1><p>When defining a <a href="./keymap">keymap</a> each key needs a valid key definition. This page documents the symbols that correspond to keycodes that are available to you in QMK.</p><p>This is a reference only. Each group of keys links to the page documenting their functionality in more detail.</p><h2 id="basic-keycodes" tabindex="-1">Basic Keycodes <a class="header-anchor" href="#basic-keycodes" aria-label="Permalink to &quot;Basic Keycodes {#basic-keycodes}&quot;"></a></h2><p>See also: <a href="./keycodes_basic">Basic Keycodes</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th><th>Windows</th><th>macOS</th><th>Linux<sup>1</sup></th></tr></thead><tbody><tr><td><code>KC_NO</code></td><td><code>XXXXXXX</code></td><td>Ignore this key (NOOP)</td><td><em>N/A</em></td><td><em>N/A</em></td><td><em>N/A</em></td></tr><tr><td><code>KC_TRANSPARENT</code></td><td><code>KC_TRNS</code>, <code>_______</code></td><td>Use the next lowest non-transparent key</td><td><em>N/A</em></td><td><em>N/A</em></td><td><em>N/A</em></td></tr><tr><td><code>KC_A</code></td><td></td><td><code>a</code> and <code>A</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_B</code></td><td></td><td><code>b</code> and <code>B</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_C</code></td><td></td><td><code>c</code> and <code>C</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_D</code></td><td></td><td><code>d</code> and <code>D</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_E</code></td><td></td><td><code>e</code> and <code>E</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_F</code></td><td></td><td><code>f</code> and <code>F</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_G</code></td><td></td><td><code>g</code> and <code>G</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_H</code></td><td></td><td><code>h</code> and <code>H</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_I</code></td><td></td><td><code>i</code> and <code>I</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_J</code></td><td></td><td><code>j</code> and <code>J</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_K</code></td><td></td><td><code>k</code> and <code>K</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_L</code></td><td></td><td><code>l</code> and <code>L</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_M</code></td><td></td><td><code>m</code> and <code>M</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_N</code></td><td></td><td><code>n</code> and <code>N</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_O</code></td><td></td><td><code>o</code> and <code>O</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_P</code></td><td></td><td><code>p</code> and <code>P</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_Q</code></td><td></td><td><code>q</code> and <code>Q</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_R</code></td><td></td><td><code>r</code> and <code>R</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_S</code></td><td></td><td><code>s</code> and <code>S</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_T</code></td><td></td><td><code>t</code> and <code>T</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_U</code></td><td></td><td><code>u</code> and <code>U</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_V</code></td><td></td><td><code>v</code> and <code>V</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_W</code></td><td></td><td><code>w</code> and <code>W</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_X</code></td><td></td><td><code>x</code> and <code>X</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_Y</code></td><td></td><td><code>y</code> and <code>Y</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_Z</code></td><td></td><td><code>z</code> and <code>Z</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_1</code></td><td></td><td><code>1</code> and <code>!</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_2</code></td><td></td><td><code>2</code> and <code>@</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_3</code></td><td></td><td><code>3</code> and <code>#</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_4</code></td><td></td><td><code>4</code> and <code>$</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_5</code></td><td></td><td><code>5</code> and <code>%</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_6</code></td><td></td><td><code>6</code> and <code>^</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_7</code></td><td></td><td><code>7</code> and <code>&amp;</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_8</code></td><td></td><td><code>8</code> and <code>*</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_9</code></td><td></td><td><code>9</code> and <code>(</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_0</code></td><td></td><td><code>0</code> and <code>)</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_ENTER</code></td><td><code>KC_ENT</code></td><td>Return (Enter)</td><td></td><td></td><td></td></tr><tr><td><code>KC_ESCAPE</code></td><td><code>KC_ESC</code></td><td>Escape</td><td></td><td></td><td></td></tr><tr><td><code>KC_BACKSPACE</code></td><td><code>KC_BSPC</code></td><td>Delete (Backspace)</td><td></td><td></td><td></td></tr><tr><td><code>KC_TAB</code></td><td></td><td>Tab</td><td></td><td></td><td></td></tr><tr><td><code>KC_SPACE</code></td><td><code>KC_SPC</code></td><td>Spacebar</td><td></td><td></td><td></td></tr><tr><td><code>KC_MINUS</code></td><td><code>KC_MINS</code></td><td><code>-</code> and <code>_</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_EQUAL</code></td><td><code>KC_EQL</code></td><td><code>=</code> and <code>+</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_LEFT_BRACKET</code></td><td><code>KC_LBRC</code></td><td><code>[</code> and <code>{</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_RIGHT_BRACKET</code></td><td><code>KC_RBRC</code></td><td><code>]</code> and <code>}</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_BACKSLASH</code></td><td><code>KC_BSLS</code></td><td><code>\</code> and <code>|</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_NONUS_HASH</code></td><td><code>KC_NUHS</code></td><td>Non-US <code>#</code> and <code>~</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_SEMICOLON</code></td><td><code>KC_SCLN</code></td><td><code>;</code> and <code>:</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_QUOTE</code></td><td><code>KC_QUOT</code></td><td><code>&#39;</code> and <code>&quot;</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_GRAVE</code></td><td><code>KC_GRV</code></td><td><code>`</code> and <code>~</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_COMMA</code></td><td><code>KC_COMM</code></td><td><code>,</code> and <code>&lt;</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_DOT</code></td><td></td><td><code>.</code> and <code>&gt;</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_SLASH</code></td><td><code>KC_SLSH</code></td><td><code>/</code> and <code>?</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_CAPS_LOCK</code></td><td><code>KC_CAPS</code></td><td>Caps Lock</td><td></td><td></td><td></td></tr><tr><td><code>KC_F1</code></td><td></td><td>F1</td><td></td><td></td><td></td></tr><tr><td><code>KC_F2</code></td><td></td><td>F2</td><td></td><td></td><td></td></tr><tr><td><code>KC_F3</code></td><td></td><td>F3</td><td></td><td></td><td></td></tr><tr><td><code>KC_F4</code></td><td></td><td>F4</td><td></td><td></td><td></td></tr><tr><td><code>KC_F5</code></td><td></td><td>F5</td><td></td><td></td><td></td></tr><tr><td><code>KC_F6</code></td><td></td><td>F6</td><td></td><td></td><td></td></tr><tr><td><code>KC_F7</code></td><td></td><td>F7</td><td></td><td></td><td></td></tr><tr><td><code>KC_F8</code></td><td></td><td>F8</td><td></td><td></td><td></td></tr><tr><td><code>KC_F9</code></td><td></td><td>F9</td><td></td><td></td><td></td></tr><tr><td><code>KC_F10</code></td><td></td><td>F10</td><td></td><td></td><td></td></tr><tr><td><code>KC_F11</code></td><td></td><td>F11</td><td></td><td></td><td></td></tr><tr><td><code>KC_F12</code></td><td></td><td>F12</td><td></td><td></td><td></td></tr><tr><td><code>KC_PRINT_SCREEN</code></td><td><code>KC_PSCR</code></td><td>Print Screen</td><td></td><td><sup>2</sup></td><td></td></tr><tr><td><code>KC_SCROLL_LOCK</code></td><td><code>KC_SCRL</code>, <code>KC_BRMD</code></td><td>Scroll Lock, Brightness Down (macOS)</td><td></td><td><sup>2</sup></td><td></td></tr><tr><td><code>KC_PAUSE</code></td><td><code>KC_PAUS</code>, <code>KC_BRK</code>, <code>KC_BRMU</code></td><td>Pause, Brightness Up (macOS)</td><td></td><td><sup>2</sup></td><td></td></tr><tr><td><code>KC_INSERT</code></td><td><code>KC_INS</code></td><td>Insert</td><td></td><td></td><td></td></tr><tr><td><code>KC_HOME</code></td><td></td><td>Home</td><td></td><td></td><td></td></tr><tr><td><code>KC_PAGE_UP</code></td><td><code>KC_PGUP</code></td><td>Page Up</td><td></td><td></td><td></td></tr><tr><td><code>KC_DELETE</code></td><td><code>KC_DEL</code></td><td>Forward Delete</td><td></td><td></td><td></td></tr><tr><td><code>KC_END</code></td><td></td><td>End</td><td></td><td></td><td></td></tr><tr><td><code>KC_PAGE_DOWN</code></td><td><code>KC_PGDN</code></td><td>Page Down</td><td></td><td></td><td></td></tr><tr><td><code>KC_RIGHT</code></td><td><code>KC_RGHT</code></td><td>Right Arrow</td><td></td><td></td><td></td></tr><tr><td><code>KC_LEFT</code></td><td></td><td>Left Arrow</td><td></td><td></td><td></td></tr><tr><td><code>KC_DOWN</code></td><td></td><td>Down Arrow</td><td></td><td></td><td></td></tr><tr><td><code>KC_UP</code></td><td></td><td>Up Arrow</td><td></td><td></td><td></td></tr><tr><td><code>KC_NUM_LOCK</code></td><td><code>KC_NUM</code></td><td>Keypad Num Lock and Clear</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_SLASH</code></td><td><code>KC_PSLS</code></td><td>Keypad <code>/</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_ASTERISK</code></td><td><code>KC_PAST</code></td><td>Keypad <code>*</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_MINUS</code></td><td><code>KC_PMNS</code></td><td>Keypad <code>-</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_PLUS</code></td><td><code>KC_PPLS</code></td><td>Keypad <code>+</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_ENTER</code></td><td><code>KC_PENT</code></td><td>Keypad Enter</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_1</code></td><td><code>KC_P1</code></td><td>Keypad <code>1</code> and End</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_2</code></td><td><code>KC_P2</code></td><td>Keypad <code>2</code> and Down Arrow</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_3</code></td><td><code>KC_P3</code></td><td>Keypad <code>3</code> and Page Down</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_4</code></td><td><code>KC_P4</code></td><td>Keypad <code>4</code> and Left Arrow</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_5</code></td><td><code>KC_P5</code></td><td>Keypad <code>5</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_6</code></td><td><code>KC_P6</code></td><td>Keypad <code>6</code> and Right Arrow</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_7</code></td><td><code>KC_P7</code></td><td>Keypad <code>7</code> and Home</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_8</code></td><td><code>KC_P8</code></td><td>Keypad <code>8</code> and Up Arrow</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_9</code></td><td><code>KC_P9</code></td><td>Keypad <code>9</code> and Page Up</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_0</code></td><td><code>KC_P0</code></td><td>Keypad <code>0</code> and Insert</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_DOT</code></td><td><code>KC_PDOT</code></td><td>Keypad <code>.</code> and Delete</td><td></td><td></td><td></td></tr><tr><td><code>KC_NONUS_BACKSLASH</code></td><td><code>KC_NUBS</code></td><td>Non-US <code>\</code> and <code>|</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_APPLICATION</code></td><td><code>KC_APP</code></td><td>Application (Windows Context Menu Key)</td><td></td><td></td><td></td></tr><tr><td><code>KC_KB_POWER</code></td><td></td><td>System Power</td><td></td><td><sup>3</sup></td><td></td></tr><tr><td><code>KC_KP_EQUAL</code></td><td><code>KC_PEQL</code></td><td>Keypad <code>=</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_F13</code></td><td></td><td>F13</td><td></td><td></td><td></td></tr><tr><td><code>KC_F14</code></td><td></td><td>F14</td><td></td><td></td><td></td></tr><tr><td><code>KC_F15</code></td><td></td><td>F15</td><td></td><td></td><td></td></tr><tr><td><code>KC_F16</code></td><td></td><td>F16</td><td></td><td></td><td></td></tr><tr><td><code>KC_F17</code></td><td></td><td>F17</td><td></td><td></td><td></td></tr><tr><td><code>KC_F18</code></td><td></td><td>F18</td><td></td><td></td><td></td></tr><tr><td><code>KC_F19</code></td><td></td><td>F19</td><td></td><td></td><td></td></tr><tr><td><code>KC_F20</code></td><td></td><td>F20</td><td></td><td></td><td></td></tr><tr><td><code>KC_F21</code></td><td></td><td>F21</td><td></td><td></td><td></td></tr><tr><td><code>KC_F22</code></td><td></td><td>F22</td><td></td><td></td><td></td></tr><tr><td><code>KC_F23</code></td><td></td><td>F23</td><td></td><td></td><td></td></tr><tr><td><code>KC_F24</code></td><td></td><td>F24</td><td></td><td></td><td></td></tr><tr><td><code>KC_EXECUTE</code></td><td><code>KC_EXEC</code></td><td>Execute</td><td></td><td></td><td></td></tr><tr><td><code>KC_HELP</code></td><td></td><td>Help</td><td></td><td></td><td></td></tr><tr><td><code>KC_MENU</code></td><td></td><td>Menu</td><td></td><td></td><td></td></tr><tr><td><code>KC_SELECT</code></td><td><code>KC_SLCT</code></td><td>Select</td><td></td><td></td><td></td></tr><tr><td><code>KC_STOP</code></td><td></td><td>Stop</td><td></td><td></td><td></td></tr><tr><td><code>KC_AGAIN</code></td><td><code>KC_AGIN</code></td><td>Again</td><td></td><td></td><td></td></tr><tr><td><code>KC_UNDO</code></td><td></td><td>Undo</td><td></td><td></td><td></td></tr><tr><td><code>KC_CUT</code></td><td></td><td>Cut</td><td></td><td></td><td></td></tr><tr><td><code>KC_COPY</code></td><td></td><td>Copy</td><td></td><td></td><td></td></tr><tr><td><code>KC_PASTE</code></td><td><code>KC_PSTE</code></td><td>Paste</td><td></td><td></td><td></td></tr><tr><td><code>KC_FIND</code></td><td></td><td>Find</td><td></td><td></td><td></td></tr><tr><td><code>KC_KB_MUTE</code></td><td></td><td>Mute</td><td></td><td></td><td></td></tr><tr><td><code>KC_KB_VOLUME_UP</code></td><td></td><td>Volume Up</td><td></td><td></td><td></td></tr><tr><td><code>KC_KB_VOLUME_DOWN</code></td><td></td><td>Volume Down</td><td></td><td></td><td></td></tr><tr><td><code>KC_LOCKING_CAPS_LOCK</code></td><td><code>KC_LCAP</code></td><td>Locking Caps Lock</td><td></td><td></td><td></td></tr><tr><td><code>KC_LOCKING_NUM_LOCK</code></td><td><code>KC_LNUM</code></td><td>Locking Num Lock</td><td></td><td></td><td></td></tr><tr><td><code>KC_LOCKING_SCROLL_LOCK</code></td><td><code>KC_LSCR</code></td><td>Locking Scroll Lock</td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_COMMA</code></td><td><code>KC_PCMM</code></td><td>Keypad <code>,</code></td><td></td><td></td><td></td></tr><tr><td><code>KC_KP_EQUAL_AS400</code></td><td></td><td>Keypad <code>=</code> on AS/400 keyboards</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_1</code></td><td><code>KC_INT1</code></td><td>International 1</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_2</code></td><td><code>KC_INT2</code></td><td>International 2</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_3</code></td><td><code>KC_INT3</code></td><td>International 3</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_4</code></td><td><code>KC_INT4</code></td><td>International 4</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_5</code></td><td><code>KC_INT5</code></td><td>International 5</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_6</code></td><td><code>KC_INT6</code></td><td>International 6</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_7</code></td><td><code>KC_INT7</code></td><td>International 7</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_8</code></td><td><code>KC_INT8</code></td><td>International 8</td><td></td><td></td><td></td></tr><tr><td><code>KC_INTERNATIONAL_9</code></td><td><code>KC_INT9</code></td><td>International 9</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_1</code></td><td><code>KC_LNG1</code></td><td>Language 1</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_2</code></td><td><code>KC_LNG2</code></td><td>Language 2</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_3</code></td><td><code>KC_LNG3</code></td><td>Language 3</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_4</code></td><td><code>KC_LNG4</code></td><td>Language 4</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_5</code></td><td><code>KC_LNG5</code></td><td>Language 5</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_6</code></td><td><code>KC_LNG6</code></td><td>Language 6</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_7</code></td><td><code>KC_LNG7</code></td><td>Language 7</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_8</code></td><td><code>KC_LNG8</code></td><td>Language 8</td><td></td><td></td><td></td></tr><tr><td><code>KC_LANGUAGE_9</code></td><td><code>KC_LNG9</code></td><td>Language 9</td><td></td><td></td><td></td></tr><tr><td><code>KC_ALTERNATE_ERASE</code></td><td><code>KC_ERAS</code></td><td>Alternate Erase</td><td></td><td></td><td></td></tr><tr><td><code>KC_SYSTEM_REQUEST</code></td><td><code>KC_SYRQ</code></td><td>SysReq/Attention</td><td></td><td></td><td></td></tr><tr><td><code>KC_CANCEL</code></td><td><code>KC_CNCL</code></td><td>Cancel</td><td></td><td></td><td></td></tr><tr><td><code>KC_CLEAR</code></td><td><code>KC_CLR</code></td><td>Clear</td><td></td><td></td><td></td></tr><tr><td><code>KC_PRIOR</code></td><td><code>KC_PRIR</code></td><td>Prior</td><td></td><td></td><td></td></tr><tr><td><code>KC_RETURN</code></td><td><code>KC_RETN</code></td><td>Return</td><td></td><td></td><td></td></tr><tr><td><code>KC_SEPARATOR</code></td><td><code>KC_SEPR</code></td><td>Separator</td><td></td><td></td><td></td></tr><tr><td><code>KC_OUT</code></td><td></td><td>Out</td><td></td><td></td><td></td></tr><tr><td><code>KC_OPER</code></td><td></td><td>Oper</td><td></td><td></td><td></td></tr><tr><td><code>KC_CLEAR_AGAIN</code></td><td><code>KC_CLAG</code></td><td>Clear/Again</td><td></td><td></td><td></td></tr><tr><td><code>KC_CRSEL</code></td><td><code>KC_CRSL</code></td><td>CrSel/Props</td><td></td><td></td><td></td></tr><tr><td><code>KC_EXSEL</code></td><td><code>KC_EXSL</code></td><td>ExSel</td><td></td><td></td><td></td></tr><tr><td><code>KC_LEFT_CTRL</code></td><td><code>KC_LCTL</code></td><td>Left Control</td><td></td><td></td><td></td></tr><tr><td><code>KC_LEFT_SHIFT</code></td><td><code>KC_LSFT</code></td><td>Left Shift</td><td></td><td></td><td></td></tr><tr><td><code>KC_LEFT_ALT</code></td><td><code>KC_LALT</code>, <code>KC_LOPT</code></td><td>Left Alt (Option)</td><td></td><td></td><td></td></tr><tr><td><code>KC_LEFT_GUI</code></td><td><code>KC_LGUI</code>, <code>KC_LCMD</code>, <code>KC_LWIN</code></td><td>Left GUI (Windows/Command/Meta key)</td><td></td><td></td><td></td></tr><tr><td><code>KC_RIGHT_CTRL</code></td><td><code>KC_RCTL</code></td><td>Right Control</td><td></td><td></td><td></td></tr><tr><td><code>KC_RIGHT_SHIFT</code></td><td><code>KC_RSFT</code></td><td>Right Shift</td><td></td><td></td><td></td></tr><tr><td><code>KC_RIGHT_ALT</code></td><td><code>KC_RALT</code>, <code>KC_ROPT</code>, <code>KC_ALGR</code></td><td>Right Alt (Option/AltGr)</td><td></td><td></td><td></td></tr><tr><td><code>KC_RIGHT_GUI</code></td><td><code>KC_RGUI</code>, <code>KC_RCMD</code>, <code>KC_RWIN</code></td><td>Right GUI (Windows/Command/Meta key)</td><td></td><td></td><td></td></tr><tr><td><code>KC_SYSTEM_POWER</code></td><td><code>KC_PWR</code></td><td>System Power Down</td><td></td><td><sup>3</sup></td><td></td></tr><tr><td><code>KC_SYSTEM_SLEEP</code></td><td><code>KC_SLEP</code></td><td>System Sleep</td><td></td><td><sup>3</sup></td><td></td></tr><tr><td><code>KC_SYSTEM_WAKE</code></td><td><code>KC_WAKE</code></td><td>System Wake</td><td></td><td><sup>3</sup></td><td></td></tr><tr><td><code>KC_AUDIO_MUTE</code></td><td><code>KC_MUTE</code></td><td>Mute</td><td></td><td></td><td></td></tr><tr><td><code>KC_AUDIO_VOL_UP</code></td><td><code>KC_VOLU</code></td><td>Volume Up</td><td></td><td><sup>4</sup></td><td></td></tr><tr><td><code>KC_AUDIO_VOL_DOWN</code></td><td><code>KC_VOLD</code></td><td>Volume Down</td><td></td><td><sup>4</sup></td><td></td></tr><tr><td><code>KC_MEDIA_NEXT_TRACK</code></td><td><code>KC_MNXT</code></td><td>Next Track</td><td></td><td><sup>5</sup></td><td></td></tr><tr><td><code>KC_MEDIA_PREV_TRACK</code></td><td><code>KC_MPRV</code></td><td>Previous Track</td><td></td><td><sup>5</sup></td><td></td></tr><tr><td><code>KC_MEDIA_STOP</code></td><td><code>KC_MSTP</code></td><td>Stop Track</td><td></td><td></td><td></td></tr><tr><td><code>KC_MEDIA_PLAY_PAUSE</code></td><td><code>KC_MPLY</code></td><td>Play/Pause Track</td><td></td><td></td><td></td></tr><tr><td><code>KC_MEDIA_SELECT</code></td><td><code>KC_MSEL</code></td><td>Launch Media Player</td><td></td><td></td><td></td></tr><tr><td><code>KC_MEDIA_EJECT</code></td><td><code>KC_EJCT</code></td><td>Eject</td><td></td><td></td><td></td></tr><tr><td><code>KC_MAIL</code></td><td></td><td>Launch Mail</td><td></td><td></td><td></td></tr><tr><td><code>KC_CALCULATOR</code></td><td><code>KC_CALC</code></td><td>Launch Calculator</td><td></td><td></td><td></td></tr><tr><td><code>KC_MY_COMPUTER</code></td><td><code>KC_MYCM</code></td><td>Launch My Computer</td><td></td><td></td><td></td></tr><tr><td><code>KC_WWW_SEARCH</code></td><td><code>KC_WSCH</code></td><td>Browser Search</td><td></td><td></td><td></td></tr><tr><td><code>KC_WWW_HOME</code></td><td><code>KC_WHOM</code></td><td>Browser Home</td><td></td><td></td><td></td></tr><tr><td><code>KC_WWW_BACK</code></td><td><code>KC_WBAK</code></td><td>Browser Back</td><td></td><td></td><td></td></tr><tr><td><code>KC_WWW_FORWARD</code></td><td><code>KC_WFWD</code></td><td>Browser Forward</td><td></td><td></td><td></td></tr><tr><td><code>KC_WWW_STOP</code></td><td><code>KC_WSTP</code></td><td>Browser Stop</td><td></td><td></td><td></td></tr><tr><td><code>KC_WWW_REFRESH</code></td><td><code>KC_WREF</code></td><td>Browser Refresh</td><td></td><td></td><td></td></tr><tr><td><code>KC_WWW_FAVORITES</code></td><td><code>KC_WFAV</code></td><td>Browser Favorites</td><td></td><td></td><td></td></tr><tr><td><code>KC_MEDIA_FAST_FORWARD</code></td><td><code>KC_MFFD</code></td><td>Next Track</td><td></td><td><sup>5</sup></td><td></td></tr><tr><td><code>KC_MEDIA_REWIND</code></td><td><code>KC_MRWD</code></td><td>Previous Track</td><td><sup>6</sup></td><td><sup>5</sup></td><td></td></tr><tr><td><code>KC_BRIGHTNESS_UP</code></td><td><code>KC_BRIU</code></td><td>Brightness Up</td><td></td><td></td><td></td></tr><tr><td><code>KC_BRIGHTNESS_DOWN</code></td><td><code>KC_BRID</code></td><td>Brightness Down</td><td></td><td></td><td></td></tr><tr><td><code>KC_CONTROL_PANEL</code></td><td><code>KC_CPNL</code></td><td>Open Control Panel</td><td></td><td></td><td></td></tr><tr><td><code>KC_ASSISTANT</code></td><td><code>KC_ASST</code></td><td>Launch Context-Aware Assistant</td><td></td><td></td><td></td></tr><tr><td><code>KC_MISSION_CONTROL</code></td><td><code>KC_MCTL</code></td><td>Open Mission Control</td><td></td><td></td><td></td></tr><tr><td><code>KC_LAUNCHPAD</code></td><td><code>KC_LPAD</code></td><td>Open Launchpad</td><td></td><td></td><td></td></tr></tbody></table><p><sup>1. The Linux kernel HID driver recognizes <a href="https://github.com/torvalds/linux/blob/master/drivers/hid/hid-input.c" target="_blank" rel="noreferrer">nearly all keycodes</a>, but the default bindings depend on the DE/WM.</sup><br><sup>2. Treated as F13-F15.</sup><br><sup>3. Must be held for about three seconds, and will display a prompt instead.</sup><br><sup>4. Holding Shift+Option allows for finer control of volume level.</sup><br><sup>5. Skips the entire track in iTunes when tapped, seeks within the current track when held.</sup><br><sup>6. WMP does not recognize the Rewind key, but both alter playback speed in VLC.</sup></p><h2 id="quantum-keycodes" tabindex="-1">Quantum Keycodes <a class="header-anchor" href="#quantum-keycodes" aria-label="Permalink to &quot;Quantum Keycodes {#quantum-keycodes}&quot;"></a></h2><p>See also: <a href="./quantum_keycodes#qmk-keycodes">Quantum Keycodes</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_BOOTLOADER</code></td><td><code>QK_BOOT</code></td><td>Put the keyboard into bootloader mode for flashing</td></tr><tr><td><code>QK_DEBUG_TOGGLE</code></td><td><code>DB_TOGG</code></td><td>Toggle debug mode</td></tr><tr><td><code>QK_CLEAR_EEPROM</code></td><td><code>EE_CLR</code></td><td>Reinitializes the keyboard&#39;s EEPROM (persistent memory)</td></tr><tr><td><code>QK_MAKE</code></td><td></td><td>Sends <code>qmk compile -kb (keyboard) -km (keymap)</code>, or <code>qmk flash</code> if shift is held. Puts keyboard into bootloader mode if shift &amp; control are held</td></tr><tr><td><code>QK_REBOOT</code></td><td><code>QK_RBT</code></td><td>Resets the keyboard. Does not load the bootloader</td></tr></tbody></table><h2 id="audio-keys" tabindex="-1">Audio Keys <a class="header-anchor" href="#audio-keys" aria-label="Permalink to &quot;Audio Keys {#audio-keys}&quot;"></a></h2><p>See also: <a href="./features/audio">Audio</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_AUDIO_ON</code></td><td><code>AU_ON</code></td><td>Turns on Audio Feature</td></tr><tr><td><code>QK_AUDIO_OFF</code></td><td><code>AU_OFF</code></td><td>Turns off Audio Feature</td></tr><tr><td><code>QK_AUDIO_TOGGLE</code></td><td><code>AU_TOGG</code></td><td>Toggles Audio state</td></tr><tr><td><code>QK_AUDIO_CLICKY_TOGGLE</code></td><td><code>CK_TOGG</code></td><td>Toggles Audio clicky mode</td></tr><tr><td><code>QK_AUDIO_CLICKY_ON</code></td><td><code>CK_ON</code></td><td>Turns on Audio clicky mode</td></tr><tr><td><code>QK_AUDIO_CLICKY_OFF</code></td><td><code>CK_OFF</code></td><td>Turns on Audio clicky mode</td></tr><tr><td><code>QK_AUDIO_CLICKY_UP</code></td><td><code>CK_UP</code></td><td>Increases frequency of the clicks</td></tr><tr><td><code>QK_AUDIO_CLICKY_DOWN</code></td><td><code>CK_DOWN</code></td><td>Decreases frequency of the clicks</td></tr><tr><td><code>QK_AUDIO_CLICKY_RESET</code></td><td><code>CK_RST</code></td><td>Resets frequency to default</td></tr><tr><td><code>QK_MUSIC_ON</code></td><td><code>MU_ON</code></td><td>Turns on Music Mode</td></tr><tr><td><code>QK_MUSIC_OFF</code></td><td><code>MU_OFF</code></td><td>Turns off Music Mode</td></tr><tr><td><code>QK_MUSIC_TOGGLE</code></td><td><code>MU_TOGG</code></td><td>Toggles Music Mode</td></tr><tr><td><code>QK_MUSIC_MODE_NEXT</code></td><td><code>MU_NEXT</code></td><td>Cycles through the music modes</td></tr><tr><td><code>QK_AUDIO_VOICE_NEXT</code></td><td><code>AU_NEXT</code></td><td>Cycles through the audio voices</td></tr><tr><td><code>QK_AUDIO_VOICE_PREVIOUS</code></td><td><code>AU_PREV</code></td><td>Cycles through the audio voices in reverse</td></tr></tbody></table><h2 id="auto-shift" tabindex="-1">Auto Shift <a class="header-anchor" href="#auto-shift" aria-label="Permalink to &quot;Auto Shift {#auto-shift}&quot;"></a></h2><p>See also: <a href="./features/auto_shift">Auto Shift</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_AUTO_SHIFT_DOWN</code></td><td><code>AS_DOWN</code></td><td>Lower the Auto Shift timeout variable (down)</td></tr><tr><td><code>QK_AUTO_SHIFT_UP</code></td><td><code>AS_UP</code></td><td>Raise the Auto Shift timeout variable (up)</td></tr><tr><td><code>QK_AUTO_SHIFT_REPORT</code></td><td><code>AS_RPT</code></td><td>Report your current Auto Shift timeout value</td></tr><tr><td><code>QK_AUTO_SHIFT_ON</code></td><td><code>AS_ON</code></td><td>Turns on the Auto Shift Function</td></tr><tr><td><code>QK_AUTO_SHIFT_OFF</code></td><td><code>AS_OFF</code></td><td>Turns off the Auto Shift Function</td></tr><tr><td><code>QK_AUTO_SHIFT_TOGGLE</code></td><td><code>AS_TOGG</code></td><td>Toggles the state of the Auto Shift feature</td></tr></tbody></table><h2 id="autocorrect" tabindex="-1">Autocorrect <a class="header-anchor" href="#autocorrect" aria-label="Permalink to &quot;Autocorrect {#autocorrect}&quot;"></a></h2><p>See also: <a href="./features/autocorrect">Autocorrect</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_AUTOCORRECT_ON</code></td><td><code>AC_ON</code></td><td>Turns on the Autocorrect feature.</td></tr><tr><td><code>QK_AUTOCORRECT_OFF</code></td><td><code>AC_OFF</code></td><td>Turns off the Autocorrect feature.</td></tr><tr><td><code>QK_AUTOCORRECT_TOGGLE</code></td><td><code>AC_TOGG</code></td><td>Toggles the status of the Autocorrect feature.</td></tr></tbody></table><h2 id="backlighting" tabindex="-1">Backlighting <a class="header-anchor" href="#backlighting" aria-label="Permalink to &quot;Backlighting {#backlighting}&quot;"></a></h2><p>See also: <a href="./features/backlight">Backlighting</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_BACKLIGHT_TOGGLE</code></td><td><code>BL_TOGG</code></td><td>Turn the backlight on or off</td></tr><tr><td><code>QK_BACKLIGHT_STEP</code></td><td><code>BL_STEP</code></td><td>Cycle through backlight levels</td></tr><tr><td><code>QK_BACKLIGHT_ON</code></td><td><code>BL_ON</code></td><td>Set the backlight to max brightness</td></tr><tr><td><code>QK_BACKLIGHT_OFF</code></td><td><code>BL_OFF</code></td><td>Turn the backlight off</td></tr><tr><td><code>QK_BACKLIGHT_UP</code></td><td><code>BL_UP</code></td><td>Increase the backlight level</td></tr><tr><td><code>QK_BACKLIGHT_DOWN</code></td><td><code>BL_DOWN</code></td><td>Decrease the backlight level</td></tr><tr><td><code>QK_BACKLIGHT_TOGGLE_BREATHING</code></td><td><code>BL_BRTG</code></td><td>Toggle backlight breathing</td></tr></tbody></table><h2 id="bluetooth" tabindex="-1">Bluetooth <a class="header-anchor" href="#bluetooth" aria-label="Permalink to &quot;Bluetooth {#bluetooth}&quot;"></a></h2><p>See also: <a href="./features/bluetooth">Bluetooth</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_OUTPUT_AUTO</code></td><td><code>OU_AUTO</code></td><td>Automatically switch between USB and Bluetooth</td></tr><tr><td><code>QK_OUTPUT_USB</code></td><td><code>OU_USB</code></td><td>USB only</td></tr><tr><td><code>QK_OUTPUT_BLUETOOTH</code></td><td><code>OU_BT</code></td><td>Bluetooth only</td></tr></tbody></table><h2 id="caps-word" tabindex="-1">Caps Word <a class="header-anchor" href="#caps-word" aria-label="Permalink to &quot;Caps Word {#caps-word}&quot;"></a></h2><p>See also: <a href="./features/caps_word">Caps Word</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_CAPS_WORD_TOGGLE</code></td><td><code>CW_TOGG</code></td><td>Toggles Caps Word</td></tr></tbody></table><h2 id="dynamic-macros" tabindex="-1">Dynamic Macros <a class="header-anchor" href="#dynamic-macros" aria-label="Permalink to &quot;Dynamic Macros {#dynamic-macros}&quot;"></a></h2><p>See also: <a href="./features/dynamic_macros">Dynamic Macros</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_DYNAMIC_MACRO_RECORD_START_1</code></td><td><code>DM_REC1</code></td><td>Start recording Macro 1</td></tr><tr><td><code>QK_DYNAMIC_MACRO_RECORD_START_2</code></td><td><code>DM_REC2</code></td><td>Start recording Macro 2</td></tr><tr><td><code>QK_DYNAMIC_MACRO_PLAY_1</code></td><td><code>DM_PLY1</code></td><td>Replay Macro 1</td></tr><tr><td><code>QK_DYNAMIC_MACRO_PLAY_2</code></td><td><code>DM_PLY2</code></td><td>Replay Macro 2</td></tr><tr><td><code>QK_DYNAMIC_MACRO_RECORD_STOP</code></td><td><code>DM_RSTP</code></td><td>Finish the macro that is currently being recorded.</td></tr></tbody></table><h2 id="grave-escape" tabindex="-1">Grave Escape <a class="header-anchor" href="#grave-escape" aria-label="Permalink to &quot;Grave Escape {#grave-escape}&quot;"></a></h2><p>See also: <a href="./features/grave_esc">Grave Escape</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_GRAVE_ESCAPE</code></td><td><code>QK_GESC</code></td><td>Escape when pressed, <code>`</code> when Shift or GUI are held</td></tr></tbody></table><h2 id="joystick" tabindex="-1">Joystick <a class="header-anchor" href="#joystick" aria-label="Permalink to &quot;Joystick {#joystick}&quot;"></a></h2><p>See also: <a href="./features/joystick">Joystick</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_JOYSTICK_BUTTON_0</code></td><td><code>JS_0</code></td><td>Button 0</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_1</code></td><td><code>JS_1</code></td><td>Button 1</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_2</code></td><td><code>JS_2</code></td><td>Button 2</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_3</code></td><td><code>JS_3</code></td><td>Button 3</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_4</code></td><td><code>JS_4</code></td><td>Button 4</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_5</code></td><td><code>JS_5</code></td><td>Button 5</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_6</code></td><td><code>JS_6</code></td><td>Button 6</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_7</code></td><td><code>JS_7</code></td><td>Button 7</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_8</code></td><td><code>JS_8</code></td><td>Button 8</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_9</code></td><td><code>JS_9</code></td><td>Button 9</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_10</code></td><td><code>JS_10</code></td><td>Button 10</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_11</code></td><td><code>JS_11</code></td><td>Button 11</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_12</code></td><td><code>JS_12</code></td><td>Button 12</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_13</code></td><td><code>JS_13</code></td><td>Button 13</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_14</code></td><td><code>JS_14</code></td><td>Button 14</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_15</code></td><td><code>JS_15</code></td><td>Button 15</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_16</code></td><td><code>JS_16</code></td><td>Button 16</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_17</code></td><td><code>JS_17</code></td><td>Button 17</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_18</code></td><td><code>JS_18</code></td><td>Button 18</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_19</code></td><td><code>JS_19</code></td><td>Button 19</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_20</code></td><td><code>JS_20</code></td><td>Button 20</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_21</code></td><td><code>JS_21</code></td><td>Button 21</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_22</code></td><td><code>JS_22</code></td><td>Button 22</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_23</code></td><td><code>JS_23</code></td><td>Button 23</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_24</code></td><td><code>JS_24</code></td><td>Button 24</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_25</code></td><td><code>JS_25</code></td><td>Button 25</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_26</code></td><td><code>JS_26</code></td><td>Button 26</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_27</code></td><td><code>JS_27</code></td><td>Button 27</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_28</code></td><td><code>JS_28</code></td><td>Button 28</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_29</code></td><td><code>JS_29</code></td><td>Button 29</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_30</code></td><td><code>JS_30</code></td><td>Button 30</td></tr><tr><td><code>QK_JOYSTICK_BUTTON_31</code></td><td><code>JS_31</code></td><td>Button 31</td></tr></tbody></table><h2 id="key-lock" tabindex="-1">Key Lock <a class="header-anchor" href="#key-lock" aria-label="Permalink to &quot;Key Lock {#key-lock}&quot;"></a></h2><p>See also: <a href="./features/key_lock">Key Lock</a></p><table><thead><tr><th>Key</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_LOCK</code></td><td>Hold down the next key pressed, until the key is pressed again</td></tr></tbody></table><h2 id="layer-switching" tabindex="-1">Layer Switching <a class="header-anchor" href="#layer-switching" aria-label="Permalink to &quot;Layer Switching {#layer-switching}&quot;"></a></h2><p>See also: <a href="./feature_layers#switching-and-toggling-layers">Layer Switching</a></p><table><thead><tr><th>Key</th><th>Description</th></tr></thead><tbody><tr><td><code>DF(layer)</code></td><td>Set the base (default) layer</td></tr><tr><td><code>MO(layer)</code></td><td>Momentarily turn on <code>layer</code> when pressed (requires <code>KC_TRNS</code> on destination layer)</td></tr><tr><td><code>OSL(layer)</code></td><td>Momentarily activates <code>layer</code> until a key is pressed. See <a href="./one_shot_keys">One Shot Keys</a> for details.</td></tr><tr><td><code>LM(layer, mod)</code></td><td>Momentarily turn on <code>layer</code> (like MO) with <code>mod</code> active as well. Where <code>mod</code> is a mods_bit. Mods can be viewed <a href="./mod_tap">here</a>. Example Implementation: <code>LM(LAYER_1, MOD_LALT)</code></td></tr><tr><td><code>LT(layer, kc)</code></td><td>Turn on <code>layer</code> when held, <code>kc</code> when tapped</td></tr><tr><td><code>TG(layer)</code></td><td>Toggle <code>layer</code> on or off</td></tr><tr><td><code>TO(layer)</code></td><td>Turns on <code>layer</code> and turns off all other layers, except the default layer</td></tr><tr><td><code>TT(layer)</code></td><td>Normally acts like MO unless it&#39;s tapped multiple times, which toggles <code>layer</code> on</td></tr></tbody></table><h2 id="leader-key" tabindex="-1">Leader Key <a class="header-anchor" href="#leader-key" aria-label="Permalink to &quot;Leader Key {#leader-key}&quot;"></a></h2><p>See also: <a href="./features/leader_key">Leader Key</a></p><table><thead><tr><th>Key</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_LEAD</code></td><td>Begins a leader sequence</td></tr></tbody></table><h2 id="led-matrix" tabindex="-1">LED Matrix <a class="header-anchor" href="#led-matrix" aria-label="Permalink to &quot;LED Matrix {#led-matrix}&quot;"></a></h2><p>See also: <a href="./features/led_matrix">LED Matrix</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_LED_MATRIX_ON</code></td><td><code>LM_ON</code></td><td>Turn on LED Matrix</td></tr><tr><td><code>QK_LED_MATRIX_OFF</code></td><td><code>LM_OFF</code></td><td>Turn off LED Matrix</td></tr><tr><td><code>QK_LED_MATRIX_TOGGLE</code></td><td><code>LM_TOGG</code></td><td>Toggle LED Matrix on or off</td></tr><tr><td><code>QK_LED_MATRIX_MODE_NEXT</code></td><td><code>LM_NEXT</code></td><td>Cycle through animations</td></tr><tr><td><code>QK_LED_MATRIX_MODE_PREVIOUS</code></td><td><code>LM_PREV</code></td><td>Cycle through animations in reverse</td></tr><tr><td><code>QK_LED_MATRIX_BRIGHTNESS_UP</code></td><td><code>LM_BRIU</code></td><td>Increase the brightness level</td></tr><tr><td><code>QK_LED_MATRIX_BRIGHTNESS_DOWN</code></td><td><code>LM_BRID</code></td><td>Decrease the brightness level</td></tr><tr><td><code>QK_LED_MATRIX_SPEED_UP</code></td><td><code>LM_SPDU</code></td><td>Increase the animation speed</td></tr><tr><td><code>QK_LED_MATRIX_SPEED_DOWN</code></td><td><code>LM_SPDD</code></td><td>Decrease the animation speed</td></tr></tbody></table><h2 id="magic-keycodes" tabindex="-1">Magic Keycodes <a class="header-anchor" href="#magic-keycodes" aria-label="Permalink to &quot;Magic Keycodes {#magic-keycodes}&quot;"></a></h2><p>See also: <a href="./keycodes_magic">Magic Keycodes</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_MAGIC_SWAP_CONTROL_CAPS_LOCK</code></td><td><code>CL_SWAP</code></td><td>Swap Caps Lock and Left Control</td></tr><tr><td><code>QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCK</code></td><td><code>CL_NORM</code></td><td>Unswap Caps Lock and Left Control</td></tr><tr><td><code>QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCK</code></td><td><code>CL_TOGG</code></td><td>Toggle Caps Lock and Left Control swap</td></tr><tr><td><code>QK_MAGIC_CAPS_LOCK_AS_CONTROL_ON</code></td><td><code>CL_CTRL</code></td><td>Treat Caps Lock as Control</td></tr><tr><td><code>QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFF</code></td><td><code>CL_CAPS</code></td><td>Stop treating Caps Lock as Control</td></tr><tr><td><code>QK_MAGIC_SWAP_ESCAPE_CAPS_LOCK</code></td><td><code>EC_SWAP</code></td><td>Swap Caps Lock and Escape</td></tr><tr><td><code>QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCK</code></td><td><code>EC_NORM</code></td><td>Unswap Caps Lock and Escape</td></tr><tr><td><code>QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK</code></td><td><code>EC_TOGG</code></td><td>Toggle Caps Lock and Escape swap</td></tr><tr><td><code>QK_MAGIC_SWAP_LCTL_LGUI</code></td><td><code>CG_LSWP</code></td><td>Swap Left Control and GUI</td></tr><tr><td><code>QK_MAGIC_UNSWAP_LCTL_LGUI</code></td><td><code>CG_LNRM</code></td><td>Unswap Left Control and GUI</td></tr><tr><td><code>QK_MAGIC_SWAP_RCTL_RGUI</code></td><td><code>CG_RSWP</code></td><td>Swap Right Control and GUI</td></tr><tr><td><code>QK_MAGIC_UNSWAP_RCTL_RGUI</code></td><td><code>CG_RNRM</code></td><td>Unswap Right Control and GUI</td></tr><tr><td><code>QK_MAGIC_SWAP_CTL_GUI</code></td><td><code>CG_SWAP</code></td><td>Swap Control and GUI on both sides</td></tr><tr><td><code>QK_MAGIC_UNSWAP_CTL_GUI</code></td><td><code>CG_NORM</code></td><td>Unswap Control and GUI on both sides</td></tr><tr><td><code>QK_MAGIC_TOGGLE_CTL_GUI</code></td><td><code>CG_TOGG</code></td><td>Toggle Control and GUI swap on both sides</td></tr><tr><td><code>QK_MAGIC_SWAP_LALT_LGUI</code></td><td><code>AG_LSWP</code></td><td>Swap Left Alt and GUI</td></tr><tr><td><code>QK_MAGIC_UNSWAP_LALT_LGUI</code></td><td><code>AG_LNRM</code></td><td>Unswap Left Alt and GUI</td></tr><tr><td><code>QK_MAGIC_SWAP_RALT_RGUI</code></td><td><code>AG_RSWP</code></td><td>Swap Right Alt and GUI</td></tr><tr><td><code>QK_MAGIC_UNSWAP_RALT_RGUI</code></td><td><code>AG_RNRM</code></td><td>Unswap Right Alt and GUI</td></tr><tr><td><code>QK_MAGIC_SWAP_ALT_GUI</code></td><td><code>AG_SWAP</code></td><td>Swap Alt and GUI on both sides</td></tr><tr><td><code>QK_MAGIC_UNSWAP_ALT_GUI</code></td><td><code>AG_NORM</code></td><td>Unswap Alt and GUI on both sides</td></tr><tr><td><code>QK_MAGIC_TOGGLE_ALT_GUI</code></td><td><code>AG_TOGG</code></td><td>Toggle Alt and GUI swap on both sides</td></tr><tr><td><code>QK_MAGIC_GUI_OFF</code></td><td><code>GU_OFF</code></td><td>Disable the GUI keys</td></tr><tr><td><code>QK_MAGIC_GUI_ON</code></td><td><code>GU_ON</code></td><td>Enable the GUI keys</td></tr><tr><td><code>QK_MAGIC_TOGGLE_GUI</code></td><td><code>GU_TOGG</code></td><td>Toggles the status of the GUI keys</td></tr><tr><td><code>QK_MAGIC_SWAP_GRAVE_ESC</code></td><td><code>GE_SWAP</code></td><td>Swap <code>`</code> and Escape</td></tr><tr><td><code>QK_MAGIC_UNSWAP_GRAVE_ESC</code></td><td><code>GE_NORM</code></td><td>Unswap <code>`</code> and Escape</td></tr><tr><td><code>QK_MAGIC_SWAP_BACKSLASH_BACKSPACE</code></td><td><code>BS_SWAP</code></td><td>Swap <code>\</code> and Backspace</td></tr><tr><td><code>QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACE</code></td><td><code>BS_NORM</code></td><td>Unswap <code>\</code> and Backspace</td></tr><tr><td><code>QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACE</code></td><td><code>BS_TOGG</code></td><td>Toggle <code>\</code> and Backspace swap state</td></tr><tr><td><code>QK_MAGIC_NKRO_ON</code></td><td><code>NK_ON</code></td><td>Enable N-key rollover</td></tr><tr><td><code>QK_MAGIC_NKRO_OFF</code></td><td><code>NK_OFF</code></td><td>Disable N-key rollover</td></tr><tr><td><code>QK_MAGIC_TOGGLE_NKRO</code></td><td><code>NK_TOGG</code></td><td>Toggle N-key rollover</td></tr><tr><td><code>QK_MAGIC_EE_HANDS_LEFT</code></td><td><code>EH_LEFT</code></td><td>Set the master half of a split keyboard as the left hand (for <code>EE_HANDS</code>)</td></tr><tr><td><code>QK_MAGIC_EE_HANDS_RIGHT</code></td><td><code>EH_RGHT</code></td><td>Set the master half of a split keyboard as the right hand (for <code>EE_HANDS</code>)</td></tr></tbody></table><h2 id="midi" tabindex="-1">MIDI <a class="header-anchor" href="#midi" aria-label="Permalink to &quot;MIDI {#midi}&quot;"></a></h2><p>See also: <a href="./features/midi">MIDI</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_MIDI_ON</code></td><td><code>MI_ON</code></td><td>Turn MIDI on</td></tr><tr><td><code>QK_MIDI_OFF</code></td><td><code>MI_OFF</code></td><td>Turn MIDI off</td></tr><tr><td><code>QK_MIDI_TOGGLE</code></td><td><code>MI_TOGG</code></td><td>Toggle MIDI enabled</td></tr><tr><td><code>QK_MIDI_NOTE_C_0</code></td><td><code>MI_C</code></td><td>C octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_C_SHARP_0</code></td><td><code>MI_Cs</code>, <code>MI_Db</code></td><td>C♯/D♭ octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_D_0</code></td><td><code>MI_D</code></td><td>D octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_D_SHARP_0</code></td><td><code>MI_Ds</code>, <code>MI_Eb</code></td><td>D♯/E♭ octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_E_0</code></td><td><code>MI_E</code></td><td>E octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_F_0</code></td><td><code>MI_F</code></td><td>F octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_F_SHARP_0</code></td><td><code>MI_Fs</code>, <code>MI_Gb</code></td><td>F♯/G♭ octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_G_0</code></td><td><code>MI_G</code></td><td>G octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_G_SHARP_0</code></td><td><code>MI_Gs</code>, <code>MI_Ab</code></td><td>G♯/A♭ octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_A_0</code></td><td><code>MI_A</code></td><td>A octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_A_SHARP_0</code></td><td><code>MI_As</code>, <code>MI_Bb</code></td><td>A♯/B♭ octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_B_0</code></td><td><code>MI_B</code></td><td>B octave 0</td></tr><tr><td><code>QK_MIDI_NOTE_C_1</code></td><td><code>MI_C1</code></td><td>C octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_C_SHARP_1</code></td><td><code>MI_Cs1</code>, <code>MI_Db1</code></td><td>C♯/D♭ octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_D_1</code></td><td><code>MI_D1</code></td><td>D octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_D_SHARP_1</code></td><td><code>MI_Ds1</code>, <code>MI_Eb1</code></td><td>D♯/E♭ octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_E_1</code></td><td><code>MI_E1</code></td><td>E octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_F_1</code></td><td><code>MI_F1</code></td><td>F octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_F_SHARP_1</code></td><td><code>MI_Fs1</code>, <code>MI_Gb1</code></td><td>F♯/G♭ octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_G_1</code></td><td><code>MI_G1</code></td><td>G octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_G_SHARP_1</code></td><td><code>MI_Gs1</code>, <code>MI_Ab1</code></td><td>G♯/A♭ octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_A_1</code></td><td><code>MI_A1</code></td><td>A octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_A_SHARP_1</code></td><td><code>MI_As1</code>, <code>MI_Bb1</code></td><td>A♯/B♭ octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_B_1</code></td><td><code>MI_B1</code></td><td>B octave 1</td></tr><tr><td><code>QK_MIDI_NOTE_C_2</code></td><td><code>MI_C2</code></td><td>C octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_C_SHARP_2</code></td><td><code>MI_Cs2</code>, <code>MI_Db2</code></td><td>C♯/D♭ octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_D_2</code></td><td><code>MI_D2</code></td><td>D octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_D_SHARP_2</code></td><td><code>MI_Ds2</code>, <code>MI_Eb2</code></td><td>D♯/E♭ octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_E_2</code></td><td><code>MI_E2</code></td><td>E octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_F_2</code></td><td><code>MI_F2</code></td><td>F octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_F_SHARP_2</code></td><td><code>MI_Fs2</code>, <code>MI_Gb2</code></td><td>F♯/G♭ octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_G_2</code></td><td><code>MI_G2</code></td><td>G octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_G_SHARP_2</code></td><td><code>MI_Gs2</code>, <code>MI_Ab2</code></td><td>G♯/A♭ octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_A_2</code></td><td><code>MI_A2</code></td><td>A octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_A_SHARP_2</code></td><td><code>MI_As2</code>, <code>MI_Bb2</code></td><td>A♯/B♭ octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_B_2</code></td><td><code>MI_B2</code></td><td>B octave 2</td></tr><tr><td><code>QK_MIDI_NOTE_C_3</code></td><td><code>MI_C3</code></td><td>C octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_C_SHARP_3</code></td><td><code>MI_Cs3</code>, <code>MI_Db3</code></td><td>C♯/D♭ octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_D_3</code></td><td><code>MI_D3</code></td><td>D octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_D_SHARP_3</code></td><td><code>MI_Ds3</code>, <code>MI_Eb3</code></td><td>D♯/E♭ octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_E_3</code></td><td><code>MI_E3</code></td><td>E octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_F_3</code></td><td><code>MI_F3</code></td><td>F octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_F_SHARP_3</code></td><td><code>MI_Fs3</code>, <code>MI_Gb3</code></td><td>F♯/G♭ octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_G_3</code></td><td><code>MI_G3</code></td><td>G octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_G_SHARP_3</code></td><td><code>MI_Gs3</code>, <code>MI_Ab3</code></td><td>G♯/A♭ octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_A_3</code></td><td><code>MI_A3</code></td><td>A octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_A_SHARP_3</code></td><td><code>MI_As3</code>, <code>MI_Bb3</code></td><td>A♯/B♭ octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_B_3</code></td><td><code>MI_B3</code></td><td>B octave 3</td></tr><tr><td><code>QK_MIDI_NOTE_C_4</code></td><td><code>MI_C4</code></td><td>C octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_C_SHARP_4</code></td><td><code>MI_Cs4</code>, <code>MI_Db4</code></td><td>C♯/D♭ octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_D_4</code></td><td><code>MI_D4</code></td><td>D octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_D_SHARP_4</code></td><td><code>MI_Ds4</code>, <code>MI_Eb4</code></td><td>D♯/E♭ octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_E_4</code></td><td><code>MI_E4</code></td><td>E octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_F_4</code></td><td><code>MI_F4</code></td><td>F octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_F_SHARP_4</code></td><td><code>MI_Fs4</code>, <code>MI_Gb4</code></td><td>F♯/G♭ octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_G_4</code></td><td><code>MI_G4</code></td><td>G octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_G_SHARP_4</code></td><td><code>MI_Gs4</code>, <code>MI_Ab4</code></td><td>G♯/A♭ octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_A_4</code></td><td><code>MI_A4</code></td><td>A octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_A_SHARP_4</code></td><td><code>MI_As4</code>, <code>MI_Bb4</code></td><td>A♯/B♭ octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_B_4</code></td><td><code>MI_B4</code></td><td>B octave 4</td></tr><tr><td><code>QK_MIDI_NOTE_C_5</code></td><td><code>MI_C5</code></td><td>C octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_C_SHARP_5</code></td><td><code>MI_Cs5</code>, <code>MI_Db5</code></td><td>C♯/D♭ octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_D_5</code></td><td><code>MI_D5</code></td><td>D octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_D_SHARP_5</code></td><td><code>MI_Ds5</code>, <code>MI_Eb5</code></td><td>D♯/E♭ octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_E_5</code></td><td><code>MI_E5</code></td><td>E octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_F_5</code></td><td><code>MI_F5</code></td><td>F octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_F_SHARP_5</code></td><td><code>MI_Fs5</code>, <code>MI_Gb5</code></td><td>F♯/G♭ octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_G_5</code></td><td><code>MI_G5</code></td><td>G octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_G_SHARP_5</code></td><td><code>MI_Gs5</code>, <code>MI_Ab5</code></td><td>G♯/A♭ octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_A_5</code></td><td><code>MI_A5</code></td><td>A octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_A_SHARP_5</code></td><td><code>MI_As5</code>, <code>MI_Bb5</code></td><td>A♯/B♭ octave 5</td></tr><tr><td><code>QK_MIDI_NOTE_B_5</code></td><td><code>MI_B5</code></td><td>B octave 5</td></tr><tr><td><code>QK_MIDI_OCTAVE_N2</code></td><td><code>MI_OCN2</code></td><td>Set octave to -2</td></tr><tr><td><code>QK_MIDI_OCTAVE_N1</code></td><td><code>MI_OCN1</code></td><td>Set octave to -1</td></tr><tr><td><code>QK_MIDI_OCTAVE_0</code></td><td><code>MI_OC0</code></td><td>Set octave to 0</td></tr><tr><td><code>QK_MIDI_OCTAVE_1</code></td><td><code>MI_OC1</code></td><td>Set octave to 1</td></tr><tr><td><code>QK_MIDI_OCTAVE_2</code></td><td><code>MI_OC2</code></td><td>Set octave to 2</td></tr><tr><td><code>QK_MIDI_OCTAVE_3</code></td><td><code>MI_OC3</code></td><td>Set octave to 3</td></tr><tr><td><code>QK_MIDI_OCTAVE_4</code></td><td><code>MI_OC4</code></td><td>Set octave to 4</td></tr><tr><td><code>QK_MIDI_OCTAVE_5</code></td><td><code>MI_OC5</code></td><td>Set octave to 5</td></tr><tr><td><code>QK_MIDI_OCTAVE_6</code></td><td><code>MI_OC6</code></td><td>Set octave to 6</td></tr><tr><td><code>QK_MIDI_OCTAVE_7</code></td><td><code>MI_OC7</code></td><td>Set octave to 7</td></tr><tr><td><code>QK_MIDI_OCTAVE_DOWN</code></td><td><code>MI_OCTD</code></td><td>Move down an octave</td></tr><tr><td><code>QK_MIDI_OCTAVE_UP</code></td><td><code>MI_OCTU</code></td><td>Move up an octave</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_N6</code></td><td><code>MI_TRN6</code></td><td>Set transposition to -6 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_N5</code></td><td><code>MI_TRN5</code></td><td>Set transposition to -5 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_N4</code></td><td><code>MI_TRN4</code></td><td>Set transposition to -4 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_N3</code></td><td><code>MI_TRN3</code></td><td>Set transposition to -3 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_N2</code></td><td><code>MI_TRN2</code></td><td>Set transposition to -2 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_N1</code></td><td><code>MI_TRN1</code></td><td>Set transposition to -1 semitone</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_0</code></td><td><code>MI_TR0</code></td><td>No transposition</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_1</code></td><td><code>MI_TR1</code></td><td>Set transposition to +1 semitone</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_2</code></td><td><code>MI_TR2</code></td><td>Set transposition to +2 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_3</code></td><td><code>MI_TR3</code></td><td>Set transposition to +3 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_4</code></td><td><code>MI_TR4</code></td><td>Set transposition to +4 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_5</code></td><td><code>MI_TR5</code></td><td>Set transposition to +5 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_6</code></td><td><code>MI_TR6</code></td><td>Set transposition to +6 semitones</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_DOWN</code></td><td><code>MI_TRSD</code></td><td>Decrease transposition</td></tr><tr><td><code>QK_MIDI_TRANSPOSE_UP</code></td><td><code>MI_TRSU</code></td><td>Increase transposition</td></tr><tr><td><code>QK_MIDI_VELOCITY_0</code></td><td><code>MI_VL0</code></td><td>Set velocity to 0</td></tr><tr><td><code>QK_MIDI_VELOCITY_1</code></td><td><code>MI_VL1</code></td><td>Set velocity to 12</td></tr><tr><td><code>QK_MIDI_VELOCITY_2</code></td><td><code>MI_VL2</code></td><td>Set velocity to 25</td></tr><tr><td><code>QK_MIDI_VELOCITY_3</code></td><td><code>MI_VL3</code></td><td>Set velocity to 38</td></tr><tr><td><code>QK_MIDI_VELOCITY_4</code></td><td><code>MI_VL4</code></td><td>Set velocity to 51</td></tr><tr><td><code>QK_MIDI_VELOCITY_5</code></td><td><code>MI_VL5</code></td><td>Set velocity to 64</td></tr><tr><td><code>QK_MIDI_VELOCITY_6</code></td><td><code>MI_VL6</code></td><td>Set velocity to 76</td></tr><tr><td><code>QK_MIDI_VELOCITY_7</code></td><td><code>MI_VL7</code></td><td>Set velocity to 89</td></tr><tr><td><code>QK_MIDI_VELOCITY_8</code></td><td><code>MI_VL8</code></td><td>Set velocity to 102</td></tr><tr><td><code>QK_MIDI_VELOCITY_9</code></td><td><code>MI_VL9</code></td><td>Set velocity to 114</td></tr><tr><td><code>QK_MIDI_VELOCITY_10</code></td><td><code>MI_VL10</code></td><td>Set velocity to 127</td></tr><tr><td><code>QK_MIDI_VELOCITY_DOWN</code></td><td><code>MI_VELD</code></td><td>Decrease velocity</td></tr><tr><td><code>QK_MIDI_VELOCITY_UP</code></td><td><code>MI_VELU</code></td><td>Increase velocity</td></tr><tr><td><code>QK_MIDI_CHANNEL_1</code></td><td><code>MI_CH1</code></td><td>Set channel to 1</td></tr><tr><td><code>QK_MIDI_CHANNEL_2</code></td><td><code>MI_CH2</code></td><td>Set channel to 2</td></tr><tr><td><code>QK_MIDI_CHANNEL_3</code></td><td><code>MI_CH3</code></td><td>Set channel to 3</td></tr><tr><td><code>QK_MIDI_CHANNEL_4</code></td><td><code>MI_CH4</code></td><td>Set channel to 4</td></tr><tr><td><code>QK_MIDI_CHANNEL_5</code></td><td><code>MI_CH5</code></td><td>Set channel to 5</td></tr><tr><td><code>QK_MIDI_CHANNEL_6</code></td><td><code>MI_CH6</code></td><td>Set channel to 6</td></tr><tr><td><code>QK_MIDI_CHANNEL_7</code></td><td><code>MI_CH7</code></td><td>Set channel to 7</td></tr><tr><td><code>QK_MIDI_CHANNEL_8</code></td><td><code>MI_CH8</code></td><td>Set channel to 8</td></tr><tr><td><code>QK_MIDI_CHANNEL_9</code></td><td><code>MI_CH9</code></td><td>Set channel to 9</td></tr><tr><td><code>QK_MIDI_CHANNEL_10</code></td><td><code>MI_CH10</code></td><td>Set channel to 10</td></tr><tr><td><code>QK_MIDI_CHANNEL_11</code></td><td><code>MI_CH11</code></td><td>Set channel to 11</td></tr><tr><td><code>QK_MIDI_CHANNEL_12</code></td><td><code>MI_CH12</code></td><td>Set channel to 12</td></tr><tr><td><code>QK_MIDI_CHANNEL_13</code></td><td><code>MI_CH13</code></td><td>Set channel to 13</td></tr><tr><td><code>QK_MIDI_CHANNEL_14</code></td><td><code>MI_CH14</code></td><td>Set channel to 14</td></tr><tr><td><code>QK_MIDI_CHANNEL_15</code></td><td><code>MI_CH15</code></td><td>Set channel to 15</td></tr><tr><td><code>QK_MIDI_CHANNEL_16</code></td><td><code>MI_CH16</code></td><td>Set channel to 16</td></tr><tr><td><code>QK_MIDI_CHANNEL_DOWN</code></td><td><code>MI_CHND</code></td><td>Decrease channel</td></tr><tr><td><code>QK_MIDI_CHANNEL_UP</code></td><td><code>MI_CHNU</code></td><td>Increase channel</td></tr><tr><td><code>QK_MIDI_ALL_NOTES_OFF</code></td><td><code>MI_AOFF</code></td><td>Stop all notes</td></tr><tr><td><code>QK_MIDI_SUSTAIN</code></td><td><code>MI_SUST</code></td><td>Sustain</td></tr><tr><td><code>QK_MIDI_PORTAMENTO</code></td><td><code>MI_PORT</code></td><td>Portmento</td></tr><tr><td><code>QK_MIDI_SOSTENUTO</code></td><td><code>MI_SOST</code></td><td>Sostenuto</td></tr><tr><td><code>QK_MIDI_SOFT</code></td><td><code>MI_SOFT</code></td><td>Soft Pedal</td></tr><tr><td><code>QK_MIDI_LEGATO</code></td><td><code>MI_LEG</code></td><td>Legato</td></tr><tr><td><code>QK_MIDI_MODULATION</code></td><td><code>MI_MOD</code></td><td>Modulation</td></tr><tr><td><code>QK_MIDI_MODULATION_SPEED_DOWN</code></td><td><code>MI_MODD</code></td><td>Decrease modulation speed</td></tr><tr><td><code>QK_MIDI_MODULATION_SPEED_UP</code></td><td><code>MI_MODU</code></td><td>Increase modulation speed</td></tr><tr><td><code>QK_MIDI_PITCH_BEND_DOWN</code></td><td><code>MI_BNDD</code></td><td>Bend pitch down</td></tr><tr><td><code>QK_MIDI_PITCH_BEND_UP</code></td><td><code>MI_BNDU</code></td><td>Bend pitch up</td></tr></tbody></table><h2 id="mouse-keys" tabindex="-1">Mouse Keys <a class="header-anchor" href="#mouse-keys" aria-label="Permalink to &quot;Mouse Keys {#mouse-keys}&quot;"></a></h2><p>See also: <a href="./features/mouse_keys">Mouse Keys</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>KC_MS_UP</code></td><td><code>KC_MS_U</code></td><td>Mouse Cursor Up</td></tr><tr><td><code>KC_MS_DOWN</code></td><td><code>KC_MS_D</code></td><td>Mouse Cursor Down</td></tr><tr><td><code>KC_MS_LEFT</code></td><td><code>KC_MS_L</code></td><td>Mouse Cursor Left</td></tr><tr><td><code>KC_MS_RIGHT</code></td><td><code>KC_MS_R</code></td><td>Mouse Cursor Right</td></tr><tr><td><code>KC_MS_BTN1</code></td><td><code>KC_BTN1</code></td><td>Mouse Button 1</td></tr><tr><td><code>KC_MS_BTN2</code></td><td><code>KC_BTN2</code></td><td>Mouse Button 2</td></tr><tr><td><code>KC_MS_BTN3</code></td><td><code>KC_BTN3</code></td><td>Mouse Button 3</td></tr><tr><td><code>KC_MS_BTN4</code></td><td><code>KC_BTN4</code></td><td>Mouse Button 4</td></tr><tr><td><code>KC_MS_BTN5</code></td><td><code>KC_BTN5</code></td><td>Mouse Button 5</td></tr><tr><td><code>KC_MS_WH_UP</code></td><td><code>KC_WH_U</code></td><td>Mouse Wheel Up</td></tr><tr><td><code>KC_MS_WH_DOWN</code></td><td><code>KC_WH_D</code></td><td>Mouse Wheel Down</td></tr><tr><td><code>KC_MS_WH_LEFT</code></td><td><code>KC_WH_L</code></td><td>Mouse Wheel Left</td></tr><tr><td><code>KC_MS_WH_RIGHT</code></td><td><code>KC_WH_R</code></td><td>Mouse Wheel Right</td></tr><tr><td><code>KC_MS_ACCEL0</code></td><td><code>KC_ACL0</code></td><td>Set mouse acceleration to 0</td></tr><tr><td><code>KC_MS_ACCEL1</code></td><td><code>KC_ACL1</code></td><td>Set mouse acceleration to 1</td></tr><tr><td><code>KC_MS_ACCEL2</code></td><td><code>KC_ACL2</code></td><td>Set mouse acceleration to 2</td></tr></tbody></table><h2 id="modifiers" tabindex="-1">Modifiers <a class="header-anchor" href="#modifiers" aria-label="Permalink to &quot;Modifiers {#modifiers}&quot;"></a></h2><p>See also: <a href="./feature_advanced_keycodes#modifier-keys">Modifier Keys</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>LCTL(kc)</code></td><td><code>C(kc)</code></td><td>Hold Left Control and press <code>kc</code></td></tr><tr><td><code>LSFT(kc)</code></td><td><code>S(kc)</code></td><td>Hold Left Shift and press <code>kc</code></td></tr><tr><td><code>LALT(kc)</code></td><td><code>A(kc)</code>, <code>LOPT(kc)</code></td><td>Hold Left Alt and press <code>kc</code></td></tr><tr><td><code>LGUI(kc)</code></td><td><code>G(kc)</code>, <code>LCMD(kc)</code>, <code>LWIN(kc)</code></td><td>Hold Left GUI and press <code>kc</code></td></tr><tr><td><code>RCTL(kc)</code></td><td></td><td>Hold Right Control and press <code>kc</code></td></tr><tr><td><code>RSFT(kc)</code></td><td></td><td>Hold Right Shift and press <code>kc</code></td></tr><tr><td><code>RALT(kc)</code></td><td><code>ROPT(kc)</code>, <code>ALGR(kc)</code></td><td>Hold Right Alt (AltGr) and press <code>kc</code></td></tr><tr><td><code>RGUI(kc)</code></td><td><code>RCMD(kc)</code>, <code>RWIN(kc)</code></td><td>Hold Right GUI and press <code>kc</code></td></tr><tr><td><code>LSG(kc)</code></td><td><code>SGUI(kc)</code>, <code>SCMD(kc)</code>, <code>SWIN(kc)</code></td><td>Hold Left Shift and Left GUI and press <code>kc</code></td></tr><tr><td><code>LAG(kc)</code></td><td></td><td>Hold Left Alt and Left GUI and press <code>kc</code></td></tr><tr><td><code>RSG(kc)</code></td><td></td><td>Hold Right Shift and Right GUI and press <code>kc</code></td></tr><tr><td><code>RAG(kc)</code></td><td></td><td>Hold Right Alt and Right GUI and press <code>kc</code></td></tr><tr><td><code>LCA(kc)</code></td><td></td><td>Hold Left Control and Alt and press <code>kc</code></td></tr><tr><td><code>LSA(kc)</code></td><td></td><td>Hold Left Shift and Left Alt and press <code>kc</code></td></tr><tr><td><code>RSA(kc)</code></td><td><code>SAGR(kc)</code></td><td>Hold Right Shift and Right Alt (AltGr) and press <code>kc</code></td></tr><tr><td><code>RCS(kc)</code></td><td></td><td>Hold Right Control and Right Shift and press <code>kc</code></td></tr><tr><td><code>LCAG(kc)</code></td><td></td><td>Hold Left Control, Alt and GUI and press <code>kc</code></td></tr><tr><td><code>MEH(kc)</code></td><td></td><td>Hold Left Control, Shift and Alt and press <code>kc</code></td></tr><tr><td><code>HYPR(kc)</code></td><td></td><td>Hold Left Control, Shift, Alt and GUI and press <code>kc</code></td></tr><tr><td><code>KC_MEH</code></td><td></td><td>Left Control, Shift and Alt</td></tr><tr><td><code>KC_HYPR</code></td><td></td><td>Left Control, Shift, Alt and GUI</td></tr></tbody></table><h2 id="mod-tap-keys" tabindex="-1">Mod-Tap Keys <a class="header-anchor" href="#mod-tap-keys" aria-label="Permalink to &quot;Mod-Tap Keys {#mod-tap-keys}&quot;"></a></h2><p>See also: <a href="./mod_tap">Mod-Tap</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>MT(mod, kc)</code></td><td></td><td><code>mod</code> when held, <code>kc</code> when tapped</td></tr><tr><td><code>LCTL_T(kc)</code></td><td><code>CTL_T(kc)</code></td><td>Left Control when held, <code>kc</code> when tapped</td></tr><tr><td><code>LSFT_T(kc)</code></td><td><code>SFT_T(kc)</code></td><td>Left Shift when held, <code>kc</code> when tapped</td></tr><tr><td><code>LALT_T(kc)</code></td><td><code>LOPT_T(kc)</code>, <code>ALT_T(kc)</code>, <code>OPT_T(kc)</code></td><td>Left Alt when held, <code>kc</code> when tapped</td></tr><tr><td><code>LGUI_T(kc)</code></td><td><code>LCMD_T(kc)</code>, <code>LWIN_T(kc)</code>, <code>GUI_T(kc)</code>, <code>CMD_T(kc)</code>, <code>WIN_T(kc)</code></td><td>Left GUI when held, <code>kc</code> when tapped</td></tr><tr><td><code>RCTL_T(kc)</code></td><td></td><td>Right Control when held, <code>kc</code> when tapped</td></tr><tr><td><code>RSFT_T(kc)</code></td><td></td><td>Right Shift when held, <code>kc</code> when tapped</td></tr><tr><td><code>RALT_T(kc)</code></td><td><code>ROPT_T(kc)</code>, <code>ALGR_T(kc)</code></td><td>Right Alt (AltGr) when held, <code>kc</code> when tapped</td></tr><tr><td><code>RGUI_T(kc)</code></td><td><code>RCMD_T(kc)</code>, <code>RWIN_T(kc)</code></td><td>Right GUI when held, <code>kc</code> when tapped</td></tr><tr><td><code>LSG_T(kc)</code></td><td><code>SGUI_T(kc)</code>, <code>SCMD_T(kc)</code>, <code>SWIN_T(kc)</code></td><td>Left Shift and GUI when held, <code>kc</code> when tapped</td></tr><tr><td><code>LAG_T(kc)</code></td><td></td><td>Left Alt and GUI when held, <code>kc</code> when tapped</td></tr><tr><td><code>RSG_T(kc)</code></td><td></td><td>Right Shift and GUI when held, <code>kc</code> when tapped</td></tr><tr><td><code>RAG_T(kc)</code></td><td></td><td>Right Alt and GUI when held, <code>kc</code> when tapped</td></tr><tr><td><code>LCA_T(kc)</code></td><td></td><td>Left Control and Alt when held, <code>kc</code> when tapped</td></tr><tr><td><code>LSA_T(kc)</code></td><td></td><td>Left Shift and Left Alt when held, <code>kc</code> when tapped</td></tr><tr><td><code>RSA_T(kc)</code></td><td><code>SAGR_T(kc)</code></td><td>Right Shift and Right Alt (AltGr) when held, <code>kc</code> when tapped</td></tr><tr><td><code>RCS_T(kc)</code></td><td></td><td>Right Control and Right Shift when held, <code>kc</code> when tapped</td></tr><tr><td><code>LCAG_T(kc)</code></td><td></td><td>Left Control, Alt and GUI when held, <code>kc</code> when tapped</td></tr><tr><td><code>RCAG_T(kc)</code></td><td></td><td>Right Control, Alt and GUI when held, <code>kc</code> when tapped</td></tr><tr><td><code>C_S_T(kc)</code></td><td></td><td>Left Control and Shift when held, <code>kc</code> when tapped</td></tr><tr><td><code>MEH_T(kc)</code></td><td></td><td>Left Control, Shift and Alt when held, <code>kc</code> when tapped</td></tr><tr><td><code>HYPR_T(kc)</code></td><td><code>ALL_T(kc)</code></td><td>Left Control, Shift, Alt and GUI when held, <code>kc</code> when tapped - more info <a href="https://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/" target="_blank" rel="noreferrer">here</a></td></tr></tbody></table><h2 id="tapping-term-keys" tabindex="-1">Tapping Term Keys <a class="header-anchor" href="#tapping-term-keys" aria-label="Permalink to &quot;Tapping Term Keys {#tapping-term-keys}&quot;"></a></h2><p>See also: <a href="./tap_hold#dynamic-tapping-term">Dynamic Tapping Term</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_DYNAMIC_TAPPING_TERM_PRINT</code></td><td><code>DT_PRNT</code></td><td>Types the current tapping term, in milliseconds</td></tr><tr><td><code>QK_DYNAMIC_TAPPING_TERM_UP</code></td><td><code>DT_UP</code></td><td>Increases the current tapping term by <code>DYNAMIC_TAPPING_TERM_INCREMENT</code>ms (5ms by default)</td></tr><tr><td><code>QK_DYNAMIC_TAPPING_TERM_DOWN</code></td><td><code>DT_DOWN</code></td><td>Decreases the current tapping term by <code>DYNAMIC_TAPPING_TERM_INCREMENT</code>ms (5ms by default)</td></tr></tbody></table><h2 id="rgb-lighting" tabindex="-1">RGB Lighting <a class="header-anchor" href="#rgb-lighting" aria-label="Permalink to &quot;RGB Lighting {#rgb-lighting}&quot;"></a></h2><p>See also: <a href="./features/rgblight">RGB Lighting</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>RGB_TOG</code></td><td></td><td>Toggle RGB lighting on or off</td></tr><tr><td><code>RGB_MODE_FORWARD</code></td><td><code>RGB_MOD</code></td><td>Cycle through modes, reverse direction when Shift is held</td></tr><tr><td><code>RGB_MODE_REVERSE</code></td><td><code>RGB_RMOD</code></td><td>Cycle through modes in reverse, forward direction when Shift is held</td></tr><tr><td><code>RGB_HUI</code></td><td></td><td>Increase hue, decrease hue when Shift is held</td></tr><tr><td><code>RGB_HUD</code></td><td></td><td>Decrease hue, increase hue when Shift is held</td></tr><tr><td><code>RGB_SAI</code></td><td></td><td>Increase saturation, decrease saturation when Shift is held</td></tr><tr><td><code>RGB_SAD</code></td><td></td><td>Decrease saturation, increase saturation when Shift is held</td></tr><tr><td><code>RGB_VAI</code></td><td></td><td>Increase value (brightness), decrease value when Shift is held</td></tr><tr><td><code>RGB_VAD</code></td><td></td><td>Decrease value (brightness), increase value when Shift is held</td></tr><tr><td><code>RGB_MODE_PLAIN</code></td><td><code>RGB_M_P </code></td><td>Static (no animation) mode</td></tr><tr><td><code>RGB_MODE_BREATHE</code></td><td><code>RGB_M_B</code></td><td>Breathing animation mode</td></tr><tr><td><code>RGB_MODE_RAINBOW</code></td><td><code>RGB_M_R</code></td><td>Rainbow animation mode</td></tr><tr><td><code>RGB_MODE_SWIRL</code></td><td><code>RGB_M_SW</code></td><td>Swirl animation mode</td></tr><tr><td><code>RGB_MODE_SNAKE</code></td><td><code>RGB_M_SN</code></td><td>Snake animation mode</td></tr><tr><td><code>RGB_MODE_KNIGHT</code></td><td><code>RGB_M_K</code></td><td>&quot;Knight Rider&quot; animation mode</td></tr><tr><td><code>RGB_MODE_XMAS</code></td><td><code>RGB_M_X</code></td><td>Christmas animation mode</td></tr><tr><td><code>RGB_MODE_GRADIENT</code></td><td><code>RGB_M_G</code></td><td>Static gradient animation mode</td></tr><tr><td><code>RGB_MODE_RGBTEST</code></td><td><code>RGB_M_T</code></td><td>Red,Green,Blue test animation mode</td></tr></tbody></table><h2 id="rgb-matrix-lighting" tabindex="-1">RGB Matrix Lighting <a class="header-anchor" href="#rgb-matrix-lighting" aria-label="Permalink to &quot;RGB Matrix Lighting {#rgb-matrix-lighting}&quot;"></a></h2><p>See also: <a href="./features/rgb_matrix">RGB Matrix Lighting</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>RGB_TOG</code></td><td></td><td>Toggle RGB lighting on or off</td></tr><tr><td><code>RGB_MODE_FORWARD</code></td><td><code>RGB_MOD</code></td><td>Cycle through modes, reverse direction when Shift is held</td></tr><tr><td><code>RGB_MODE_REVERSE</code></td><td><code>RGB_RMOD</code></td><td>Cycle through modes in reverse, forward direction when Shift is held</td></tr><tr><td><code>RGB_HUI</code></td><td></td><td>Increase hue, decrease hue when Shift is held</td></tr><tr><td><code>RGB_HUD</code></td><td></td><td>Decrease hue, increase hue when Shift is held</td></tr><tr><td><code>RGB_SAI</code></td><td></td><td>Increase saturation, decrease saturation when Shift is held</td></tr><tr><td><code>RGB_SAD</code></td><td></td><td>Decrease saturation, increase saturation when Shift is held</td></tr><tr><td><code>RGB_VAI</code></td><td></td><td>Increase value (brightness), decrease value when Shift is held</td></tr><tr><td><code>RGB_VAD</code></td><td></td><td>Decrease value (brightness), increase value when Shift is held</td></tr><tr><td><code>RGB_SPI</code></td><td></td><td>Increase effect speed (does not support eeprom yet), decrease speed when Shift is held</td></tr><tr><td><code>RGB_SPD</code></td><td></td><td>Decrease effect speed (does not support eeprom yet), increase speed when Shift is held</td></tr></tbody></table><h2 id="us-ansi-shifted-symbols" tabindex="-1">US ANSI Shifted Symbols <a class="header-anchor" href="#us-ansi-shifted-symbols" aria-label="Permalink to &quot;US ANSI Shifted Symbols {#us-ansi-shifted-symbols}&quot;"></a></h2><p>See also: <a href="./keycodes_us_ansi_shifted">US ANSI Shifted Symbols</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>KC_TILDE</code></td><td><code>KC_TILD</code></td><td><code>~</code></td></tr><tr><td><code>KC_EXCLAIM</code></td><td><code>KC_EXLM</code></td><td><code>!</code></td></tr><tr><td><code>KC_AT</code></td><td></td><td><code>@</code></td></tr><tr><td><code>KC_HASH</code></td><td></td><td><code>#</code></td></tr><tr><td><code>KC_DOLLAR</code></td><td><code>KC_DLR</code></td><td><code>$</code></td></tr><tr><td><code>KC_PERCENT</code></td><td><code>KC_PERC</code></td><td><code>%</code></td></tr><tr><td><code>KC_CIRCUMFLEX</code></td><td><code>KC_CIRC</code></td><td><code>^</code></td></tr><tr><td><code>KC_AMPERSAND</code></td><td><code>KC_AMPR</code></td><td><code>&amp;</code></td></tr><tr><td><code>KC_ASTERISK</code></td><td><code>KC_ASTR</code></td><td><code>*</code></td></tr><tr><td><code>KC_LEFT_PAREN</code></td><td><code>KC_LPRN</code></td><td><code>(</code></td></tr><tr><td><code>KC_RIGHT_PAREN</code></td><td><code>KC_RPRN</code></td><td><code>)</code></td></tr><tr><td><code>KC_UNDERSCORE</code></td><td><code>KC_UNDS</code></td><td><code>_</code></td></tr><tr><td><code>KC_PLUS</code></td><td></td><td><code>+</code></td></tr><tr><td><code>KC_LEFT_CURLY_BRACE</code></td><td><code>KC_LCBR</code></td><td><code>{</code></td></tr><tr><td><code>KC_RIGHT_CURLY_BRACE</code></td><td><code>KC_RCBR</code></td><td><code>}</code></td></tr><tr><td><code>KC_PIPE</code></td><td></td><td><code>|</code></td></tr><tr><td><code>KC_COLON</code></td><td><code>KC_COLN</code></td><td><code>:</code></td></tr><tr><td><code>KC_DOUBLE_QUOTE</code></td><td><code>KC_DQUO</code>, <code>KC_DQT</code></td><td><code>&quot;</code></td></tr><tr><td><code>KC_LEFT_ANGLE_BRACKET</code></td><td><code>KC_LABK</code>, <code>KC_LT</code></td><td><code>&lt;</code></td></tr><tr><td><code>KC_RIGHT_ANGLE_BRACKET</code></td><td><code>KC_RABK</code>, <code>KC_GT</code></td><td><code>&gt;</code></td></tr><tr><td><code>KC_QUESTION</code></td><td><code>KC_QUES</code></td><td><code>?</code></td></tr></tbody></table><h2 id="one-shot-keys" tabindex="-1">One Shot Keys <a class="header-anchor" href="#one-shot-keys" aria-label="Permalink to &quot;One Shot Keys {#one-shot-keys}&quot;"></a></h2><p>See also: <a href="./one_shot_keys">One Shot Keys</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>OSM(mod)</code></td><td></td><td>Hold <code>mod</code> for one keypress</td></tr><tr><td><code>OSL(layer)</code></td><td></td><td>Switch to <code>layer</code> for one keypress</td></tr><tr><td><code>QK_ONE_SHOT_TOGGLE</code></td><td><code>OS_TOGG</code></td><td>Toggles One Shot keys status</td></tr><tr><td><code>QK_ONE_SHOT_ON</code></td><td><code>OS_ON</code></td><td>Turns One Shot keys on</td></tr><tr><td><code>QK_ONE_SHOT_OFF</code></td><td><code>OS_OFF</code></td><td>Turns One Shot keys off</td></tr></tbody></table><h2 id="programmable-button" tabindex="-1">Programmable Button Support <a class="header-anchor" href="#programmable-button" aria-label="Permalink to &quot;Programmable Button Support {#programmable-button}&quot;"></a></h2><p>See also: <a href="./features/programmable_button">Programmable Button</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_PROGRAMMABLE_BUTTON_1</code></td><td><code>PB_1</code></td><td>Programmable button 1</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_2</code></td><td><code>PB_2</code></td><td>Programmable button 2</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_3</code></td><td><code>PB_3</code></td><td>Programmable button 3</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_4</code></td><td><code>PB_4</code></td><td>Programmable button 4</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_5</code></td><td><code>PB_5</code></td><td>Programmable button 5</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_6</code></td><td><code>PB_6</code></td><td>Programmable button 6</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_7</code></td><td><code>PB_7</code></td><td>Programmable button 7</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_8</code></td><td><code>PB_8</code></td><td>Programmable button 8</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_9</code></td><td><code>PB_9</code></td><td>Programmable button 9</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_10</code></td><td><code>PB_10</code></td><td>Programmable button 10</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_11</code></td><td><code>PB_11</code></td><td>Programmable button 11</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_12</code></td><td><code>PB_12</code></td><td>Programmable button 12</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_13</code></td><td><code>PB_13</code></td><td>Programmable button 13</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_14</code></td><td><code>PB_14</code></td><td>Programmable button 14</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_15</code></td><td><code>PB_15</code></td><td>Programmable button 15</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_16</code></td><td><code>PB_16</code></td><td>Programmable button 16</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_17</code></td><td><code>PB_17</code></td><td>Programmable button 17</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_18</code></td><td><code>PB_18</code></td><td>Programmable button 18</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_19</code></td><td><code>PB_19</code></td><td>Programmable button 19</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_20</code></td><td><code>PB_20</code></td><td>Programmable button 20</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_21</code></td><td><code>PB_21</code></td><td>Programmable button 21</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_22</code></td><td><code>PB_22</code></td><td>Programmable button 22</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_23</code></td><td><code>PB_23</code></td><td>Programmable button 23</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_24</code></td><td><code>PB_24</code></td><td>Programmable button 24</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_25</code></td><td><code>PB_25</code></td><td>Programmable button 25</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_26</code></td><td><code>PB_26</code></td><td>Programmable button 26</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_27</code></td><td><code>PB_27</code></td><td>Programmable button 27</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_28</code></td><td><code>PB_28</code></td><td>Programmable button 28</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_29</code></td><td><code>PB_29</code></td><td>Programmable button 29</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_30</code></td><td><code>PB_30</code></td><td>Programmable button 30</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_31</code></td><td><code>PB_31</code></td><td>Programmable button 31</td></tr><tr><td><code>QK_PROGRAMMABLE_BUTTON_32</code></td><td><code>PB_32</code></td><td>Programmable button 32</td></tr></tbody></table><h2 id="repeat-key" tabindex="-1">Repeat Key <a class="header-anchor" href="#repeat-key" aria-label="Permalink to &quot;Repeat Key {#repeat-key}&quot;"></a></h2><p>See also: <a href="./features/repeat_key">Repeat Key</a></p><table><thead><tr><th>Keycode</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_REPEAT_KEY</code></td><td><code>QK_REP</code></td><td>Repeat the last pressed key</td></tr><tr><td><code>QK_ALT_REPEAT_KEY</code></td><td><code>QK_AREP</code></td><td>Perform alternate of the last key</td></tr></tbody></table><h2 id="space-cadet" tabindex="-1">Space Cadet <a class="header-anchor" href="#space-cadet" aria-label="Permalink to &quot;Space Cadet {#space-cadet}&quot;"></a></h2><p>See also: <a href="./features/space_cadet">Space Cadet</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>QK_SPACE_CADET_LEFT_CTRL_PARENTHESIS_OPEN</code></td><td><code>SC_LCPO</code></td><td>Left Control when held, <code>(</code> when tapped</td></tr><tr><td><code>QK_SPACE_CADET_RIGHT_CTRL_PARENTHESIS_CLOSE</code></td><td><code>SC_RCPC</code></td><td>Right Control when held, <code>)</code> when tapped</td></tr><tr><td><code>QK_SPACE_CADET_LEFT_SHIFT_PARENTHESIS_OPEN</code></td><td><code>SC_LSPO</code></td><td>Left Shift when held, <code>(</code> when tapped</td></tr><tr><td><code>QK_SPACE_CADET_RIGHT_SHIFT_PARENTHESIS_CLOSE</code></td><td><code>SC_RSPC</code></td><td>Right Shift when held, <code>)</code> when tapped</td></tr><tr><td><code>QK_SPACE_CADET_LEFT_ALT_PARENTHESIS_OPEN</code></td><td><code>SC_LAPO</code></td><td>Left Alt when held, <code>(</code> when tapped</td></tr><tr><td><code>QK_SPACE_CADET_RIGHT_ALT_PARENTHESIS_CLOSE</code></td><td><code>SC_RAPC</code></td><td>Right Alt when held, <code>)</code> when tapped</td></tr><tr><td><code>QK_SPACE_CADET_RIGHT_SHIFT_ENTER</code></td><td><code>SC_SENT</code></td><td>Right Shift when held, Enter when tapped</td></tr></tbody></table><h2 id="swap-hands" tabindex="-1">Swap Hands <a class="header-anchor" href="#swap-hands" aria-label="Permalink to &quot;Swap Hands {#swap-hands}&quot;"></a></h2><p>See also: <a href="./features/swap_hands">Swap Hands</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>SH_T(kc)</code></td><td></td><td>Momentary swap when held, <code>kc</code> when tapped</td></tr><tr><td><code>QK_SWAP_HANDS_ON</code></td><td><code>SH_ON</code></td><td>Turn on hand swap</td></tr><tr><td><code>QK_SWAP_HANDS_OFF</code></td><td><code>SH_OFF</code></td><td>Turn off hand swap</td></tr><tr><td><code>QK_SWAP_HANDS_MOMENTARY_ON</code></td><td><code>SH_MON</code></td><td>Turn on hand swap while held</td></tr><tr><td><code>QK_SWAP_HANDS_MOMENTARY_OFF</code></td><td><code>SH_MOFF</code></td><td>Turn off hand swap while held</td></tr><tr><td><code>QK_SWAP_HANDS_TOGGLE</code></td><td><code>SH_TOGG</code></td><td>Toggle hand swap</td></tr><tr><td><code>QK_SWAP_HANDS_TAP_TOGGLE</code></td><td><code>SH_TT</code></td><td>Momentary swap when held, toggle when tapped</td></tr><tr><td><code>QK_SWAP_HANDS_ONE_SHOT</code></td><td><code>SH_OS</code></td><td>Turn on hand swap while held or until next key press</td></tr></tbody></table><h2 id="unicode-support" tabindex="-1">Unicode Support <a class="header-anchor" href="#unicode-support" aria-label="Permalink to &quot;Unicode Support {#unicode-support}&quot;"></a></h2><p>See also: <a href="./features/unicode">Unicode Support</a></p><table><thead><tr><th>Key</th><th>Aliases</th><th>Description</th></tr></thead><tbody><tr><td><code>UC(c)</code></td><td></td><td>Send Unicode code point <code>c</code>, up to <code>0x7FFF</code></td></tr><tr><td><code>UM(i)</code></td><td></td><td>Send Unicode code point at index <code>i</code> in <code>unicode_map</code></td></tr><tr><td><code>UP(i, j)</code></td><td></td><td>Send Unicode code point at index <code>i</code>, or <code>j</code> if Shift/Caps is on</td></tr><tr><td><code>QK_UNICODE_MODE_NEXT</code></td><td><code>UC_NEXT</code></td><td>Cycle through selected input modes</td></tr><tr><td><code>QK_UNICODE_MODE_PREVIOUS</code></td><td><code>UC_PREV</code></td><td>Cycle through selected input modes in reverse</td></tr><tr><td><code>QK_UNICODE_MODE_MACOS</code></td><td><code>UC_MAC</code></td><td>Switch to macOS input</td></tr><tr><td><code>QK_UNICODE_MODE_LINUX</code></td><td><code>UC_LINX</code></td><td>Switch to Linux input</td></tr><tr><td><code>QK_UNICODE_MODE_WINDOWS</code></td><td><code>UC_WIN</code></td><td>Switch to Windows input</td></tr><tr><td><code>QK_UNICODE_MODE_BSD</code></td><td><code>UC_BSD</code></td><td>Switch to BSD input (not implemented)</td></tr><tr><td><code>QK_UNICODE_MODE_WINCOMPOSE</code></td><td><code>UC_WINC</code></td><td>Switch to Windows input using WinCompose</td></tr><tr><td><code>QK_UNICODE_MODE_EMACS</code></td><td><code>UC_EMAC</code></td><td>Switch to emacs (<code>C-x-8 RET</code>)</td></tr></tbody></table></div></div></main><footer class="VPDocFooter" data-v-39a288b8 data-v-09de1c0f><!--[--><!--]--><!----><nav class="prev-next" data-v-09de1c0f><div class="pager" data-v-09de1c0f><a class="VPLink link pager-link prev" href="/newbs_git_resynchronize_a_branch" data-v-09de1c0f><!--[--><span class="desc" data-v-09de1c0f>Previous page</span><span class="title" data-v-09de1c0f>Fixing Your Branch</span><!--]--></a></div><div class="pager" data-v-09de1c0f><a class="VPLink link pager-link next" href="/keycodes_basic" data-v-09de1c0f><!--[--><span class="desc" data-v-09de1c0f>Next page</span><span class="title" data-v-09de1c0f>Basic Keycodes</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"coding_conventions_c.md\":\"DdrpXBEh\",\"coding_conventions_python.md\":\"BV-OK1s5\",\"changelog_20201128.md\":\"7XXL02Bn\",\"changelog_20200229.md\":\"DNsowwM1\",\"changelog_20200829.md\":\"CoqrOffn\",\"compatible_microcontrollers.md\":\"6HA6FJZJ\",\"changelog_20211127.md\":\"ClUawWkq\",\"changelog_20210227.md\":\"BWOtCaeS\",\"chibios_upgrade_instructions.md\":\"B5dMtL5R\",\"changelog_20220827.md\":\"DjPthqDk\",\"changelog_20190830.md\":\"Drtq3lMy\",\"changelog_20200530.md\":\"Dk-vRpTQ\",\"cli.md\":\"BLzAdA6l\",\"capabilities_inc.md\":\"Ca9zpMce\",\"faq_build.md\":\"DL_WezA1\",\"api_docs.md\":\"CRoD6CbL\",\"drivers_ws2812.md\":\"D9E3Wb-Y\",\"easy_maker.md\":\"DAfbIK4w\",\"drivers_uart.md\":\"BNBs-m3h\",\"faq_general.md\":\"BC3pFw4U\",\"capabilities.md\":\"DgKwcj5n\",\"drivers_eeprom.md\":\"B_6soqar\",\"drivers_flash.md\":\"DhWcHp8S\",\"drivers_gpio.md\":\"C5PvyJVh\",\"changelog_20240526.md\":\"DAmAEDG5\",\"faq_keymap.md\":\"BsEmEZTo\",\"faq_debug.md\":\"DuThValw\",\"api_overview.md\":\"0FPaUsMb\",\"changelog_20240225.md\":\"B4-WrXj6\",\"breaking_changes_instructions.md\":\"BAjIGeJb\",\"api_development_environment.md\":\"EhJClb9f\",\"changelog_20220528.md\":\"BX3CCY1Z\",\"cli_configuration.md\":\"CGSB128P\",\"changelog_20221126.md\":\"DpbrnXeC\",\"arm_debugging.md\":\"BH-H2Ukz\",\"changelog_20220226.md\":\"BWO5r_ec\",\"changelog_20230528.md\":\"nX9R48zP\",\"features_dip_switch.md\":\"DtBOdc98\",\"config_options.md\":\"DvMeqlpB\",\"features_caps_word.md\":\"BDQGM0-x\",\"features_combo.md\":\"C-GfDyXJ\",\"custom_matrix.md\":\"DMnRw_5l\",\"custom_quantum_functions.md\":\"DrUNiV1i\",\"data_driven_config.md\":\"BvLQ7P20\",\"features_command.md\":\"Byl9YoT7\",\"features_digitizer.md\":\"DGIGZFVx\",\"changelog_20231126.md\":\"D2Ok5QAf\",\"platformdev_rp2040.md\":\"CYKYMDfc\",\"features_haptic_feedback.md\":\"DS8CmC7e\",\"quantum_painter_qff.md\":\"kLNwshez\",\"syllabus.md\":\"B_ARGkLg\",\"quantum_painter_lvgl.md\":\"DobNbSgA\",\"newbs_git_resolving_merge_conflicts.md\":\"72w3BRmm\",\"newbs_git_resynchronize_a_branch.md\":\"YGDefQFx\",\"changelog_20230226.md\":\"Cg0AYxIn\",\"newbs_git_best_practices.md\":\"BI2-EVI5\",\"hardware_keyboard_guidelines.md\":\"CJevsanE\",\"features_unicode.md\":\"CsON-fJH\",\"cli_commands.md\":\"DGx-qNiE\",\"cli_development.md\":\"3xFA2OvS\",\"breaking_changes.md\":\"BtdqWQlY\",\"configurator_step_by_step.md\":\"GvmPtScT\",\"configurator_default_keymaps.md\":\"B3v8dlHd\",\"configurator_troubleshooting.md\":\"BxGLPT8G\",\"contributing.md\":\"DLsp4vSA\",\"changelog_20230827.md\":\"NSPhmB6l\",\"changelog_20210529.md\":\"CR1YNfZX\",\"configurator_architecture.md\":\"DEFTvTlS\",\"changelog_20210828.md\":\"DNbHIuuM\",\"breaking_changes_history.md\":\"CkzdD6x8\",\"faq_misc.md\":\"qGrhOTu4\",\"api_development_overview.md\":\"Dcey4ntL\",\"features_audio.md\":\"DWNYte3W\",\"features_auto_shift.md\":\"B9HLt3QM\",\"features_bluetooth.md\":\"CiAjl875\",\"features_autocorrect.md\":\"DHRDcuho\",\"features_backlight.md\":\"D7R4FkYo\",\"feature_userspace.md\":\"BsmY9yWw\",\"feature_layouts.md\":\"qcy8hNMO\",\"feature_macros.md\":\"By1M5R8G\",\"feature_layers.md\":\"8GwBUTZN\",\"feature_converters.md\":\"DFKin1io\",\"drivers_spi.md\":\"tJVeIT7e\",\"feature_eeprom.md\":\"a0eoTZm7\",\"features_bootmagic.md\":\"CeNSUsBQ\",\"feature_debounce_type.md\":\"CUrSp0Iy\",\"drivers_i2c.md\":\"Cuj87reB\",\"drivers_serial.md\":\"qxjytVdM\",\"feature_advanced_keycodes.md\":\"CX8dJkY-\",\"drivers_audio.md\":\"mqaz6p5N\",\"reference_configurator_support.md\":\"FaBQzIj6\",\"reference_keymap_extras.md\":\"-n_bLm78\",\"squeezing_avr.md\":\"BmcLYKOr\",\"porting_your_keyboard_to_qmk.md\":\"CGlGdFj4\",\"support_deprecation_policy.md\":\"CCo4ljiw\",\"pr_checklist.md\":\"BnrDXG2G\",\"quantum_keycodes.md\":\"DM5WeUFF\",\"unit_testing.md\":\"u3fgbGUj\",\"features_dynamic_macros.md\":\"CrJ1vhBA\",\"tap_hold.md\":\"DD8WTSla\",\"understanding_qmk.md\":\"f-Bc_eHQ\",\"features_encoders.md\":\"B2SX3hG2\",\"features_hd44780.md\":\"15K40o_e\",\"features_joystick.md\":\"CW0gZHec\",\"features_key_lock.md\":\"IjFq9dYs\",\"drivers_adc.md\":\"DzU8txf8\",\"other_eclipse.md\":\"C-zqyJO9\",\"quantum_painter_rle.md\":\"B07V3m-n\",\"documentation_templates.md\":\"Bhkum0wD\",\"quantum_painter_qgf.md\":\"BJNSu2s0\",\"platformdev_blackpill_f4x1.md\":\"DvObLRuk\",\"platformdev_chibios_earlyinit.md\":\"BQJSTP3y\",\"platformdev_proton_c.md\":\"CDRuJBvD\",\"flashing.md\":\"BSZF2RCy\",\"features_sequencer.md\":\"DkgqNCsQ\",\"features_space_cadet.md\":\"DmNfYRVJ\",\"quantum_painter.md\":\"BK_I9g4h\",\"features_tri_layer.md\":\"DdnBVinw\",\"features_send_string.md\":\"vM68un4v\",\"features_secure.md\":\"BX7jFvW5\",\"features_wpm.md\":\"BYf-Xc1H\",\"how_keyboards_work.md\":\"CB7z8ocb\",\"getting_started_make_guide.md\":\"BjUuEnSh\",\"features_rgblight.md\":\"DehQikiL\",\"features_programmable_button.md\":\"D332w_PT\",\"flashing_bootloadhid.md\":\"aXGP0bN5\",\"hardware_drivers.md\":\"BUnx48D9\",\"hand_wire.md\":\"CcI1spCv\",\"getting_started_docker.md\":\"mz6HE4Bl\",\"getting_started_github.md\":\"OYq7IT7B\",\"getting_started_introduction.md\":\"BOJreqSs\",\"how_a_matrix_works.md\":\"JINKbCuX\",\"features_led_indicators.md\":\"CCZhjHe9\",\"isp_flashing_guide.md\":\"BiuBpOKX\",\"keycodes_basic.md\":\"CHIeCvwn\",\"features_os_detection.md\":\"DZKTWvSd\",\"index.md\":\"B4QYzvHE\",\"features_mouse_keys.md\":\"C3P3pYuE\",\"support.md\":\"CwJ_H6Qx\",\"reference_glossary.md\":\"CXMuxToT\",\"features_oled_driver.md\":\"D9wJVdL1\",\"drivers_apa102.md\":\"Qb-KXRpF\",\"newbs_git_using_your_master_branch.md\":\"B9DxZCl8\",\"reference_info_json.md\":\"CEbbd-o6\",\"platformdev_selecting_arm_mcu.md\":\"aF4DUsvb\",\"documentation_best_practices.md\":\"BtEjePaZ\",\"other_vscode.md\":\"Di3vOySR\",\"newbs.md\":\"-YYNd3dT\",\"features_key_overrides.md\":\"rVTP6kn9\",\"features_grave_esc.md\":\"mUNEjUYS\",\"keymap.md\":\"Y4Fei1Ty\",\"keycodes_magic.md\":\"CGO3hgMm\",\"keycodes_us_ansi_shifted.md\":\"Cs78SDfM\",\"mod_tap.md\":\"C7wRKLcf\",\"newbs_building_firmware_configurator.md\":\"yyo-1QDE\",\"newbs_flashing.md\":\"B42m5Wln\",\"newbs_building_firmware_workflow.md\":\"DpLVwA7x\",\"newbs_external_userspace.md\":\"pD9Lc-a5\",\"newbs_building_firmware.md\":\"DnVUK9it\",\"features_leader_key.md\":\"DBQTnBRh\",\"newbs_learn_more_resources.md\":\"Dj1s2BDG\",\"driver_installation_zadig.md\":\"CX9-BACt\",\"one_shot_keys.md\":\"QR09rSb-\",\"newbs_testing_debugging.md\":\"D-c7Gle_\",\"features_pointing_device.md\":\"DP6-XwL6\",\"features_st7565.md\":\"MoajNurJ\",\"features_rgb_matrix.md\":\"-rlWq-Xq\",\"features_ps2_mouse.md\":\"CL_pA9sk\",\"features_swap_hands.md\":\"DOhgGQf9\",\"features_split_keyboard.md\":\"mMTUzI5n\",\"features_stenography.md\":\"Bb_IhUGl\",\"features_midi.md\":\"u3tHPteB\",\"features_led_matrix.md\":\"D444t5Um\",\"cli_tab_complete.md\":\"ChaxfzYo\",\"newbs_getting_started.md\":\"DD4a5qPC\",\"features_tap_dance.md\":\"CKLVpnIn\",\"keycodes.md\":\"hkOkKJPh\",\"ref_functions.md\":\"BVI2uXSN\",\"features_repeat_key.md\":\"C3eWDUWn\",\"features_rawhid.md\":\"bKKG3KCa\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"QMK Firmware\",\"description\":\"Documentation for QMK Firmware\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":{\"light\":\"/qmk-logo-light.svg\",\"dark\":\"/qmk-logo-dark.svg\"},\"title\":\"QMK Firmware\",\"nav\":[{\"text\":\"Home\",\"link\":\"./\"}],\"search\":{\"provider\":\"local\"},\"sidebar\":[{\"text\":\"Tutorial\",\"items\":[{\"text\":\"Introduction\",\"link\":\"/newbs\"},{\"text\":\"Setup\",\"link\":\"/newbs_getting_started\"},{\"text\":\"Building Your First Firmware\",\"link\":\"/newbs_building_firmware\"},{\"text\":\"Flashing Firmware\",\"link\":\"/newbs_flashing\"},{\"text\":\"Getting Help/Support\",\"link\":\"/support\"},{\"text\":\"External Userspace\",\"link\":\"/newbs_external_userspace\"},{\"text\":\"Other Resources\",\"link\":\"/newbs_learn_more_resources\"},{\"text\":\"Syllabus\",\"link\":\"/syllabus\"}]},{\"text\":\"FAQs\",\"items\":[{\"text\":\"General FAQ\",\"link\":\"/faq_general\"},{\"text\":\"Build/Compile QMK\",\"link\":\"/faq_build\"},{\"text\":\"Troubleshooting QMK\",\"link\":\"/faq_misc\"},{\"text\":\"Debugging QMK\",\"link\":\"/faq_debug\"},{\"text\":\"Keymap FAQ\",\"link\":\"/faq_keymap\"},{\"text\":\"Squeezing Space from AVR\",\"link\":\"/squeezing_avr\"},{\"text\":\"Glossary\",\"link\":\"/reference_glossary\"}]},{\"text\":\"Configurator\",\"items\":[{\"text\":\"Overview\",\"link\":\"/newbs_building_firmware_configurator\"},{\"text\":\"Step by Step\",\"link\":\"/configurator_step_by_step\"},{\"text\":\"Troubleshooting\",\"link\":\"/configurator_troubleshooting\"},{\"text\":\"Architecture\",\"link\":\"/configurator_architecture\"},{\"text\":\"QMK API\",\"items\":[{\"text\":\"Overview\",\"link\":\"/api_overview\"},{\"text\":\"API Documentation\",\"link\":\"/api_docs\"},{\"text\":\"Keyboard Support\",\"link\":\"/reference_configurator_support\"},{\"text\":\"Adding Default Keymaps\",\"link\":\"/configurator_default_keymaps\"}]}]},{\"text\":\"CLI\",\"items\":[{\"text\":\"Overview\",\"link\":\"/cli\"},{\"text\":\"Configuration\",\"link\":\"/cli_configuration\"},{\"text\":\"Commands\",\"link\":\"/cli_commands\"},{\"text\":\"Tab Completion\",\"link\":\"/cli_tab_complete\"}]},{\"text\":\"Using QMK\",\"items\":[{\"text\":\"Guides\",\"items\":[{\"text\":\"Customizing Functionality\",\"link\":\"/custom_quantum_functions\"},{\"text\":\"Driver Installation with Zadig\",\"link\":\"/driver_installation_zadig\"},{\"text\":\"Keymap Overview\",\"link\":\"/keymap\"},{\"text\":\"Development Environments\",\"items\":[{\"text\":\"Docker Guide\",\"link\":\"/getting_started_docker\"}]},{\"text\":\"Flashing\",\"items\":[{\"text\":\"Flashing\",\"link\":\"/flashing\"},{\"text\":\"Flashing ATmega32A (ps2avrgb)\",\"link\":\"/flashing_bootloadhid\"}]},{\"text\":\"IDEs\",\"items\":[{\"text\":\"Using Eclipse with QMK\",\"link\":\"/other_eclipse\"},{\"text\":\"Using VSCode with QMK\",\"link\":\"/other_vscode\"}]},{\"text\":\"Git Best Practices\",\"items\":[{\"text\":\"Introduction\",\"link\":\"/newbs_git_best_practices\"},{\"text\":\"Your Fork\",\"link\":\"/newbs_git_using_your_master_branch\"},{\"text\":\"Merge Conflicts\",\"link\":\"/newbs_git_resolving_merge_conflicts\"},{\"text\":\"Fixing Your Branch\",\"link\":\"/newbs_git_resynchronize_a_branch\"}]}]},{\"text\":\"Simple Keycodes\",\"items\":[{\"text\":\"Full List\",\"link\":\"/keycodes\"},{\"text\":\"Basic Keycodes\",\"link\":\"/keycodes_basic\"},{\"text\":\"Language-Specific Keycodes\",\"link\":\"/reference_keymap_extras\"},{\"text\":\"Modifier Keys\",\"link\":\"/feature_advanced_keycodes\"},{\"text\":\"Quantum Keycodes\",\"link\":\"/quantum_keycodes\"},{\"text\":\"Magic Keycodes\",\"link\":\"/keycodes_magic\"}]},{\"text\":\"Advanced Keycodes\",\"items\":[{\"text\":\"Command\",\"link\":\"/features/command\"},{\"text\":\"Dynamic Macros\",\"link\":\"/features/dynamic_macros\"},{\"text\":\"Grave Escape\",\"link\":\"/features/grave_esc\"},{\"text\":\"Leader Key\",\"link\":\"/features/leader_key\"},{\"text\":\"Mod-Tap\",\"link\":\"/mod_tap\"},{\"text\":\"Macros\",\"link\":\"/feature_macros\"},{\"text\":\"Mouse Keys\",\"link\":\"/features/mouse_keys\"},{\"text\":\"Programmable Button\",\"link\":\"/features/programmable_button\"},{\"text\":\"Repeat Key\",\"link\":\"/features/repeat_key\"},{\"text\":\"Space Cadet Shift\",\"link\":\"/features/space_cadet\"},{\"text\":\"US ANSI Shifted Keys\",\"link\":\"/keycodes_us_ansi_shifted\"}]},{\"text\":\"Software Features\",\"items\":[{\"text\":\"Auto Shift\",\"link\":\"/features/auto_shift\"},{\"text\":\"Autocorrect\",\"link\":\"/features/autocorrect\"},{\"text\":\"Caps Word\",\"link\":\"/features/caps_word\"},{\"text\":\"Combos\",\"link\":\"/features/combo\"},{\"text\":\"Debounce API\",\"link\":\"/feature_debounce_type\"},{\"text\":\"Digitizer\",\"link\":\"/features/digitizer\"},{\"text\":\"EEPROM\",\"link\":\"/feature_eeprom\"},{\"text\":\"Key Lock\",\"link\":\"/features/key_lock\"},{\"text\":\"Key Overrides\",\"link\":\"/features/key_overrides\"},{\"text\":\"Layers\",\"link\":\"/feature_layers\"},{\"text\":\"One Shot Keys\",\"link\":\"/one_shot_keys\"},{\"text\":\"OS Detection\",\"link\":\"/features/os_detection\"},{\"text\":\"Raw HID\",\"link\":\"/features/rawhid\"},{\"text\":\"Secure\",\"link\":\"/features/secure\"},{\"text\":\"Send String\",\"link\":\"/features/send_string\"},{\"text\":\"Sequencer\",\"link\":\"/features/sequencer\"},{\"text\":\"Swap Hands\",\"link\":\"/features/swap_hands\"},{\"text\":\"Tap Dance\",\"link\":\"/features/tap_dance\"},{\"text\":\"Tap-Hold Configuration\",\"link\":\"/tap_hold\"},{\"text\":\"Tri Layer\",\"link\":\"/features/tri_layer\"},{\"text\":\"Unicode\",\"link\":\"/features/unicode\"},{\"text\":\"Userspace\",\"link\":\"/feature_userspace\"},{\"text\":\"WPM Calculation\",\"link\":\"/features/wpm\"}]},{\"text\":\"Hardware Features\",\"items\":[{\"text\":\"Displays\",\"items\":[{\"text\":\"Quantum Painter\",\"link\":\"quantum_painter\",\"items\":[{\"text\":\"Quantum Painter LVGL Integration\",\"link\":\"/quantum_painter_lvgl\"}]},{\"text\":\"HD44780 LCD Driver\",\"link\":\"/features/hd44780\"},{\"text\":\"ST7565 LCD Driver\",\"link\":\"/features/st7565\"},{\"text\":\"OLED Driver\",\"link\":\"/features/oled_driver\"}]},{\"text\":\"Lighting\",\"items\":[{\"text\":\"Backlight\",\"link\":\"/features/backlight\"},{\"text\":\"LED Matrix\",\"link\":\"/features/led_matrix\"},{\"text\":\"RGB Lighting\",\"link\":\"/features/rgblight\"},{\"text\":\"RGB Matrix\",\"link\":\"/features/rgb_matrix\"}]},{\"text\":\"Audio\",\"link\":\"/features/audio\"},{\"text\":\"Bluetooth\",\"link\":\"/features/bluetooth\"},{\"text\":\"Bootmagic Lite\",\"link\":\"/features/bootmagic\"},{\"text\":\"Converters\",\"link\":\"/feature_converters\"},{\"text\":\"Custom Matrix\",\"link\":\"/custom_matrix\"},{\"text\":\"DIP Switch\",\"link\":\"/features/dip_switch\"},{\"text\":\"Encoders\",\"link\":\"/features/encoders\"},{\"text\":\"Haptic Feedback\",\"link\":\"/features/haptic_feedback\"},{\"text\":\"Joystick\",\"link\":\"/features/joystick\"},{\"text\":\"LED Indicators\",\"link\":\"/features/led_indicators\"},{\"text\":\"MIDI\",\"link\":\"/features/midi\"},{\"text\":\"Pointing Device\",\"link\":\"/features/pointing_device\"},{\"text\":\"PS/2 Mouse\",\"link\":\"/features/ps2_mouse\"},{\"text\":\"Split Keyboard\",\"link\":\"/features/split_keyboard\"},{\"text\":\"Stenography\",\"link\":\"/features/stenography\"}]},{\"text\":\"Keyboard Building\",\"items\":[{\"text\":\"Easy Maker for One Offs\",\"link\":\"/easy_maker\"},{\"text\":\"Porting Keyboards\",\"link\":\"/porting_your_keyboard_to_qmk\"},{\"text\":\"Hand Wiring Guide\",\"link\":\"/hand_wire\"},{\"text\":\"ISP Flashing Guide\",\"link\":\"/isp_flashing_guide\"}]}]},{\"text\":\"Developing QMK\",\"items\":[{\"text\":\"PR Checklist\",\"link\":\"/pr_checklist\"},{\"text\":\"Breaking Changes\",\"items\":[{\"text\":\"Overview\",\"link\":\"/breaking_changes\"},{\"text\":\"My Pull Request Was Flagged\",\"link\":\"/breaking_changes_instructions\"},{\"text\":\"Most Recent ChangeLog\",\"link\":\"/ChangeLog/20240526\"},{\"text\":\"Past Breaking Changes\",\"link\":\"/breaking_changes_history\"},{\"text\":\"Deprecation Policy\",\"link\":\"/support_deprecation_policy\"}]},{\"text\":\"C Development\",\"items\":[{\"text\":\"ARM Debugging Guide\",\"link\":\"/arm_debugging\"},{\"text\":\"Coding Conventions\",\"link\":\"/coding_conventions_c\"},{\"text\":\"Compatible Microcontrollers\",\"link\":\"/compatible_microcontrollers\"},{\"text\":\"Drivers\",\"link\":\"hardware_drivers\",\"items\":[{\"text\":\"ADC Driver\",\"link\":\"/drivers/adc\"},{\"text\":\"APA102 Driver\",\"link\":\"/drivers/apa102\"},{\"text\":\"Audio Driver\",\"link\":\"/drivers/audio\"},{\"text\":\"EEPROM Driver\",\"link\":\"/drivers/eeprom\"},{\"text\":\"Flash Driver\",\"link\":\"/drivers/flash\"},{\"text\":\"I2C Driver\",\"link\":\"/drivers/i2c\"},{\"text\":\"'serial' Driver\",\"link\":\"/drivers/serial\"},{\"text\":\"SPI Driver\",\"link\":\"/drivers/spi\"},{\"text\":\"UART Driver\",\"link\":\"/drivers/uart\"},{\"text\":\"WS2812 Driver\",\"link\":\"/drivers/ws2812\"}]},{\"text\":\"GPIO Controls\",\"link\":\"/drivers/gpio\"},{\"text\":\"Keyboard Guidelines\",\"link\":\"/hardware_keyboard_guidelines\"}]},{\"text\":\"Python Development\",\"items\":[{\"text\":\"Coding Conventions\",\"link\":\"/coding_conventions_python\"},{\"text\":\"QMK CLI Development\",\"link\":\"/cli_development\"}]},{\"text\":\"Configurator Development\",\"items\":[{\"text\":\"QMK API\",\"items\":[{\"text\":\"Development Environment\",\"link\":\"/api_development_environment\"},{\"text\":\"Architecture Overview\",\"link\":\"/api_development_overview\"}]}]},{\"text\":\"Hardware Platform Development\",\"items\":[{\"text\":\"Arm/ChibiOS\",\"items\":[{\"text\":\"Selecting an MCU\",\"link\":\"/platformdev_selecting_arm_mcu\"},{\"text\":\"Early initialization\",\"link\":\"/platformdev_chibios_earlyinit\"},{\"text\":\"Raspberry Pi RP2040\",\"link\":\"/platformdev_rp2040\"},{\"text\":\"Proton C\",\"link\":\"/platformdev_proton_c\"},{\"text\":\"WeAct Blackpill F4x1\",\"link\":\"/platformdev_blackpill_f4x1\"}]}]},{\"text\":\"QMK Reference\",\"items\":[{\"text\":\"Contributing to QMK\",\"link\":\"/contributing\"},{\"text\":\"Config Options\",\"link\":\"/config_options\"},{\"text\":\"Data Driven Configuration\",\"link\":\"/data_driven_config\"},{\"text\":\"Make Documentation\",\"link\":\"/getting_started_make_guide\"},{\"text\":\"Documentation Best Practices\",\"link\":\"/documentation_best_practices\"},{\"text\":\"Documentation Templates\",\"link\":\"/documentation_templates\"},{\"text\":\"Community Layouts\",\"link\":\"/feature_layouts\"},{\"text\":\"Unit Testing\",\"link\":\"/unit_testing\"},{\"text\":\"Useful Functions\",\"link\":\"/ref_functions\"},{\"text\":\"info.json Format\",\"link\":\"/reference_info_json\"}]},{\"text\":\"For a Deeper Understanding\",\"items\":[{\"text\":\"How Keyboards Work\",\"link\":\"/how_keyboards_work\"},{\"text\":\"How a Matrix Works\",\"link\":\"/how_a_matrix_works\"},{\"text\":\"Understanding QMK\",\"link\":\"/understanding_qmk\"}]}]}],\"socialLinks\":[{\"icon\":{\"svg\":\"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 50 50\\\" width=\\\"50px\\\" height=\\\"50px\\\"><path d=\\\"M 29 3 C 28.0625 3 27.164063 3.382813 26.5 4 C 25.835938 4.617188 25.363281 5.433594 25 6.40625 C 24.355469 8.140625 24.085938 10.394531 24.03125 13.03125 C 19.234375 13.179688 14.820313 14.421875 11.28125 16.46875 C 10.214844 15.46875 8.855469 14.96875 7.5 14.96875 C 6.089844 14.96875 4.675781 15.511719 3.59375 16.59375 C 1.425781 18.761719 1.425781 22.238281 3.59375 24.40625 L 3.84375 24.65625 C 3.3125 26.035156 3 27.488281 3 29 C 3 33.527344 5.566406 37.585938 9.5625 40.4375 C 13.558594 43.289063 19.007813 45 25 45 C 30.992188 45 36.441406 43.289063 40.4375 40.4375 C 44.433594 37.585938 47 33.527344 47 29 C 47 27.488281 46.6875 26.035156 46.15625 24.65625 L 46.40625 24.40625 C 48.574219 22.238281 48.574219 18.761719 46.40625 16.59375 C 45.324219 15.511719 43.910156 14.96875 42.5 14.96875 C 41.144531 14.96875 39.785156 15.46875 38.71875 16.46875 C 35.195313 14.433594 30.800781 13.191406 26.03125 13.03125 C 26.09375 10.546875 26.363281 8.46875 26.875 7.09375 C 27.164063 6.316406 27.527344 5.757813 27.875 5.4375 C 28.222656 5.117188 28.539063 5 29 5 C 29.460938 5 29.683594 5.125 30.03125 5.40625 C 30.378906 5.6875 30.785156 6.148438 31.3125 6.6875 C 32.253906 7.652344 33.695313 8.714844 36.09375 8.9375 C 36.539063 11.238281 38.574219 13 41 13 C 43.75 13 46 10.75 46 8 C 46 5.25 43.75 3 41 3 C 38.605469 3 36.574219 4.710938 36.09375 6.96875 C 34.3125 6.796875 33.527344 6.109375 32.75 5.3125 C 32.300781 4.851563 31.886719 4.3125 31.3125 3.84375 C 30.738281 3.375 29.9375 3 29 3 Z M 41 5 C 42.667969 5 44 6.332031 44 8 C 44 9.667969 42.667969 11 41 11 C 39.332031 11 38 9.667969 38 8 C 38 6.332031 39.332031 5 41 5 Z M 25 15 C 30.609375 15 35.675781 16.613281 39.28125 19.1875 C 42.886719 21.761719 45 25.226563 45 29 C 45 32.773438 42.886719 36.238281 39.28125 38.8125 C 35.675781 41.386719 30.609375 43 25 43 C 19.390625 43 14.324219 41.386719 10.71875 38.8125 C 7.113281 36.238281 5 32.773438 5 29 C 5 25.226563 7.113281 21.761719 10.71875 19.1875 C 14.324219 16.613281 19.390625 15 25 15 Z M 7.5 16.9375 C 8.203125 16.9375 8.914063 17.148438 9.53125 17.59375 C 7.527344 19.03125 5.886719 20.769531 4.75 22.71875 C 3.582031 21.296875 3.660156 19.339844 5 18 C 5.714844 17.285156 6.609375 16.9375 7.5 16.9375 Z M 42.5 16.9375 C 43.390625 16.9375 44.285156 17.285156 45 18 C 46.339844 19.339844 46.417969 21.296875 45.25 22.71875 C 44.113281 20.769531 42.472656 19.03125 40.46875 17.59375 C 41.085938 17.148438 41.796875 16.9375 42.5 16.9375 Z M 17 22 C 14.800781 22 13 23.800781 13 26 C 13 28.199219 14.800781 30 17 30 C 19.199219 30 21 28.199219 21 26 C 21 23.800781 19.199219 22 17 22 Z M 33 22 C 30.800781 22 29 23.800781 29 26 C 29 28.199219 30.800781 30 33 30 C 35.199219 30 37 28.199219 37 26 C 37 23.800781 35.199219 22 33 22 Z M 17 24 C 18.117188 24 19 24.882813 19 26 C 19 27.117188 18.117188 28 17 28 C 15.882813 28 15 27.117188 15 26 C 15 24.882813 15.882813 24 17 24 Z M 33 24 C 34.117188 24 35 24.882813 35 26 C 35 27.117188 34.117188 28 33 28 C 31.882813 28 31 27.117188 31 26 C 31 24.882813 31.882813 24 33 24 Z M 34.15625 33.84375 C 34.101563 33.851563 34.050781 33.859375 34 33.875 C 33.683594 33.9375 33.417969 34.144531 33.28125 34.4375 C 33.28125 34.4375 32.757813 35.164063 31.4375 36 C 30.117188 36.835938 28.058594 37.6875 25 37.6875 C 21.941406 37.6875 19.882813 36.835938 18.5625 36 C 17.242188 35.164063 16.71875 34.4375 16.71875 34.4375 C 16.492188 34.082031 16.066406 33.90625 15.65625 34 C 15.332031 34.082031 15.070313 34.316406 14.957031 34.632813 C 14.84375 34.945313 14.894531 35.292969 15.09375 35.5625 C 15.09375 35.5625 15.863281 36.671875 17.46875 37.6875 C 19.074219 38.703125 21.558594 39.6875 25 39.6875 C 28.441406 39.6875 30.925781 38.703125 32.53125 37.6875 C 34.136719 36.671875 34.90625 35.5625 34.90625 35.5625 C 35.207031 35.273438 35.296875 34.824219 35.128906 34.441406 C 34.960938 34.058594 34.574219 33.820313 34.15625 33.84375 Z\\\"/></svg>\"},\"link\":\"https://reddit.com/r/olkb\"},{\"icon\":\"discord\",\"link\":\"https://discord.gg/qmk\"},{\"icon\":\"github\",\"link\":\"https://github.com/qmk/qmk_firmware\"}]},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":true}");</script>
</body>
</html>