@ -0,0 +1,339 @@ | |||||
{ | |||||
"aliases": { | |||||
/* | |||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ | |||||
* │ | │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ ' │ ¿ │ │ | |||||
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ | |||||
* │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ ´ │ + │ │ | |||||
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ | |||||
* │ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ Ñ │ { │ } │ │ | |||||
* ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ | |||||
* │ │ < │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ - │ │ | |||||
* ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ | |||||
* │ │ │ │ │ │ │ │ │ | |||||
* └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ | |||||
*/ | |||||
"KC_GRV": { | |||||
"key": "ES_PIPE", | |||||
"label": "|", | |||||
} | |||||
"KC_1": { | |||||
"key": "ES_1", | |||||
"label": "1", | |||||
} | |||||
"KC_2": { | |||||
"key": "ES_2", | |||||
"label": "2", | |||||
} | |||||
"KC_3": { | |||||
"key": "ES_3", | |||||
"label": "3", | |||||
} | |||||
"KC_4": { | |||||
"key": "ES_4", | |||||
"label": "4", | |||||
} | |||||
"KC_5": { | |||||
"key": "ES_5", | |||||
"label": "5", | |||||
} | |||||
"KC_6": { | |||||
"key": "ES_6", | |||||
"label": "6", | |||||
} | |||||
"KC_7": { | |||||
"key": "ES_7", | |||||
"label": "7", | |||||
} | |||||
"KC_8": { | |||||
"key": "ES_8", | |||||
"label": "8", | |||||
} | |||||
"KC_9": { | |||||
"key": "ES_9", | |||||
"label": "9", | |||||
} | |||||
"KC_0": { | |||||
"key": "ES_0", | |||||
"label": "0", | |||||
} | |||||
"KC_MINS": { | |||||
"key": "ES_QUOT", | |||||
"label": "'", | |||||
} | |||||
"KC_EQL": { | |||||
"key": "ES_IQUE", | |||||
"label": "¿", | |||||
} | |||||
"KC_Q": { | |||||
"key": "ES_Q", | |||||
"label": "Q", | |||||
} | |||||
"KC_W": { | |||||
"key": "ES_W", | |||||
"label": "W", | |||||
} | |||||
"KC_E": { | |||||
"key": "ES_E", | |||||
"label": "E", | |||||
} | |||||
"KC_R": { | |||||
"key": "ES_R", | |||||
"label": "R", | |||||
} | |||||
"KC_T": { | |||||
"key": "ES_T", | |||||
"label": "T", | |||||
} | |||||
"KC_Y": { | |||||
"key": "ES_Y", | |||||
"label": "Y", | |||||
} | |||||
"KC_U": { | |||||
"key": "ES_U", | |||||
"label": "U", | |||||
} | |||||
"KC_I": { | |||||
"key": "ES_I", | |||||
"label": "I", | |||||
} | |||||
"KC_O": { | |||||
"key": "ES_O", | |||||
"label": "O", | |||||
} | |||||
"KC_P": { | |||||
"key": "ES_P", | |||||
"label": "P", | |||||
} | |||||
"KC_LBRC": { | |||||
"key": "ES_ACUT", | |||||
"label": "´ (dead)", | |||||
} | |||||
"KC_RBRC": { | |||||
"key": "ES_PLUS", | |||||
"label": "+", | |||||
} | |||||
"KC_A": { | |||||
"key": "ES_A", | |||||
"label": "A", | |||||
} | |||||
"KC_S": { | |||||
"key": "ES_S", | |||||
"label": "S", | |||||
} | |||||
"KC_D": { | |||||
"key": "ES_D", | |||||
"label": "D", | |||||
} | |||||
"KC_F": { | |||||
"key": "ES_F", | |||||
"label": "F", | |||||
} | |||||
"KC_G": { | |||||
"key": "ES_G", | |||||
"label": "G", | |||||
} | |||||
"KC_H": { | |||||
"key": "ES_H", | |||||
"label": "H", | |||||
} | |||||
"KC_J": { | |||||
"key": "ES_J", | |||||
"label": "J", | |||||
} | |||||
"KC_K": { | |||||
"key": "ES_K", | |||||
"label": "K", | |||||
} | |||||
"KC_L": { | |||||
"key": "ES_L", | |||||
"label": "L", | |||||
} | |||||
"KC_SCLN": { | |||||
"key": "ES_NTIL", | |||||
"label": "Ñ", | |||||
} | |||||
"KC_QUOT": { | |||||
"key": "ES_LCBR", | |||||
"label": "{", | |||||
} | |||||
"KC_NUHS": { | |||||
"key": "ES_RCBR", | |||||
"label": "}", | |||||
} | |||||
"KC_NUBS": { | |||||
"key": "ES_LABK", | |||||
"label": "<", | |||||
} | |||||
"KC_Z": { | |||||
"key": "ES_Z", | |||||
"label": "Z", | |||||
} | |||||
"KC_X": { | |||||
"key": "ES_X", | |||||
"label": "X", | |||||
} | |||||
"KC_C": { | |||||
"key": "ES_C", | |||||
"label": "C", | |||||
} | |||||
"KC_V": { | |||||
"key": "ES_V", | |||||
"label": "V", | |||||
} | |||||
"KC_B": { | |||||
"key": "ES_B", | |||||
"label": "B", | |||||
} | |||||
"KC_N": { | |||||
"key": "ES_N", | |||||
"label": "N", | |||||
} | |||||
"KC_M": { | |||||
"key": "ES_M", | |||||
"label": "M", | |||||
} | |||||
"KC_COMM": { | |||||
"key": "ES_COMM", | |||||
"label": ",", | |||||
} | |||||
"KC_DOT": { | |||||
"key": "ES_DOT", | |||||
"label": ".", | |||||
} | |||||
"KC_SLSH": { | |||||
"key": "ES_MINS", | |||||
"label": "-", | |||||
} | |||||
/* Shifted symbols | |||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ | |||||
* │ ° │ ! │ " │ # │ $ │ % │ & │ / │ ( │ ) │ = │ ? │ ¡ │ │ | |||||
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ | |||||
* │ │ │ │ │ │ │ │ │ │ │ │ ¨ │ * │ │ | |||||
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ | |||||
* │ │ │ │ │ │ │ │ │ │ │ │ [ │ ] │ │ | |||||
* ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ | |||||
* │ │ > │ │ │ │ │ │ │ │ ; │ : │ _ │ │ | |||||
* ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ | |||||
* │ │ │ │ │ │ │ │ │ | |||||
* └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ | |||||
*/ | |||||
"S(ES_PIPE)": { | |||||
"key": "ES_MORD", | |||||
"label": "°", | |||||
} | |||||
"S(ES_1)": { | |||||
"key": "ES_EXLM", | |||||
"label": "!", | |||||
} | |||||
"S(ES_2)": { | |||||
"key": "ES_DQUO", | |||||
"label": "\"", | |||||
} | |||||
"S(ES_3)": { | |||||
"key": "ES_NUMB", | |||||
"label": "#", | |||||
} | |||||
"S(ES_4)": { | |||||
"key": "ES_DLR", | |||||
"label": "$", | |||||
} | |||||
"S(ES_5)": { | |||||
"key": "ES_PERC", | |||||
"label": "%", | |||||
} | |||||
"S(ES_6)": { | |||||
"key": "ES_AMPR", | |||||
"label": "&", | |||||
} | |||||
"S(ES_7)": { | |||||
"key": "ES_SLSH", | |||||
"label": "/", | |||||
} | |||||
"S(ES_8)": { | |||||
"key": "ES_LPRN", | |||||
"label": "(", | |||||
} | |||||
"S(ES_9)": { | |||||
"key": "ES_RPRN", | |||||
"label": ")", | |||||
} | |||||
"S(ES_0)": { | |||||
"key": "ES_EQL", | |||||
"label": "=", | |||||
} | |||||
"S(ES_QUOT)": { | |||||
"key": "ES_QUES", | |||||
"label": "?", | |||||
} | |||||
"S(ES_IQUE)": { | |||||
"key": "ES_IEXL", | |||||
"label": "¡", | |||||
} | |||||
"S(ES_ACUT)": { | |||||
"key": "ES_DIAE", | |||||
"label": "¨ (dead)", | |||||
} | |||||
"S(ES_PLUS)": { | |||||
"key": "ES_ASTR", | |||||
"label": "*", | |||||
} | |||||
"S(ES_LCBR)": { | |||||
"key": "ES_LBRC", | |||||
"label": "[", | |||||
} | |||||
"S(ES_RCBR)": { | |||||
"key": "ES_RBRC", | |||||
"label": "]", | |||||
} | |||||
"S(ES_LABK)": { | |||||
"key": "ES_RABK", | |||||
"label": ">", | |||||
} | |||||
"S(ES_COMM)": { | |||||
"key": "ES_SCLN", | |||||
"label": ";", | |||||
} | |||||
"S(ES_DOT)": { | |||||
"key": "ES_COLN", | |||||
"label": ":", | |||||
} | |||||
"S(ES_MINS)": { | |||||
"key": "ES_UNDS", | |||||
"label": "_", | |||||
} | |||||
/* AltGr symbols | |||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ | |||||
* │ ¬ │ │ │ │ │ │ │ │ │ │ │ \ │ │ │ | |||||
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ | |||||
* │ │ @ │ │ │ │ │ │ │ │ │ │ │ ~ │ │ | |||||
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ | |||||
* │ │ │ │ │ │ │ │ │ │ │ │ ^ │ ` │ │ | |||||
* ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ | |||||
* │ │ │ │ │ │ │ │ │ │ │ │ │ │ | |||||
* ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ | |||||
* │ │ │ │ │ │ │ │ │ | |||||
* └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ | |||||
*/ | |||||
"ALGR(ES_PIPE)": { | |||||
"key": "ES_NOT", | |||||
"label": "¬", | |||||
} | |||||
"ALGR(ES_QUOT)": { | |||||
"key": "ES_BSLS", | |||||
"label": "\\", | |||||
} | |||||
"ALGR(ES_Q)": { | |||||
"key": "ES_AT", | |||||
"label": "@", | |||||
} | |||||
"ALGR(ES_PLUS)": { | |||||
"key": "ES_TILD", | |||||
"label": "~", | |||||
} | |||||
"ALGR(ES_LCBR)": { | |||||
"key": "ES_CIRC", | |||||
"label": "^", | |||||
} | |||||
} | |||||
} |
@ -0,0 +1,105 @@ | |||||
// Copyright 2023 QMK | |||||
// SPDX-License-Identifier: GPL-2.0-or-later | |||||
/******************************************************************************* | |||||
88888888888 888 d8b .d888 d8b 888 d8b | |||||
888 888 Y8P d88P" Y8P 888 Y8P | |||||
888 888 888 888 | |||||
888 88888b. 888 .d8888b 888888 888 888 .d88b. 888 .d8888b | |||||
888 888 "88b 888 88K 888 888 888 d8P Y8b 888 88K | |||||
888 888 888 888 "Y8888b. 888 888 888 88888888 888 "Y8888b. | |||||
888 888 888 888 X88 888 888 888 Y8b. 888 X88 | |||||
888 888 888 888 88888P' 888 888 888 "Y8888 888 88888P' | |||||
888 888 | |||||
888 888 | |||||
888 888 | |||||
.d88b. .d88b. 88888b. .d88b. 888d888 8888b. 888888 .d88b. .d88888 | |||||
d88P"88b d8P Y8b 888 "88b d8P Y8b 888P" "88b 888 d8P Y8b d88" 888 | |||||
888 888 88888888 888 888 88888888 888 .d888888 888 88888888 888 888 | |||||
Y88b 888 Y8b. 888 888 Y8b. 888 888 888 Y88b. Y8b. Y88b 888 | |||||
"Y88888 "Y8888 888 888 "Y8888 888 "Y888888 "Y888 "Y8888 "Y88888 | |||||
888 | |||||
Y8b d88P | |||||
"Y88P" | |||||
*******************************************************************************/ | |||||
#pragma once | |||||
#include "keycodes.h" | |||||
// clang-format off | |||||
// Aliases | |||||
#define ES_PIPE KC_GRV // | | |||||
#define ES_1 KC_1 // 1 | |||||
#define ES_2 KC_2 // 2 | |||||
#define ES_3 KC_3 // 3 | |||||
#define ES_4 KC_4 // 4 | |||||
#define ES_5 KC_5 // 5 | |||||
#define ES_6 KC_6 // 6 | |||||
#define ES_7 KC_7 // 7 | |||||
#define ES_8 KC_8 // 8 | |||||
#define ES_9 KC_9 // 9 | |||||
#define ES_0 KC_0 // 0 | |||||
#define ES_QUOT KC_MINS // ' | |||||
#define ES_IQUE KC_EQL // ¿ | |||||
#define ES_Q KC_Q // Q | |||||
#define ES_W KC_W // W | |||||
#define ES_E KC_E // E | |||||
#define ES_R KC_R // R | |||||
#define ES_T KC_T // T | |||||
#define ES_Y KC_Y // Y | |||||
#define ES_U KC_U // U | |||||
#define ES_I KC_I // I | |||||
#define ES_O KC_O // O | |||||
#define ES_P KC_P // P | |||||
#define ES_ACUT KC_LBRC // ´ (dead) | |||||
#define ES_PLUS KC_RBRC // + | |||||
#define ES_A KC_A // A | |||||
#define ES_S KC_S // S | |||||
#define ES_D KC_D // D | |||||
#define ES_F KC_F // F | |||||
#define ES_G KC_G // G | |||||
#define ES_H KC_H // H | |||||
#define ES_J KC_J // J | |||||
#define ES_K KC_K // K | |||||
#define ES_L KC_L // L | |||||
#define ES_NTIL KC_SCLN // Ñ | |||||
#define ES_LCBR KC_QUOT // { | |||||
#define ES_RCBR KC_NUHS // } | |||||
#define ES_LABK KC_NUBS // < | |||||
#define ES_Z KC_Z // Z | |||||
#define ES_X KC_X // X | |||||
#define ES_C KC_C // C | |||||
#define ES_V KC_V // V | |||||
#define ES_B KC_B // B | |||||
#define ES_N KC_N // N | |||||
#define ES_M KC_M // M | |||||
#define ES_COMM KC_COMM // , | |||||
#define ES_DOT KC_DOT // . | |||||
#define ES_MINS KC_SLSH // - | |||||
#define ES_MORD S(ES_PIPE) // ° | |||||
#define ES_EXLM S(ES_1) // ! | |||||
#define ES_DQUO S(ES_2) // " | |||||
#define ES_NUMB S(ES_3) // # | |||||
#define ES_DLR S(ES_4) // $ | |||||
#define ES_PERC S(ES_5) // % | |||||
#define ES_AMPR S(ES_6) // & | |||||
#define ES_SLSH S(ES_7) // / | |||||
#define ES_LPRN S(ES_8) // ( | |||||
#define ES_RPRN S(ES_9) // ) | |||||
#define ES_EQL S(ES_0) // = | |||||
#define ES_QUES S(ES_QUOT) // ? | |||||
#define ES_IEXL S(ES_IQUE) // ¡ | |||||
#define ES_DIAE S(ES_ACUT) // ¨ (dead) | |||||
#define ES_ASTR S(ES_PLUS) // * | |||||
#define ES_LBRC S(ES_LCBR) // [ | |||||
#define ES_RBRC S(ES_RCBR) // ] | |||||
#define ES_RABK S(ES_LABK) // > | |||||
#define ES_SCLN S(ES_COMM) // ; | |||||
#define ES_COLN S(ES_DOT) // : | |||||
#define ES_UNDS S(ES_MINS) // _ | |||||
#define ES_NOT ALGR(ES_PIPE) // ¬ | |||||
#define ES_BSLS ALGR(ES_QUOT) // (backslash) | |||||
#define ES_AT ALGR(ES_Q) // @ | |||||
#define ES_TILD ALGR(ES_PLUS) // ~ | |||||
#define ES_CIRC ALGR(ES_LCBR) // ^ | |||||
@ -0,0 +1,120 @@ | |||||
/* Copyright 2023 Juan David Díaz | |||||
* | |||||
* 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/>. | |||||
*/ | |||||
// Sendstring lookup tables for Latam Spanish layouts | |||||
#pragma once | |||||
#include "send_string.h" | |||||
#include "keymap_spanish_latin_america.h" | |||||
// clang-format off | |||||
const uint8_t ascii_to_shift_lut[16] PROGMEM = { | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 1, 1, 0, 1, 1, 1, 0), | |||||
KCLUT_ENTRY(1, 1, 1, 0, 0, 0, 0, 1), | |||||
KCLUT_ENTRY(0, 0, 1, 1, 0, 1, 1, 0), | |||||
KCLUT_ENTRY(0, 0, 1, 1, 0, 1, 1, 1), | |||||
KCLUT_ENTRY(0, 1, 1, 1, 1, 1, 1, 1), | |||||
KCLUT_ENTRY(1, 1, 1, 1, 1, 1, 1, 1), | |||||
KCLUT_ENTRY(1, 1, 1, 1, 1, 1, 1, 1), | |||||
KCLUT_ENTRY(1, 1, 1, 1, 0, 1, 0, 1), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) | |||||
}; | |||||
const uint8_t ascii_to_altgr_lut[16] PROGMEM = { | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 1, 0, 1, 0), | |||||
KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) | |||||
}; | |||||
const uint8_t ascii_to_dead_lut[16] PROGMEM = { | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), | |||||
KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), | |||||
KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) | |||||
}; | |||||
const uint8_t ascii_to_keycode_lut[128] PROGMEM = { | |||||
// NUL SOH STX ETX EOT ENQ ACK BEL | |||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |||||
// BS TAB LF VT FF CR SO SI | |||||
KC_BSPC, KC_TAB, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |||||
// DLE DC1 DC2 DC3 DC4 NAK SYN ETB | |||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |||||
// CAN EM SUB ESC FS GS RS US | |||||
XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | |||||
// ! " # $ % & ' | |||||
KC_SPC, ES_1, ES_2, ES_3, ES_4, ES_5, ES_6, ES_QUOT, | |||||
// ( ) * + , - . / | |||||
ES_8, ES_9, ES_PLUS, ES_PLUS, ES_COMM, ES_MINS, ES_DOT, ES_7, | |||||
// 0 1 2 3 4 5 6 7 | |||||
ES_0, ES_1, ES_2, ES_3, ES_4, ES_5, ES_6, ES_7, | |||||
// 8 9 : ; < = > ? | |||||
ES_8, ES_9, ES_DOT, ES_COMM, ES_LABK, ES_0, ES_LABK, ES_QUOT, | |||||
// @ A B C D E F G | |||||
ES_Q, ES_A, ES_B, ES_C, ES_D, ES_E, ES_F, ES_G, | |||||
// H I J K L M N O | |||||
ES_H, ES_I, ES_J, ES_K, ES_L, ES_M, ES_N, ES_O, | |||||
// P Q R S T U V W | |||||
ES_P, ES_Q, ES_R, ES_S, ES_T, ES_U, ES_V, ES_W, | |||||
// X Y Z [ \ ] ^ _ | |||||
ES_X, ES_Y, ES_Z, ES_LCBR, ES_QUOT, ES_RCBR, ES_LCBR, ES_MINS, | |||||
// ` a b c d e f g | |||||
ES_RCBR, ES_A, ES_B, ES_C, ES_D, ES_E, ES_F, ES_G, | |||||
// h i j k l m n o | |||||
ES_H, ES_I, ES_J, ES_K, ES_L, ES_M, ES_N, ES_O, | |||||
// p q r s t u v w | |||||
ES_P, ES_Q, ES_R, ES_S, ES_T, ES_U, ES_V, ES_W, | |||||
// x y z { | } ~ DEL | |||||
ES_X, ES_Y, ES_Z, ES_LCBR, ES_PIPE, ES_RCBR, ES_PLUS, KC_DEL | |||||
}; |