const__pageData=JSON.parse('{"title":"Layouts: Using a Keymap with Multiple Keyboards","description":"","frontmatter":{},"headers":[],"relativePath":"feature_layouts.md","filePath":"feature_layouts.md"}');
const_sfc_main={name:"feature_layouts.md"};
const_hoisted_1=/* @__PURE__ */createStaticVNode('<h1id="layouts-using-a-keymap-with-multiple-keyboards"tabindex="-1">Layouts:UsingaKeymapwithMultipleKeyboards<aclass="header-anchor"href="#layouts-using-a-keymap-with-multiple-keyboards"aria-label="Permalink to "Layouts: Using a Keymap with Multiple Keyboards""></a></h1><p>The<code>layouts/</code>foldercontainsdifferentphysicalkeylayoutsthatcanapplytodifferentkeyboards.</p><divclass="language-vp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang"></span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><span>layouts/</span></span>\n<spanclass="line"><span>+default/</span></span>\n<spanclass="line"><span>|+60_ansi/</span></span>\n<spanclass="line"><span>||+readme.md</span></span>\n<spanclass="line"><span>||+layout.json</span></span>\n<spanclass="line"><span>||+a_good_keymap/</span></span>\n<spanclass="line"><span>|||+keymap.c</span></span>\n<spanclass="line"><span>|||+readme.md</span></span>\n<spanclass="line"><span>|||+config.h</span></span>\n<spanclass="line"><span>|||+rules.mk</span></span>\n<spanclass="line"><span>||+<keymapfolder>/</span></span>\n<spanclass="line"><span>||+...</span></span>\n<spanclass="line"><span>|+<layoutfolder>/</span></span>\n<spanclass="line"><span>+community/</span></span>\n<spanclass="line"><span>|+<layoutfolder>/</span></span>\n<spanclass="line"><span>|+...</span></span></code></pre></div><p>The<code>layouts/default/</code>and<code>layouts/community/</code>aretwoexamplesoflayout"repositories"-currently<code>default</code>willcontainalloftheinformationconcerningthelayout,andonedefaultkeymapnamed<code>default_<layout></code>,foruserstouseasareference.<code>community</code>containsallofthecommunitykeymaps,withtheeventualgoalofbeingsplit-offintoaseparaterepoforuserstocloneinto<code>layouts/</code>.QMKsearchesthroughallfoldersin<code>layouts/</code>,soit'spossibletohavemultiplerepositorieshere.</p><p>Eachlayoutfolderisnamed(<code>[a-z0-9_]</code>)afterthephysicalaspectsofthelayout,inthemostgenericwaypossible,andcontainsa<code>readme.md</code>withthelayouttobedefinedbythekeyboard:</p><divclass="language-markdownvp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">markdown</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#005CC5;--shiki-dark:#79B8FF;--shiki-light-font-weight:bold;--shiki-dark-font-weight:bold;">#60_ansi</span></span>\n<spanclass="line"></span>\n<spanclass="line"><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">LAYOUT_60_ansi</span></span></code></pre></div><p>Newnamesshouldtrytosticktothestandardssetbyexistinglayouts,andcanbediscussedinthePR/Issue.</p><h2id="supporting-a-layout"tabindex="-1">SupportingaLayout<aclass="header-anchor"href="#supporting-a-layout"aria-label="Permalinkto"SupportingaLayout""></a></h2><p>Forakeyboardtosupportalayout,thevariablemustbedefinedinit's<code><keyboard>.h</code>,andmatchthenumberofarguments/keys(andpreferablythephysicallayout):</p><divclass="language-cvp-adaptive-theme"><buttontitle="CopyCode"class="copy"></button><spanclass="lang">c</span><preclass="shikishiki-themesgithub-lightgithub-darkvp-code"><code><spanclass="line"><spanstyle="--shiki-light:#D73A49;--shiki-dark:#F97583;">#define</span><spanstyle="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">LAYOUT_60_ansi</span><spanstyle="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">KEYMAP_ANSI</span></span></code></pre></div><p>Thenameofthelayoutmustmatchthisregex:<code>[a-z0-9_]+</code></p><p>Thefoldernamemustbeaddedtothekeyboard's<code>rules.mk</code>:</p><divclass="language-vp-adaptive-theme"><buttontit