/* Copyright 2021 Laneware Peripherals * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #pragma once #include "quantum.h" /* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ * │000│001│002│003│004│005│006│007│008│009│010│011│012│ 013 │ ┌───┐ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ │015│ * │ 100 │101│102│103│104│105│106│107│108│109│110│111│112│ 113 │ └───┘ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ┌───┬───┐ * │ 200 │201│202│203│204│205│206│207│208│209│210│211│ 213 │ │214│215│ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ └───┼───┤ * │ 300 │302│303│304│305│306│307│308│309│310│311│ 312 │┌───┐│314│ * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┘│313│└───┘ * │ 400│ 401│ 402│ 403 │ 404│ 405│ 406│ ┌───┼───┼───┐ * └────┴────┴────┴────────────────────────┴────┴────┴────┘ │407│408│409│ * └───┴───┴───┘ */ #define LAYOUT_ansi( \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214, K215, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409 \ ) { \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \ { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, KC_NO, KC_NO }, \ { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, KC_NO, K213, K214, K215 }, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, KC_NO }, \ { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ } /* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ * │000│001│002│003│004│005│006│007│008│009│010│011│012│013│014│ ┌───┐ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ │015│ * │ 100 │101│102│103│104│105│106│107│108│109│110│111│112│ 113 │ └───┘ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ┌───┬───┐ * │ 200 │201│202│203│204│205│206│207│208│209│210│211│ 213 │ │214│215│ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ └───┼───┤ * │ 300 │302│303│304│305│306│307│308│309│310│311│ 312 │┌───┐│314│ * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┘│313│└───┘ * │ 400│ 401│ 402│ 403 │ 404│ 405│ 406│ ┌───┼───┼───┐ * └────┴────┴────┴────────────────────────┴────┴────┴────┘ │407│408│409│ * └───┴───┴───┘ */ #define LAYOUT_ansi_splitbs( \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214, K215, \ K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409 \ ) { \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, KC_NO, KC_NO }, \ { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, KC_NO, K213, K214, K215 }, \ { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, KC_NO }, \ { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ } /* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ * │000│001│002│003│004│005│006│007│008│009│010│011│012│ 013 │ ┌───┐ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ │015│ * │ 100 │101│102│103│104│105│106│107│108│109│110│111│112│ │ └───┘ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ 213│ ┌───┬───┐ * │ 200 │201│202│203│204│205│206│207│208│209│210│211│212│ │ │214│215│ * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ └───┼───┤ * │ 300│301│302│303│304│305│306│307│308│309│310│311│ 312 │┌───┐│314│ * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┘│313│└───┘ * │ 400│ 401│ 402│ 403 │ 404│ 405│ 406│ ┌───┼───┼───┐ * └────┴────┴────┴────────────────────────┴────┴────┴────┘ │407│408│409│ * └───┴───┴───┘ */ #define LAYOUT_iso( \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, \ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409 \ ) { \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015 }, \ { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, KC_NO, KC_NO }, \ { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, KC_NO }, \ { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ } /* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ * │000│001│002│003│004│005│006│007│008│009│010│011│012│013│014│ ┌───┐ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ │015│ * │ 100 │101│102│103│104│105│106│107│108│109│110│111│112│ │ └───┘ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ 213│ ┌───┬───┐ * │ 200 │201│202│203│204│205│206│207│208│209│210│211│212│ │ │214│215│ * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ └───┼───┤ * │ 300│301│302│303│304│305│306│307│308│309│310│311│ 312 │┌───┐│314│ * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┘│313│└───┘ * │ 400│ 401│ 402│ 403 │ 404│ 405│ 406│ ┌───┼───┼───┐ * └────┴────┴────┴────────────────────────┴────┴────┴────┘ │407│408│409│ * └───┴───┴───┘ */ #define LAYOUT_iso_splitbs( \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, \ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409 \ ) { \ { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, KC_NO, KC_NO }, \ { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, KC_NO }, \ { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ }