From ce81801480d21147900f968e76c90974c889d244 Mon Sep 17 00:00:00 2001
From: JuanoD <3674588+JuanoD@users.noreply.github.com>
Date: Sun, 3 Dec 2023 19:13:27 -0500
Subject: Add latam spanish headers (#22542)
---
.../keymap_extras/keymap_spanish_latin_america.h | 105 ++++++++++++++++++
.../sendstring_spanish_latin_america.h | 120 +++++++++++++++++++++
2 files changed, 225 insertions(+)
create mode 100644 quantum/keymap_extras/keymap_spanish_latin_america.h
create mode 100644 quantum/keymap_extras/sendstring_spanish_latin_america.h
(limited to 'quantum/keymap_extras')
diff --git a/quantum/keymap_extras/keymap_spanish_latin_america.h b/quantum/keymap_extras/keymap_spanish_latin_america.h
new file mode 100644
index 0000000000..92921811b3
--- /dev/null
+++ b/quantum/keymap_extras/keymap_spanish_latin_america.h
@@ -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) // ^
+
diff --git a/quantum/keymap_extras/sendstring_spanish_latin_america.h b/quantum/keymap_extras/sendstring_spanish_latin_america.h
new file mode 100644
index 0000000000..3bfdf7d5cb
--- /dev/null
+++ b/quantum/keymap_extras/sendstring_spanish_latin_america.h
@@ -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 .
+ */
+
+// 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
+};
--
cgit v1.2.3
From b12b5485bce9be56c33fd154bb96b38e82b736ad Mon Sep 17 00:00:00 2001
From: QMK Bot
Date: Sun, 31 Dec 2023 21:25:20 -0500
Subject: Update copyright year on generated files (#22795)
---
quantum/keymap_extras/keymap_belgian.h | 2 +-
quantum/keymap_extras/keymap_bepo.h | 2 +-
quantum/keymap_extras/keymap_brazilian_abnt2.h | 2 +-
quantum/keymap_extras/keymap_canadian_multilingual.h | 2 +-
quantum/keymap_extras/keymap_colemak.h | 2 +-
quantum/keymap_extras/keymap_croatian.h | 2 +-
quantum/keymap_extras/keymap_czech.h | 2 +-
quantum/keymap_extras/keymap_danish.h | 2 +-
quantum/keymap_extras/keymap_dvorak.h | 2 +-
quantum/keymap_extras/keymap_dvorak_fr.h | 2 +-
quantum/keymap_extras/keymap_dvorak_programmer.h | 2 +-
quantum/keymap_extras/keymap_estonian.h | 2 +-
quantum/keymap_extras/keymap_finnish.h | 2 +-
quantum/keymap_extras/keymap_french.h | 2 +-
quantum/keymap_extras/keymap_french_afnor.h | 2 +-
quantum/keymap_extras/keymap_french_mac_iso.h | 2 +-
quantum/keymap_extras/keymap_german.h | 2 +-
quantum/keymap_extras/keymap_german_mac_iso.h | 2 +-
quantum/keymap_extras/keymap_greek.h | 2 +-
quantum/keymap_extras/keymap_hebrew.h | 2 +-
quantum/keymap_extras/keymap_hungarian.h | 2 +-
quantum/keymap_extras/keymap_icelandic.h | 2 +-
quantum/keymap_extras/keymap_irish.h | 2 +-
quantum/keymap_extras/keymap_italian.h | 2 +-
quantum/keymap_extras/keymap_italian_mac_ansi.h | 2 +-
quantum/keymap_extras/keymap_italian_mac_iso.h | 2 +-
quantum/keymap_extras/keymap_japanese.h | 2 +-
quantum/keymap_extras/keymap_korean.h | 2 +-
quantum/keymap_extras/keymap_latvian.h | 2 +-
quantum/keymap_extras/keymap_lithuanian_azerty.h | 2 +-
quantum/keymap_extras/keymap_lithuanian_qwerty.h | 2 +-
quantum/keymap_extras/keymap_neo2.h | 2 +-
quantum/keymap_extras/keymap_nordic.h | 2 +-
quantum/keymap_extras/keymap_norman.h | 2 +-
quantum/keymap_extras/keymap_norwegian.h | 2 +-
quantum/keymap_extras/keymap_plover.h | 2 +-
quantum/keymap_extras/keymap_plover_dvorak.h | 2 +-
quantum/keymap_extras/keymap_polish.h | 2 +-
quantum/keymap_extras/keymap_portuguese.h | 2 +-
quantum/keymap_extras/keymap_portuguese_mac_iso.h | 2 +-
quantum/keymap_extras/keymap_romanian.h | 2 +-
quantum/keymap_extras/keymap_russian.h | 2 +-
quantum/keymap_extras/keymap_russian_typewriter.h | 2 +-
quantum/keymap_extras/keymap_serbian.h | 2 +-
quantum/keymap_extras/keymap_serbian_latin.h | 2 +-
quantum/keymap_extras/keymap_slovak.h | 2 +-
quantum/keymap_extras/keymap_slovenian.h | 2 +-
quantum/keymap_extras/keymap_spanish.h | 2 +-
quantum/keymap_extras/keymap_spanish_dvorak.h | 2 +-
quantum/keymap_extras/keymap_spanish_latin_america.h | 2 +-
quantum/keymap_extras/keymap_swedish.h | 2 +-
quantum/keymap_extras/keymap_swedish_mac_ansi.h | 2 +-
quantum/keymap_extras/keymap_swedish_mac_iso.h | 2 +-
quantum/keymap_extras/keymap_swedish_pro_mac_ansi.h | 2 +-
quantum/keymap_extras/keymap_swedish_pro_mac_iso.h | 2 +-
quantum/keymap_extras/keymap_swiss_de.h | 2 +-
quantum/keymap_extras/keymap_swiss_fr.h | 2 +-
quantum/keymap_extras/keymap_turkish_f.h | 2 +-
quantum/keymap_extras/keymap_turkish_q.h | 2 +-
quantum/keymap_extras/keymap_uk.h | 2 +-
quantum/keymap_extras/keymap_ukrainian.h | 2 +-
quantum/keymap_extras/keymap_us.h | 2 +-
quantum/keymap_extras/keymap_us_extended.h | 2 +-
quantum/keymap_extras/keymap_us_international.h | 2 +-
quantum/keymap_extras/keymap_us_international_linux.h | 2 +-
quantum/keymap_extras/keymap_workman.h | 2 +-
quantum/keymap_extras/keymap_workman_zxcvm.h | 2 +-
67 files changed, 67 insertions(+), 67 deletions(-)
(limited to 'quantum/keymap_extras')
diff --git a/quantum/keymap_extras/keymap_belgian.h b/quantum/keymap_extras/keymap_belgian.h
index 6851c6b4e8..e553894b52 100644
--- a/quantum/keymap_extras/keymap_belgian.h
+++ b/quantum/keymap_extras/keymap_belgian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_bepo.h b/quantum/keymap_extras/keymap_bepo.h
index 448727dece..d1886efb10 100644
--- a/quantum/keymap_extras/keymap_bepo.h
+++ b/quantum/keymap_extras/keymap_bepo.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_brazilian_abnt2.h b/quantum/keymap_extras/keymap_brazilian_abnt2.h
index 8fac7666c2..7dfc2cbb3d 100644
--- a/quantum/keymap_extras/keymap_brazilian_abnt2.h
+++ b/quantum/keymap_extras/keymap_brazilian_abnt2.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_canadian_multilingual.h b/quantum/keymap_extras/keymap_canadian_multilingual.h
index 5b9b03babb..baeafa4077 100644
--- a/quantum/keymap_extras/keymap_canadian_multilingual.h
+++ b/quantum/keymap_extras/keymap_canadian_multilingual.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_colemak.h b/quantum/keymap_extras/keymap_colemak.h
index d63309f010..b1b2fdcf80 100644
--- a/quantum/keymap_extras/keymap_colemak.h
+++ b/quantum/keymap_extras/keymap_colemak.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_croatian.h b/quantum/keymap_extras/keymap_croatian.h
index 3e7c681ced..3ed6e29dfb 100644
--- a/quantum/keymap_extras/keymap_croatian.h
+++ b/quantum/keymap_extras/keymap_croatian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_czech.h b/quantum/keymap_extras/keymap_czech.h
index 351c51ad41..ab00f83820 100644
--- a/quantum/keymap_extras/keymap_czech.h
+++ b/quantum/keymap_extras/keymap_czech.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_danish.h b/quantum/keymap_extras/keymap_danish.h
index cea9444896..9e397af135 100644
--- a/quantum/keymap_extras/keymap_danish.h
+++ b/quantum/keymap_extras/keymap_danish.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_dvorak.h b/quantum/keymap_extras/keymap_dvorak.h
index 9205a72057..d83f311e2a 100644
--- a/quantum/keymap_extras/keymap_dvorak.h
+++ b/quantum/keymap_extras/keymap_dvorak.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_dvorak_fr.h b/quantum/keymap_extras/keymap_dvorak_fr.h
index b206767614..6c9ca139d6 100644
--- a/quantum/keymap_extras/keymap_dvorak_fr.h
+++ b/quantum/keymap_extras/keymap_dvorak_fr.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_dvorak_programmer.h b/quantum/keymap_extras/keymap_dvorak_programmer.h
index 19187ed13b..80f39f56d4 100644
--- a/quantum/keymap_extras/keymap_dvorak_programmer.h
+++ b/quantum/keymap_extras/keymap_dvorak_programmer.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_estonian.h b/quantum/keymap_extras/keymap_estonian.h
index ea9c56c12a..3b6bf66c5c 100644
--- a/quantum/keymap_extras/keymap_estonian.h
+++ b/quantum/keymap_extras/keymap_estonian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_finnish.h b/quantum/keymap_extras/keymap_finnish.h
index c0dc1af81e..4c0b78ff60 100644
--- a/quantum/keymap_extras/keymap_finnish.h
+++ b/quantum/keymap_extras/keymap_finnish.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_french.h b/quantum/keymap_extras/keymap_french.h
index 03dbb7bc40..db5a7ac2ff 100644
--- a/quantum/keymap_extras/keymap_french.h
+++ b/quantum/keymap_extras/keymap_french.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_french_afnor.h b/quantum/keymap_extras/keymap_french_afnor.h
index 869984c4d2..894ff4305b 100644
--- a/quantum/keymap_extras/keymap_french_afnor.h
+++ b/quantum/keymap_extras/keymap_french_afnor.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_french_mac_iso.h b/quantum/keymap_extras/keymap_french_mac_iso.h
index e5f7514a80..89b16478bc 100644
--- a/quantum/keymap_extras/keymap_french_mac_iso.h
+++ b/quantum/keymap_extras/keymap_french_mac_iso.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_german.h b/quantum/keymap_extras/keymap_german.h
index 38b0c685ba..074f0d321b 100644
--- a/quantum/keymap_extras/keymap_german.h
+++ b/quantum/keymap_extras/keymap_german.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_german_mac_iso.h b/quantum/keymap_extras/keymap_german_mac_iso.h
index efa9099f20..1a50fabf1a 100644
--- a/quantum/keymap_extras/keymap_german_mac_iso.h
+++ b/quantum/keymap_extras/keymap_german_mac_iso.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_greek.h b/quantum/keymap_extras/keymap_greek.h
index 01779cf2e8..e21022abbc 100644
--- a/quantum/keymap_extras/keymap_greek.h
+++ b/quantum/keymap_extras/keymap_greek.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_hebrew.h b/quantum/keymap_extras/keymap_hebrew.h
index 284562072d..b122eb09ea 100644
--- a/quantum/keymap_extras/keymap_hebrew.h
+++ b/quantum/keymap_extras/keymap_hebrew.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_hungarian.h b/quantum/keymap_extras/keymap_hungarian.h
index fbc31ed155..22ae74538c 100644
--- a/quantum/keymap_extras/keymap_hungarian.h
+++ b/quantum/keymap_extras/keymap_hungarian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_icelandic.h b/quantum/keymap_extras/keymap_icelandic.h
index 3bd71c19f2..c58e48b22d 100644
--- a/quantum/keymap_extras/keymap_icelandic.h
+++ b/quantum/keymap_extras/keymap_icelandic.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_irish.h b/quantum/keymap_extras/keymap_irish.h
index 6e161628c8..ba23cddc95 100644
--- a/quantum/keymap_extras/keymap_irish.h
+++ b/quantum/keymap_extras/keymap_irish.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_italian.h b/quantum/keymap_extras/keymap_italian.h
index 8092dc1301..0317cc5e78 100644
--- a/quantum/keymap_extras/keymap_italian.h
+++ b/quantum/keymap_extras/keymap_italian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_italian_mac_ansi.h b/quantum/keymap_extras/keymap_italian_mac_ansi.h
index ae1281be26..ebf2e1e709 100644
--- a/quantum/keymap_extras/keymap_italian_mac_ansi.h
+++ b/quantum/keymap_extras/keymap_italian_mac_ansi.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_italian_mac_iso.h b/quantum/keymap_extras/keymap_italian_mac_iso.h
index f3f01839c3..327777dd8a 100644
--- a/quantum/keymap_extras/keymap_italian_mac_iso.h
+++ b/quantum/keymap_extras/keymap_italian_mac_iso.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_japanese.h b/quantum/keymap_extras/keymap_japanese.h
index 947317833e..68a91be18b 100644
--- a/quantum/keymap_extras/keymap_japanese.h
+++ b/quantum/keymap_extras/keymap_japanese.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_korean.h b/quantum/keymap_extras/keymap_korean.h
index 440a6b3b4d..f759e136bd 100644
--- a/quantum/keymap_extras/keymap_korean.h
+++ b/quantum/keymap_extras/keymap_korean.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_latvian.h b/quantum/keymap_extras/keymap_latvian.h
index 2f26b1d8af..3444e744be 100644
--- a/quantum/keymap_extras/keymap_latvian.h
+++ b/quantum/keymap_extras/keymap_latvian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_lithuanian_azerty.h b/quantum/keymap_extras/keymap_lithuanian_azerty.h
index f6dd94f0ca..235989e67b 100644
--- a/quantum/keymap_extras/keymap_lithuanian_azerty.h
+++ b/quantum/keymap_extras/keymap_lithuanian_azerty.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_lithuanian_qwerty.h b/quantum/keymap_extras/keymap_lithuanian_qwerty.h
index 03c6b7a2af..58f4381420 100644
--- a/quantum/keymap_extras/keymap_lithuanian_qwerty.h
+++ b/quantum/keymap_extras/keymap_lithuanian_qwerty.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_neo2.h b/quantum/keymap_extras/keymap_neo2.h
index bc9445892f..dbeef8d544 100644
--- a/quantum/keymap_extras/keymap_neo2.h
+++ b/quantum/keymap_extras/keymap_neo2.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_nordic.h b/quantum/keymap_extras/keymap_nordic.h
index 6464966c71..bb66fcf12f 100644
--- a/quantum/keymap_extras/keymap_nordic.h
+++ b/quantum/keymap_extras/keymap_nordic.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_norman.h b/quantum/keymap_extras/keymap_norman.h
index 1a3a0bc53a..9938e53efe 100644
--- a/quantum/keymap_extras/keymap_norman.h
+++ b/quantum/keymap_extras/keymap_norman.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_norwegian.h b/quantum/keymap_extras/keymap_norwegian.h
index af16fec8d6..e50e1ab3bb 100644
--- a/quantum/keymap_extras/keymap_norwegian.h
+++ b/quantum/keymap_extras/keymap_norwegian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_plover.h b/quantum/keymap_extras/keymap_plover.h
index c0e3311e90..285eaa0741 100644
--- a/quantum/keymap_extras/keymap_plover.h
+++ b/quantum/keymap_extras/keymap_plover.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_plover_dvorak.h b/quantum/keymap_extras/keymap_plover_dvorak.h
index 7feb52a25c..8347b2b20c 100644
--- a/quantum/keymap_extras/keymap_plover_dvorak.h
+++ b/quantum/keymap_extras/keymap_plover_dvorak.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_polish.h b/quantum/keymap_extras/keymap_polish.h
index 40870ec237..422c58c1e3 100644
--- a/quantum/keymap_extras/keymap_polish.h
+++ b/quantum/keymap_extras/keymap_polish.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_portuguese.h b/quantum/keymap_extras/keymap_portuguese.h
index b4570ad922..6a896de529 100644
--- a/quantum/keymap_extras/keymap_portuguese.h
+++ b/quantum/keymap_extras/keymap_portuguese.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_portuguese_mac_iso.h b/quantum/keymap_extras/keymap_portuguese_mac_iso.h
index 57a27d04e9..1a11cfa5ab 100644
--- a/quantum/keymap_extras/keymap_portuguese_mac_iso.h
+++ b/quantum/keymap_extras/keymap_portuguese_mac_iso.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_romanian.h b/quantum/keymap_extras/keymap_romanian.h
index cf4c17125f..8f90988855 100644
--- a/quantum/keymap_extras/keymap_romanian.h
+++ b/quantum/keymap_extras/keymap_romanian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_russian.h b/quantum/keymap_extras/keymap_russian.h
index fd3a1604c8..440692345e 100644
--- a/quantum/keymap_extras/keymap_russian.h
+++ b/quantum/keymap_extras/keymap_russian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_russian_typewriter.h b/quantum/keymap_extras/keymap_russian_typewriter.h
index 59f341e38b..833311076f 100644
--- a/quantum/keymap_extras/keymap_russian_typewriter.h
+++ b/quantum/keymap_extras/keymap_russian_typewriter.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_serbian.h b/quantum/keymap_extras/keymap_serbian.h
index 732e2e939d..fa0e474df8 100644
--- a/quantum/keymap_extras/keymap_serbian.h
+++ b/quantum/keymap_extras/keymap_serbian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_serbian_latin.h b/quantum/keymap_extras/keymap_serbian_latin.h
index 5151696a10..a2038b6df8 100644
--- a/quantum/keymap_extras/keymap_serbian_latin.h
+++ b/quantum/keymap_extras/keymap_serbian_latin.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_slovak.h b/quantum/keymap_extras/keymap_slovak.h
index 81a88fa25c..08666ef060 100644
--- a/quantum/keymap_extras/keymap_slovak.h
+++ b/quantum/keymap_extras/keymap_slovak.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_slovenian.h b/quantum/keymap_extras/keymap_slovenian.h
index 1e17342c27..31a8c5f9a5 100644
--- a/quantum/keymap_extras/keymap_slovenian.h
+++ b/quantum/keymap_extras/keymap_slovenian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_spanish.h b/quantum/keymap_extras/keymap_spanish.h
index bcdd5af0c2..f87eb6b027 100644
--- a/quantum/keymap_extras/keymap_spanish.h
+++ b/quantum/keymap_extras/keymap_spanish.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_spanish_dvorak.h b/quantum/keymap_extras/keymap_spanish_dvorak.h
index fb033df770..782f23a5be 100644
--- a/quantum/keymap_extras/keymap_spanish_dvorak.h
+++ b/quantum/keymap_extras/keymap_spanish_dvorak.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_spanish_latin_america.h b/quantum/keymap_extras/keymap_spanish_latin_america.h
index 92921811b3..0ade828793 100644
--- a/quantum/keymap_extras/keymap_spanish_latin_america.h
+++ b/quantum/keymap_extras/keymap_spanish_latin_america.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_swedish.h b/quantum/keymap_extras/keymap_swedish.h
index acb49f7773..a9d015b22e 100644
--- a/quantum/keymap_extras/keymap_swedish.h
+++ b/quantum/keymap_extras/keymap_swedish.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_swedish_mac_ansi.h b/quantum/keymap_extras/keymap_swedish_mac_ansi.h
index ef48a9e493..36a31220a1 100644
--- a/quantum/keymap_extras/keymap_swedish_mac_ansi.h
+++ b/quantum/keymap_extras/keymap_swedish_mac_ansi.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_swedish_mac_iso.h b/quantum/keymap_extras/keymap_swedish_mac_iso.h
index 2eaef5e60c..7f085dc16b 100644
--- a/quantum/keymap_extras/keymap_swedish_mac_iso.h
+++ b/quantum/keymap_extras/keymap_swedish_mac_iso.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_swedish_pro_mac_ansi.h b/quantum/keymap_extras/keymap_swedish_pro_mac_ansi.h
index d33a259023..20781b2e53 100644
--- a/quantum/keymap_extras/keymap_swedish_pro_mac_ansi.h
+++ b/quantum/keymap_extras/keymap_swedish_pro_mac_ansi.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_swedish_pro_mac_iso.h b/quantum/keymap_extras/keymap_swedish_pro_mac_iso.h
index 680bd1db9e..dbbc24ed02 100644
--- a/quantum/keymap_extras/keymap_swedish_pro_mac_iso.h
+++ b/quantum/keymap_extras/keymap_swedish_pro_mac_iso.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_swiss_de.h b/quantum/keymap_extras/keymap_swiss_de.h
index c22191dd4e..2cedf23788 100644
--- a/quantum/keymap_extras/keymap_swiss_de.h
+++ b/quantum/keymap_extras/keymap_swiss_de.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_swiss_fr.h b/quantum/keymap_extras/keymap_swiss_fr.h
index e0e8e52c9c..347815504b 100644
--- a/quantum/keymap_extras/keymap_swiss_fr.h
+++ b/quantum/keymap_extras/keymap_swiss_fr.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_turkish_f.h b/quantum/keymap_extras/keymap_turkish_f.h
index 4fdcf3f746..d9d08adae5 100644
--- a/quantum/keymap_extras/keymap_turkish_f.h
+++ b/quantum/keymap_extras/keymap_turkish_f.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_turkish_q.h b/quantum/keymap_extras/keymap_turkish_q.h
index 5a9362acb4..781c406347 100644
--- a/quantum/keymap_extras/keymap_turkish_q.h
+++ b/quantum/keymap_extras/keymap_turkish_q.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_uk.h b/quantum/keymap_extras/keymap_uk.h
index 71e5f38f55..49237768d4 100644
--- a/quantum/keymap_extras/keymap_uk.h
+++ b/quantum/keymap_extras/keymap_uk.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_ukrainian.h b/quantum/keymap_extras/keymap_ukrainian.h
index 3f3ec4cec2..760cc265ea 100644
--- a/quantum/keymap_extras/keymap_ukrainian.h
+++ b/quantum/keymap_extras/keymap_ukrainian.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_us.h b/quantum/keymap_extras/keymap_us.h
index 6101c8d8ba..9d1c7ad628 100644
--- a/quantum/keymap_extras/keymap_us.h
+++ b/quantum/keymap_extras/keymap_us.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_us_extended.h b/quantum/keymap_extras/keymap_us_extended.h
index 90da98c756..c8e56cc5a8 100644
--- a/quantum/keymap_extras/keymap_us_extended.h
+++ b/quantum/keymap_extras/keymap_us_extended.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_us_international.h b/quantum/keymap_extras/keymap_us_international.h
index bd5f21ec8c..1b211bd4a6 100644
--- a/quantum/keymap_extras/keymap_us_international.h
+++ b/quantum/keymap_extras/keymap_us_international.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_us_international_linux.h b/quantum/keymap_extras/keymap_us_international_linux.h
index 4551cbe29f..778ab4c899 100644
--- a/quantum/keymap_extras/keymap_us_international_linux.h
+++ b/quantum/keymap_extras/keymap_us_international_linux.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_workman.h b/quantum/keymap_extras/keymap_workman.h
index 808caec054..31bd953d7f 100644
--- a/quantum/keymap_extras/keymap_workman.h
+++ b/quantum/keymap_extras/keymap_workman.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
diff --git a/quantum/keymap_extras/keymap_workman_zxcvm.h b/quantum/keymap_extras/keymap_workman_zxcvm.h
index f8645ac4cf..f05c89adb8 100644
--- a/quantum/keymap_extras/keymap_workman_zxcvm.h
+++ b/quantum/keymap_extras/keymap_workman_zxcvm.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
--
cgit v1.2.3
From e67d2c2f6fd3a50ac109eabbe93985f4e055963a Mon Sep 17 00:00:00 2001
From: Nebuleon <2391500+Nebuleon@users.noreply.github.com>
Date: Tue, 9 Jan 2024 06:11:59 -0500
Subject: Add Canadian French input locale (#21456)
Co-authored-by: Ryan
---
quantum/keymap_extras/keymap_canadian_french.h | 122 +++++++++++++++++++++
quantum/keymap_extras/sendstring_canadian_french.h | 120 ++++++++++++++++++++
2 files changed, 242 insertions(+)
create mode 100644 quantum/keymap_extras/keymap_canadian_french.h
create mode 100644 quantum/keymap_extras/sendstring_canadian_french.h
(limited to 'quantum/keymap_extras')
diff --git a/quantum/keymap_extras/keymap_canadian_french.h b/quantum/keymap_extras/keymap_canadian_french.h
new file mode 100644
index 0000000000..a61d48d3ed
--- /dev/null
+++ b/quantum/keymap_extras/keymap_canadian_french.h
@@ -0,0 +1,122 @@
+// 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 FR_HASH KC_GRV // #
+#define FR_1 KC_1 // 1
+#define FR_2 KC_2 // 2
+#define FR_3 KC_3 // 3
+#define FR_4 KC_4 // 4
+#define FR_5 KC_5 // 5
+#define FR_6 KC_6 // 6
+#define FR_7 KC_7 // 7
+#define FR_8 KC_8 // 8
+#define FR_9 KC_9 // 9
+#define FR_0 KC_0 // 0
+#define FR_MINS KC_MINS // -
+#define FR_EQL KC_EQL // =
+#define FR_Q KC_Q // Q
+#define FR_W KC_W // W
+#define FR_E KC_E // E
+#define FR_R KC_R // R
+#define FR_T KC_T // T
+#define FR_Y KC_Y // Y
+#define FR_U KC_U // U
+#define FR_I KC_I // I
+#define FR_O KC_O // O
+#define FR_P KC_P // P
+#define FR_DCIR KC_LBRC // ^ (dead)
+#define FR_CEDL KC_RBRC // ¸ (dead)
+#define FR_A KC_A // A
+#define FR_S KC_S // S
+#define FR_D KC_D // D
+#define FR_F KC_F // F
+#define FR_G KC_G // G
+#define FR_H KC_H // H
+#define FR_J KC_J // J
+#define FR_K KC_K // K
+#define FR_L KC_L // L
+#define FR_SCLN KC_SCLN // ;
+#define FR_DGRV KC_QUOT // ` (dead)
+#define FR_LABK KC_NUHS // <
+#define FR_LDAQ KC_NUBS // «
+#define FR_Z KC_Z // Z
+#define FR_X KC_X // X
+#define FR_C KC_C // C
+#define FR_V KC_V // V
+#define FR_B KC_B // B
+#define FR_N KC_N // N
+#define FR_M KC_M // M
+#define FR_COMM KC_COMM // ,
+#define FR_DOT KC_DOT // .
+#define FR_EACU KC_SLSH // É
+#define FR_PIPE S(FR_HASH) // |
+#define FR_EXLM S(FR_1) // !
+#define FR_DQUO S(FR_2) // "
+#define FR_SLSH S(FR_3) // /
+#define FR_DLR S(FR_4) // $
+#define FR_PERC S(FR_5) // %
+#define FR_QUES S(FR_6) // ?
+#define FR_AMPR S(FR_7) // &
+#define FR_ASTR S(FR_8) // *
+#define FR_LPRN S(FR_9) // (
+#define FR_RPRN S(FR_0) // )
+#define FR_UNDS S(FR_MINS) // _
+#define FR_PLUS S(FR_EQL) // +
+#define FR_DIAE S(FR_CEDL) // ¨ (dead)
+#define FR_COLN S(FR_SCLN) // :
+#define FR_RABK S(FR_LABK) // >
+#define FR_RDAQ S(FR_LDAQ) // »
+#define FR_QUOT S(FR_COMM) // '
+#define FR_BSLS ALGR(FR_HASH) // (backslash)
+#define FR_PLMN ALGR(FR_1) // ±
+#define FR_AT ALGR(FR_2) // @
+#define FR_PND ALGR(FR_3) // £
+#define FR_CENT ALGR(FR_4) // ¢
+#define FR_CURR ALGR(FR_5) // ¤
+#define FR_NOT ALGR(FR_6) // ¬
+#define FR_BRKP ALGR(FR_7) // ¦
+#define FR_SUP2 ALGR(FR_8) // ²
+#define FR_SUP3 ALGR(FR_9) // ³
+#define FR_QRTR ALGR(FR_0) // ¼
+#define FR_HALF ALGR(FR_MINS) // ½
+#define FR_TQTR ALGR(FR_EQL) // ¾
+#define FR_SECT ALGR(FR_O) // §
+#define FR_PARA ALGR(FR_P) // ¶
+#define FR_LBRC ALGR(FR_DCIR) // [
+#define FR_RBRC ALGR(FR_CEDL) // ]
+#define FR_TILD ALGR(FR_SCLN) // ~
+#define FR_LCBR ALGR(FR_DGRV) // {
+#define FR_RCBR ALGR(FR_LABK) // }
+#define FR_DEG ALGR(FR_LDAQ) // °
+#define FR_MICR ALGR(FR_M) // µ
+#define FR_MACR ALGR(FR_COMM) // ¯
+#define FR_SHYP ALGR(FR_DOT) // (soft hyphen)
+#define FR_ACUT ALGR(FR_EACU) // ´ (dead)
+
diff --git a/quantum/keymap_extras/sendstring_canadian_french.h b/quantum/keymap_extras/sendstring_canadian_french.h
new file mode 100644
index 0000000000..2abba3a9d3
--- /dev/null
+++ b/quantum/keymap_extras/sendstring_canadian_french.h
@@ -0,0 +1,120 @@
+/* Copyright 2023 Nebuleon
+ *
+ * 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 .
+ */
+
+// Sendstring lookup tables for Canadian French layouts
+
+#pragma once
+
+#include "keymap_canadian_french.h"
+#include "send_string.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, 1),
+ KCLUT_ENTRY(1, 1, 1, 1, 0, 0, 0, 1),
+ KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0),
+ KCLUT_ENTRY(0, 0, 1, 0, 0, 0, 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, 0, 0, 0, 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, 1, 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, 1, 1, 1, 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, 1, 0, 1, 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, FR_1, FR_2, FR_HASH, FR_4, FR_5, FR_7, FR_COMM,
+ // ( ) * + , - . /
+ FR_9, FR_0, FR_8, FR_EQL, FR_COMM, FR_MINS, FR_DOT, FR_3,
+ // 0 1 2 3 4 5 6 7
+ FR_0, FR_1, FR_2, FR_3, FR_4, FR_5, FR_6, FR_7,
+ // 8 9 : ; < = > ?
+ FR_8, FR_9, FR_SCLN, FR_SCLN, FR_LABK, FR_EQL, FR_LABK, FR_6,
+ // @ A B C D E F G
+ FR_2, FR_A, FR_B, FR_C, FR_D, FR_E, FR_F, FR_G,
+ // H I J K L M N O
+ FR_H, FR_I, FR_J, FR_K, FR_L, FR_M, FR_N, FR_O,
+ // P Q R S T U V W
+ FR_P, FR_Q, FR_R, FR_S, FR_T, FR_U, FR_V, FR_W,
+ // X Y Z [ \ ] ^ _
+ FR_X, FR_Y, FR_Z, FR_DCIR, FR_HASH, FR_CEDL, FR_DCIR, FR_MINS,
+ // ` a b c d e f g
+ FR_DGRV, FR_A, FR_B, FR_C, FR_D, FR_E, FR_F, FR_G,
+ // h i j k l m n o
+ FR_H, FR_I, FR_J, FR_K, FR_L, FR_M, FR_N, FR_O,
+ // p q r s t u v w
+ FR_P, FR_Q, FR_R, FR_S, FR_T, FR_U, FR_V, FR_W,
+ // x y z { | } ~ DEL
+ FR_X, FR_Y, FR_Z, FR_DGRV, FR_HASH, FR_LABK, FR_SCLN, KC_DEL
+};
--
cgit v1.2.3
From 6cdc00d0464cdde528673bdadcff4be89fab0bb4 Mon Sep 17 00:00:00 2001
From: QMK Bot
Date: Tue, 9 Jan 2024 06:18:34 -0500
Subject: [CI] Regenerate Files (#22872)
---
quantum/keymap_extras/keymap_canadian_french.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'quantum/keymap_extras')
diff --git a/quantum/keymap_extras/keymap_canadian_french.h b/quantum/keymap_extras/keymap_canadian_french.h
index a61d48d3ed..63c9166a31 100644
--- a/quantum/keymap_extras/keymap_canadian_french.h
+++ b/quantum/keymap_extras/keymap_canadian_french.h
@@ -1,4 +1,4 @@
-// Copyright 2023 QMK
+// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
/*******************************************************************************
--
cgit v1.2.3