mirror of
https://github.com/qmk/qmk_firmware.git
synced 2024-11-29 14:40:38 +00:00
24 lines
181 KiB
HTML
24 lines
181 KiB
HTML
<!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 "Keycodes Overview""></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 "Basic Keycodes {#basic-keycodes}""></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>&</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>'</code> and <code>"</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><</code></td><td>✔</td><td>✔</td><td>✔</td></tr><tr><td><code>KC_DOT</code></td><td></td><td><code>.</code> and <code>></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 "Quantum Keycodes {#quantum-keycodes}""></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'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 & 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 "Audio Keys {#audio-keys}""></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 "Auto Shift {#auto-shift}""></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 "Autocorrect {#autocorrect}""></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 "Backlighting {#backlighting}""></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 "Bluetooth {#bluetooth}""></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 "Caps Word {#caps-word}""></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 "Dynamic Macros {#dynamic-macros}""></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 "Grave Escape {#grave-escape}""></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 "Joystick {#joystick}""></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 "Key Lock {#key-lock}""></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 "Layer Switching {#layer-switching}""></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'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 "Leader Key {#leader-key}""></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 "LED Matrix {#led-matrix}""></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 "Magic Keycodes {#magic-keycodes}""></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 "MIDI {#midi}""></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 "Mouse Keys {#mouse-keys}""></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 "Modifiers {#modifiers}""></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 "Mod-Tap Keys {#mod-tap-keys}""></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 "Tapping Term Keys {#tapping-term-keys}""></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 "RGB Lighting {#rgb-lighting}""></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>"Knight Rider" 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 "RGB Matrix Lighting {#rgb-matrix-lighting}""></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 "US ANSI Shifted Symbols {#us-ansi-shifted-symbols}""></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>&</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>"</code></td></tr><tr><td><code>KC_LEFT_ANGLE_BRACKET</code></td><td><code>KC_LABK</code>, <code>KC_LT</code></td><td><code><</code></td></tr><tr><td><code>KC_RIGHT_ANGLE_BRACKET</code></td><td><code>KC_RABK</code>, <code>KC_GT</code></td><td><code>></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 "One Shot Keys {#one-shot-keys}""></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 "Programmable Button Support {#programmable-button}""></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 "Repeat Key {#repeat-key}""></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 "Space Cadet {#space-cadet}""></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 "Swap Hands {#swap-hands}""></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 "Unicode Support {#unicode-support}""></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> |