Add latam spanish headers (#22542)
This commit is contained in:
parent
57db82445e
commit
ce81801480
5 changed files with 568 additions and 3 deletions
105
quantum/keymap_extras/keymap_spanish_latin_america.h
Normal file
105
quantum/keymap_extras/keymap_spanish_latin_america.h
Normal file
|
@ -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) // ^
|
||||
|
120
quantum/keymap_extras/sendstring_spanish_latin_america.h
Normal file
120
quantum/keymap_extras/sendstring_spanish_latin_america.h
Normal file
|
@ -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
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue