diff --git a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/capslist.c b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/capslist.c
index 1bf20811..f956fb31 100644
--- a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/capslist.c
+++ b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/capslist.c
@@ -1,7 +1,6 @@
 #include "capslist.h"
 
 static bool caps_list_active = false;
-//static bool last_word = false;
 static unsigned short int capslist_countdown = 0;
 static unsigned short int countdown_end = 5;
 
@@ -11,7 +10,6 @@ void enable_caps_list(void) {
     if (is_caps_lock_on()) { tap_code(KC_CAPS); }
     caps_word_on();
     caps_list_active = true;
-    //last_word = false;
     capslist_countdown = 0;
     countdown_end = 5;
 }
@@ -34,7 +32,6 @@ bool process_caps_list(uint16_t keycode, keyrecord_t *record) {
     if (keycode == CAPSLIST) {
         if (record->event.pressed) {
           toggle_caps_list();
-          //enable_caps_list();
         }
         return false;
     }
@@ -55,12 +52,11 @@ bool process_caps_list(uint16_t keycode, keyrecord_t *record) {
         case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:
           // Earlier return if this has not been considered tapped yet
           if (record->tap.count == 0) { return true; }
-          keycode = keycode & 0xFF;    // Get tapping keycode.
+          keycode = tap_hold_extractor(keycode);    // Get tapping keycode.
           break;
     }
     
     if (should_continue_caps_list(keycode)) {
-        //if (is_caps_lock_on()) { return true; }
         if (caps_word_reactivation()) {
             caps_word_on();  // Reactivate Caps Word for a new word
             capslist_countdown = 0;
@@ -71,7 +67,7 @@ bool process_caps_list(uint16_t keycode, keyrecord_t *record) {
     return true;
 }
 
-//bool caps_list_press_user(uint16_t keycode) {
+
 bool should_continue_caps_list(uint16_t keycode) {
     if (keycode == KC_BSPC) {
         capslist_countdown--;
@@ -97,6 +93,7 @@ bool should_continue_caps_list(uint16_t keycode) {
     return false;  // Deactivate Caps List.
 }
 
+
 bool caps_word_reactivation(void) {
 
     // Words that continue Caps List.
diff --git a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/numword - Copie.c b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/numword - Copie.c
new file mode 100644
index 00000000..88ec8f38
--- /dev/null
+++ b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/numword - Copie.c	
@@ -0,0 +1,122 @@
+/* Copyright 2025 @Kawamashi
+ *
+ * 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 .
+ */
+
+#include "numword.h"
+
+//static uint16_t num_word_timer = 0;
+//static bool is_num_word_on = false;
+bool is_num_word_on = false;
+static bool exit_num_word = false;
+
+bool is_num_word_enabled(void) {
+    return is_num_word_on;
+}
+
+void enable_num_word(void) {
+    //if (is_num_word_on) return;
+    is_num_word_on = true;
+    layer_on(_NUMBERS);
+}
+
+void disable_num_word(void) {
+    //if (!is_num_word_on) return;
+    is_num_word_on = false;
+    layer_off(_NUMBERS);
+    exit_num_word = false;
+}
+
+void toggle_num_word(void) {
+    if (is_num_word_on) {
+        disable_num_word();
+    } else {
+        enable_num_word();
+    }
+}
+
+bool should_exit_num_word(uint16_t keycode, const keyrecord_t *record) {
+
+    switch (keycode) {
+        // Keycodes which should not disable num word mode.
+
+        // Numpad keycodes
+         case KC_1 ... KC_0:
+         case KC_PDOT:
+         //case PG_X:
+         //case PG_EACU:
+         case PG_MOIN:
+         case PG_ASTX: 
+         case PG_PLUS:
+         case PG_SLSH:
+         case PG_EXP:
+         case PG_IND:
+         case PG_H:
+         case PG_2PTS:
+         case LT_EURO:
+         case NNB_SPC:
+
+        // Misc
+        case KC_BSPC:
+        case PG_ODK:   // Not to exit Numword when chording it with ODK
+        case NUMWORD:   // For the combo NUMWORD to work
+
+/*         
+        case PG_EGAL:
+        case PG_BSLS:*/
+            return false;
+    }
+
+    return true;
+}
+
+
+bool process_numword(uint16_t keycode, const keyrecord_t *record) {
+    // Handle the custom keycodes that go with this feature
+    if (keycode == NUMWORD) {
+        if (record->event.pressed) { toggle_num_word(); }
+        return false;
+    }
+
+    // Other than the custom keycodes, nothing else in this feature will activate
+    // if the behavior is not on, so allow QMK to handle the event as usual.
+    if (!is_num_word_on) { return true; }
+    // Nothing else acts on key release, either
+    if (!record->event.pressed) { return true; }
+
+    // Get the base keycode of a mod or layer tap key
+    switch (keycode) {
+        case QK_MOD_TAP ... QK_MOD_TAP_MAX:
+        case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:
+            // Earlier return if this has not been considered tapped yet
+            if (record->tap.count == 0) { return true; }
+            keycode = keycode & 0xFF;
+            break;
+/*         case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:  // `LT(layer, key)` keys.
+            // Release event on a held layer-tap key when numword is on.
+            if (record->tap.count == 0 && !record->event.pressed) {     
+                return false;  // Skip default handling so that layer stays on.
+            } else {
+                keycode = keycode & 0xFF;    // Get tapping keycode.
+            }
+            break; */
+    }
+
+    exit_num_word = should_exit_num_word(keycode, record);
+    return true;
+}
+
+void numword_exit_check(void) {
+    if (exit_num_word) { disable_num_word(); }
+}
diff --git a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/numword.c b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/numword.c
index 42a9a331..b8362687 100644
--- a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/numword.c
+++ b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features/numword.c
@@ -64,7 +64,8 @@ bool should_exit_num_word(uint16_t keycode, const keyrecord_t *record) {
          case PG_IND:
          case PG_H:
          case PG_2PTS:
-         case LT_EURO:
+         case PG_EURO:
+         //case LT_NBSPC:
          case NNB_SPC:
 
         // Misc
@@ -85,36 +86,38 @@ bool should_exit_num_word(uint16_t keycode, const keyrecord_t *record) {
 bool process_numword(uint16_t keycode, const keyrecord_t *record) {
     // Handle the custom keycodes that go with this feature
     if (keycode == NUMWORD) {
-        if (record->event.pressed) {
-            toggle_num_word();
-            return false;
-        }
+        if (record->event.pressed) { toggle_num_word(); }
+        return false;
     }
 
     // Other than the custom keycodes, nothing else in this feature will activate
     // if the behavior is not on, so allow QMK to handle the event as usual.
     if (!is_num_word_on) { return true; }
+    // Nothing else acts on key release, either
+    if (record->event.pressed) {
 
-    // Get the base keycode of a mod or layer tap key
-    switch (keycode) {
-        case QK_MOD_TAP ... QK_MOD_TAP_MAX:
-            // Earlier return if this has not been considered tapped yet
-            if (record->tap.count == 0) { return true; }
-            keycode = keycode & 0xFF;
-            break;
-        case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:  // `LT(layer, key)` keys.
-            // Release event on a held layer-tap key when numword is on.
-            if (record->tap.count == 0 && !record->event.pressed && is_num_word_on) {     
-                return false;  // Skip default handling so that layer stays on.
-            } else {
-                keycode = keycode & 0xFF;    // Get tapping keycode.
-            }
-            break;
-/*         default:
-            break; */
+        // Get the base keycode of a mod or layer tap key
+        switch (keycode) {
+            case QK_MOD_TAP ... QK_MOD_TAP_MAX:
+            case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:
+                // Earlier return if this has not been considered tapped yet
+                if (record->tap.count == 0) { return true; }
+                keycode = tap_hold_extractor(keycode);
+                break;
+    /*         case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:  // `LT(layer, key)` keys.
+                // Release event on a held layer-tap key when numword is on.
+                if (record->tap.count == 0 && !record->event.pressed) {     
+                    return false;  // Skip default handling so that layer stays on.
+                } else {
+                    keycode = keycode & 0xFF;    // Get tapping keycode.
+                }
+                break; */
+        }
+
+        exit_num_word = should_exit_num_word(keycode, record);
+    } else {
+        if (exit_num_word) { disable_num_word(); }
     }
-
-    exit_num_word = should_exit_num_word(keycode, record);
     return true;
 }
 
diff --git a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features_conf.c b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features_conf.c
index 31eeb2a0..d7dfa3c1 100644
--- a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features_conf.c
+++ b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/features_conf.c
@@ -69,6 +69,8 @@ bool is_followed_by_apos(uint16_t keycode, uint16_t prev_keycode) {
 // even if the tap/hold key is a custom one, with non-basic tap keycode.
 uint16_t tap_hold_extractor(uint16_t keycode) {
   switch (keycode) {
+    case LT_NBSPC:
+      return NNB_SPC;
     default:
       return keycode &= 0xff;
   }
@@ -80,21 +82,21 @@ bool process_custom_tap_hold(uint16_t keycode, keyrecord_t *record) {
     switch (keycode) {
 
         case RCTL_T(FEN_B):
-            return process_tap_hold(LWIN(KC_DOWN), record);
+          return process_tap_hold(LWIN(KC_DOWN), record);
 
         case SFT_T(COPY):
-            return process_tap_hold(C(PG_C), record);
+          return process_tap_hold(C(PG_C), record);
 
-/*         case LT_NUMWORD:
-            return process_numword(NUMWORD, record); */
+        case LT_NBSPC:
+          return process_tap_hold(NNB_SPC, record);
 
         case LT_REPT:
-            repeat_key_invoke(&record->event);
-            return false;
+          repeat_key_invoke(&record->event);
+          return false;
 
         case LT_MGC:
-            alt_repeat_key_invoke(&record->event);
-            return false;
+          alt_repeat_key_invoke(&record->event);
+          return false;
     }
   }
   return true; // Process all other keycodes normally
diff --git a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap - Copie.c b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap - Copie.c
deleted file mode 100644
index 16d5efc3..00000000
--- a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap - Copie.c	
+++ /dev/null
@@ -1,326 +0,0 @@
-/* Copyright 2019 Thomas Baart 
- *
- * 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 .
- */
-#include QMK_KEYBOARD_H
-#include "keymap.h"
-#include "features/layer_lock.h"
-
-
-bool is_caps_lock_on(void) { return host_keyboard_led_state().caps_lock; }
-
-bool is_letter(uint16_t keycode) {
-  switch (keycode) {
-    case KC_A ... KC_L:
-    case PG_M:
-    case KC_N ... KC_Z:
-    case PG_AGRV:
-    case PG_U:
-    case PG_EGRV:
-    case PG_CCED:
-      return true;
-
-    default:
-      return false;
-  }
-}
-
-// Achordion
-
-uint16_t achordion_timeout(uint16_t tap_hold_keycode) { return 500; }
-
-bool achordion_eager_mod(uint8_t mod) {
-  switch (mod) {
-    case MOD_LSFT:
-    case MOD_RSFT:
-    case MOD_LCTL:
-    case MOD_RCTL:
-      return true;  // Eagerly apply Shift and Ctrl mods.
-
-    default:
-      return false;
-  }
-}
-
-
-// Caps Word
-
-bool caps_word_press_user(uint16_t keycode) {
-  // Keycodes that continue Caps Word, with shift applied.
-  if (is_letter(keycode)) {
-    add_weak_mods(MOD_BIT(KC_LSFT));  // Apply shift to next key.
-    return true;
-  } else {
-    switch (keycode) {
-        // Keycodes that continue Caps Word, without shifting.
-        case PG_MOIN:
-        case KC_KP_1 ... KC_KP_0:
-        case KC_LEFT:
-        case KC_RIGHT:
-        case KC_BSPC:
-        case KC_DEL:
-        case PG_APOS:
-            return true;
-
-        default:
-            return false;  // Deactivate Caps Word.
-    }
-  }
-}
-
-// Combo
-combo_t key_combos[] = {};
-uint16_t COMBO_LEN = 0;
-
-
-// Custom altGr keys
-
-const custom_altgr_key_t custom_altgr_keys[] = {
-  {PG_AGRV, PG_AE},
-  {PG_B, PG_TS},
-  {PG_A, PG_CDAQ},
-  {PG_I, PG_RDAQ},
-  {PG_N, PG_ESPR},
-  {PG_T, PG_AROB},
-  {ALGR_T(PG_A), PG_CDAQ},
-  {LCTL_T(PG_I), PG_RDAQ},
-  {RCTL_T(PG_N), PG_ESPR},
-  {ALGR_T(PG_T), PG_AROB},
-  {PG_POIN, PG_NM},
-  {KC_KP_8, PG_INFN},
-  {PG_F, PG_HASH},
-  {PG_G, PG_HEG},
-  {PG_CCED, PG_DEDL},
-  {PG_Q, PG_TECT},
-  {PG_X, PG_PVIR},
-  {PG_D, PG_DOPY},
-};
-
-uint8_t NUM_CUSTOM_ALTGR_KEYS =
-    sizeof(custom_altgr_keys) / sizeof(custom_altgr_key_t);
-
-
-void matrix_scan_user(void) {
-  //achordion_task();
-  recent_keys_task();
-  swapper_task();
-}
-
-// Tap-hold configuration
-
-// Handle keyrecord before quantum processing
-static uint16_t next_keycode;
-static keyrecord_t next_record;
-
-bool pre_process_record_user(uint16_t keycode, keyrecord_t *record) {
-    static uint16_t prev_keycode;
-    static bool tap_condition;
-
-    if (record->event.pressed) {
-        // Store the previous keycode for instant tap decision
-        prev_keycode = next_keycode;
-        // Cache the next input for mod-tap decisions
-        next_keycode = keycode;
-        next_record  = *record;
-    }
-
-    // Match mod-tap keys. Tweak this to limit conditions that matches your keyboard and habits.
-    tap_condition = ((IS_LAYER_ON(_BASE)) && IS_QK_MOD_TAP(keycode) && !IS_QK_LAYER_TAP(prev_keycode) && !is_mod_tap_control(prev_keycode));
-    return process_instant_tap(keycode, record, prev_keycode, tap_condition);
-}
-
-bool forbidden_chord(uint16_t tap_hold_keycode, keyrecord_t* tap_hold_record, uint16_t other_keycode, keyrecord_t* other_record) {
-  switch (tap_hold_keycode) {
-    case LT_VIRG:
-    case OSM(MOD_LSFT):
-    case OSM(MOD_RSFT):
-      return false;   
-
-    default:
-      // Otherwise, follow the opposite hands rule.
-      return same_side_combination(tap_hold_record, other_record);
-  }
-}
-
-bool first_of_chorded_mods(uint16_t keycode) {
-  switch (keycode) {
-    case LT_TAB:    // Pour pouvoir faire OSM shift + LT_TAB (win + shift + flèche).
-    case PG_CCED:   // Pour pouvoir faire Alt + F4, Alt + F11.
-    case LCTL_T(PG_I):
-    case RCTL_T(PG_N):
-    case OSM(MOD_LSFT):   // Pour pouvoir faire OSM shift + LT_TAB (win + shift + flèche).
-      return true;
-
-    default:
-      return false;
-  }
-}
-
-bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
-
-    if (record->event.key.col != next_record.event.key.col) {
-      // Sinon on a des effets de bord quand on veut taper des chiffres. 
-      if (IS_LAYER_ON(_BASE)) {
-        // When a mod-tap key overlaps with another non-Ctrl key on the same hand, send its base keycode
-        if (forbidden_chord(keycode, record, next_keycode, &next_record) && !first_of_chorded_mods(keycode)) {
-          tap_converter(keycode, record);
-        }
-      }
-    }
-    return false;
-}
-
-bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) {
-
-    if (forbidden_chord(keycode, record, next_keycode, &next_record)) {
-      tap_converter(keycode, record);
-      return false;
-    }
-    return true;
-}
-
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
-
-  // Achordion
-  //if (!process_achordion(keycode, record)) { return false; }
-  
-  // Custom alt gr
-  if (!process_custom_altgr_keys(keycode, record)) { return false; }
-
-    // Recent keys
-  if (!process_clever_keys(keycode, record)) { return false; }
-
-    // Numword
-  if (!process_numword(keycode, record)) { return false; }
-
-    // Layer lock
-  if (!process_layer_lock(keycode, record, LAYER_LCK)) { return false; }
-
-  // Select word
-  if (!process_select_word(keycode, record, SELWORD)) { return false; }
-
-    // Macros
-  if (!process_macros(keycode, record)) { return false; }
-
-  return true; // Process all other keycodes normally
-}
-
-
-const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/*
- * Base Layer: ALPHAS
- *»\
- * ,-------------------------------------------.                              ,-------------------------------------------.
- * | Helpsc |   À  |   B  |   É  |   .  |   -  |                              |   ^  |   V  |   L  |   M  |   X  |    W   |
- * |--------+------+------+------+------+------|                              |------+------+------+------+------+--------|0
- * |  Enter |   O  |   U  |A/AltG|I/Ctrl|   J  |                              |   G  |   T  |   S  |   N  |   R  |    F   |
- * |--------+------+------+------+------+------+-------------.  ,-------------+------+------+------+------+------+--------|
- * |  Tab   |   Q  |   Y  |   È  |P/Win |  ""  | Bksp | End  |  | Home |Delete|   K  |   D  |   Z  |   H  |   C  | Ç/Alt  |
- * `----------------------+------+------+------+------+------|  |------+------+------+------+------+----------------------'
- *                        |NavNum| Space|Shift |   E  | ,    |  |  '   | Space|Shift| Win  | Mute |
- *                        |      |      |      |NavNum|Symb. |  |Funct.|NavNum|     |      |      |
- *                        `----------------------------------'  `----------------------------------'
- */
-    [_BASE] = LAYOUT(
-      KC_ESC, PG_AGRV,     PG_B,        PG_U,      PG_X,       PG_MOIN,                                                               PG_ACIR,       PG_G,         PG_C,         PG_M,        PG_POIN,         PG_W,
-      KC_ENT, ALT_T(PG_O), SFT_T(PG_L), ALGR_T(PG_A), LCTL_T(PG_I),  PG_J,                                                                  PG_VIRG,          RCTL_T(PG_N), ALGR_T(PG_T), RSFT_T(PG_S), ALT_T(PG_R), PG_V,
-      LT_TAB, PG_Q,        PG_Y,        PG_EGRV,      LWIN_T(PG_P),  PG_HQUO,       KC_BSPC,          KC_END,  KC_HOME, KC_DEL,             PG_K,          RWIN_T(PG_H), PG_Z,         PG_F,        PG_D,         PG_CCED,
-                                        TG(_SYMBOLS),  KC_SPC,        OSM(MOD_LSFT), LT(_SYMBOLS,PG_E), LT_VIRG, LT_APOS, LT(_SYMBOLS,KC_SPC), OSM(MOD_RSFT), KC_RGUI,      KC_MUTE
-    ),
-
-	  
-/*
- * Layer 1 : Numpad + symbols
- *
- * ,-------------------------------------------.                              ,-------------------------------------------.
- * | Helpsc |  !   |  ?   |  &   |  ;   |  |   |                              |   ⁻  |  7   |  8   |  9   |  *   |NumLock |
- * |--------+------+------+------+------+------|                              |------+------+------+------+------+--------|
- * |        |  {   |  }   |  (   |  )   | LOCK |                              |   =  |  4   |  5   |  6   |  /   |   \    |
- * |--------+------+------+------+------+------+-------------.  ,-------------+------+------+------+------+------+--------|
- * |        |  [   |  ]   |  <   |  >   |Indice|      |      |  |      |      |Expos.|  1   |  2   |  3   |  +   |   %    |
- * `----------------------+------+------+------+------+------|  |------+------+------+------+------+----------------------'
- *                        |      |      |      |      |      |  |      |   0  |   .  |      |      |
- *                        |      |      |      |      |      |  |   ,  |      |      |      |      |
- *                        `----------------------------------'  `----------------------------------'
- */
-    [_SYMBOLS] = LAYOUT(
-      KC_ESC,  PG_EXCL, PG_QUES,        PG_ESPR,         PG_PVIR, PG_PIPE,                                       PG_MOIN, KC_P7,         KC_P8,         KC_P9, PG_ASTX, KC_NUM,
-      _______, PG_CACL, SFT_T(PG_RACL), ALGR_T(PG_LPRN), PG_RPRN, LAYER_LCK,                                     PG_EGAL, RCTL_T(KC_P4), ALGR_T(KC_P5), KC_P6, PG_TLSH, PG_BSLS,
-      _______, PG_CBKT, PG_RBKT,        PG_INF,          PG_SUP,  PG_CARN,   _______, _______, _______, _______, PG_ACIR, KC_P1,         KC_P2,         KC_P3, PG_PLUS, PG_PERC,
-                                        _______,         _______, _______,   KC_SPC,  PG_EACU, NUMWORD, KC_P0,   KC_PDOT, _______      , _______
-    ),
-/*
- * Layer 2 : Symbols + function keys
- *
- * ,-------------------------------------------.                              ,-------------------------------------------.
- * | Helpsc |  F1  |  F2  |  F3  |  F4  |  F5  |                              |      |   ;  |   !  |   #  |   °  |        |
- * |--------+------+------+------+------+------|                              |------+------+------+------+------+--------|
- * |        |Ctrl A|Ctrl X|Ctrl V|Ctrl C| LOCK |                              | Mute |   (  |   )  |   @  |   &  |  Mute  |
- * |--------+------+------+------+------+------+-------------.  ,-------------+------+------+------+------+------+--------|
- * |        |  F6  |  F7  |  F8  |  F9  |  F10 |      |      |  |      |      |      |Ctrl Z|Ctrl Y|  F11 |  F12 |        |
- * `----------------------+------+------+------+------+------|  |------+------+------+------+------+----------------------'
- *                        |      |      |      |      |      |  |      |      |      |      |      |
- *                        |      |      |      |      |      |  | !!!  |   ,  |      |      |      |
- *                        `----------------------------------'  `----------------------------------'
- */
-    [_SHORTNAV] = LAYOUT(
-      KC_ESC,  A(KC_F4), ALT_TAB,      LWIN(PG_G), _______, _______,                                           _______, C(KC_LEFT),      KC_UP,   C(KC_RIGHT), _______, _______,
-      _______, C(PG_A),  C(PG_POIN),      C(PG_G),    C(PG_D), LAYER_LCK,                                         KC_MUTE, RCTL_T(KC_LEFT), KC_DOWN, KC_RIGHT,    KC_F2  , KC_MUTE,
-      _______, SELWORD,  LWIN(KC_TAB), REV_TAB,    ALT_TAB, _______,  _______, S(KC_END), S(KC_HOME), _______, _______, C(PG_Z),         C(PG_Y), _______,     _______, _______,
-                                       _______,    _______, _______,  QUES_PT, QUES_PT,   EXCL_PT,    EXCL_PT, _______, _______,         _______
-    ),
-
-/*
- * Layer 3 : Function keys + windows management
- *
- * ,-------------------------------------------.                              ,-------------------------------------------.
- * |        |  F12 |  F7  |  F8  |  F9  |      |                              |      |      |      |      |      |        |
- * |--------+------+------+------+------+------|                              |------+------+------+------+------+--------|
- * |        |  F11 |  F4  |  F5  |  F6  | LOCK |                              |      |      |      |      |      |        |
- * |--------+------+------+------+------+------+-------------.  ,-------------+------+------+------+------+------+--------|
- * |        |  F10 |  F1  |  F2  |  F3  |      |      |      |  |      |      |      |      |      |      |      |        |
- * `----------------------+------+------+------+------+------|  |------+------+------+------+------+----------------------'
- *                        |      |      |      |      |      |  |      |      |      |      |      |
- *                        |      |      |      |      |      |  |      |      |      |      |      |
- *                        `----------------------------------'  `----------------------------------'
- */
-    [_FUNCAPPS] = LAYOUT(
-      KC_ESC,  KC_F12,        KC_F9,         KC_F8,   KC_F7,   C(KC_PAUS),                                     _______, SWIN(KC_LEFT), LWIN(KC_UP),   SWIN(KC_RIGHT), _______, QK_BOOT,
-      _______, ALT_T(KC_F11), SFT_T(KC_F6),  KC_F5,   KC_F4,   LAYER_LCK,                                      _______, RCTL_T(FEN_G), LWIN(KC_DOWN), LWIN(KC_RIGHT), _______, _______,
-      _______, KC_F10,        KC_F3,         KC_F2,   KC_F1,   _______,    _______, _______, _______, _______, _______, LWIN(PG_H),    LWIN(KC_HOME), _______,        _______, _______,
-                                             _______, _______, _______,    _______, _______, _______, _______, _______, _______,       _______
-    ),
-
-// /*
-//  * Layer template
-//  *
-//  * ,-------------------------------------------.                              ,-------------------------------------------.
-//  * |        |      |      |      |      |      |                              |      |      |      |      |      |        |
-//  * |--------+------+------+------+------+------|                              |------+------+------+------+------+--------|
-//  * |        |      |      |      |      |      |                              |      |      |      |      |      |        |
-//  * |--------+------+------+------+------+------+-------------.  ,-------------+------+------+------+------+------+--------|
-//  * |        |      |      |      |      |      |      |      |  |      |      |      |      |      |      |      |        |
-//  * `----------------------+------+------+------+------+------|  |------+------+------+------+------+----------------------'
-//  *                        |      |      |      |      |      |  |      |      |      |      |      |
-//  *                        |      |      |      |      |      |  |      |      |      |      |      |
-//  *                        `----------------------------------'  `----------------------------------'
-//  */
-//     [_LAYERINDEX] = LAYOUT(
-//       _______, _______, _______, _______, _______, _______,                                     _______, _______, _______, _______, _______, _______,
-//       _______, _______, _______, _______, _______, _______,                                     _______, _______, _______, _______, _______, _______,
-//       _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-//                                  _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-//     ),
-};
\ No newline at end of file
diff --git a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap.c b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap.c
index cac98e1d..a8408bf4 100644
--- a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap.c
+++ b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap.c
@@ -106,17 +106,17 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
   // Custom behaviour of the typo dead-key
   if (!process_odk_layer(keycode, record)) { return false; }
 
-    // Clever keys
+  // Clever keys
   if (!process_clever_keys(keycode, record)) { return false; }
 
-    // Process all other keycodes normally
+  // Process all other keycodes normally
   return true;
 }
 
 void post_process_record_user(uint16_t keycode, keyrecord_t* record) {
 
   os4a_layer_exit_check();
-  numword_exit_check();
+  //numword_exit_check();
   end_CK(record);
 }
 
@@ -203,10 +203,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  *                        `----------------------------------'  `----------------------------------'
  */
     [_SYMBOLS] = LAYOUT(
-      _______, PG_ACIR,    PG_LCBR, PG_RCBR, PG_DLR,  PG_PERC,                                           PG_HASH, PG_DQUO, PG_EGAL, ALGR(PG_J), PG_GRV,  _______,
-      _______, ALGR(PG_O), PG_LPRN, PG_RPRN, PG_PVIR, PG_2PTS,                                           PG_BSLS, MT_SLSH, PG_MOIN, PG_PLUS,    PG_ASTX, _______,
-      _______, PG_INF,     PG_LSBR, PG_RSBR, PG_SUP,  _______,       _______, _______, _______, _______, _______, PG_APOD, PG_ESPR, PG_PIPE,    PG_TILD, _______,
-                                    _______, _______, _______,       PG_UNDS, KC_SPC,  _______, _______, _______, _______, _______
+      _______, PG_ACIR,    PG_LCBR, PG_RCBR, PG_DLR,  PG_PERC,                                     PG_HASH, PG_DQUO, PG_EGAL, ALGR(PG_J), PG_GRV,  _______,
+      _______, ALGR(PG_O), PG_LPRN, PG_RPRN, PG_PVIR, PG_2PTS,                                     PG_BSLS, MT_SLSH, PG_MOIN, PG_PLUS,    PG_ASTX, _______,
+      _______, PG_INF,     PG_LSBR, PG_RSBR, PG_SUP,  _______, _______, _______, _______, _______, _______, PG_APOD, PG_ESPR, PG_PIPE,    PG_TILD, _______,
+                                    _______, _______, _______, PG_UNDS, KC_SPC,  _______, _______, _______, _______, _______
     ),
 
 
@@ -225,10 +225,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  *                        `----------------------------------'  `----------------------------------'
  */
     [_NUMBERS] = LAYOUT(
-       _______, PG_DLR,  PG_MOIN, PG_PLUS, _______, PG_PERC,                                           PG_EXP,  _______, PG_EGAL, PG_ASTX, _______, _______,
-       _______, KC_4,    KC_3,    KC_2,    MT_1,    PG_2PTS,                                           PG_IND,  MT_SLSH, KC_6,    KC_7,    KC_8,    _______,
-       _______, _______, _______, PG_H,    KC_5,    _______,       _______, _______, _______, _______, _______, KC_9,    PG_DEG,  _______, PG_ODK,  _______,
-                                  _______, _______, KC_PDOT,       KC_0   , LT_EURO, NNB_SPC, KC_SPC,  KC_PDOT, _______, _______
+       _______, PG_DLR,  PG_MOIN, PG_PLUS, PG_EURO, PG_PERC,                                      PG_EXP,  _______, PG_EGAL, PG_ASTX, _______, _______,
+       _______, KC_4,    KC_3,    KC_2,    MT_1,    PG_2PTS,                                      PG_IND,  MT_SLSH, KC_6,    KC_7,    KC_8,    _______,
+       _______, _______, _______, PG_H,    KC_5,    _______, _______, _______,  _______, _______, _______, KC_9,    PG_DEG,  _______, PG_ODK,  _______,
+                                  _______, _______, KC_PDOT, KC_0   , LT_NBSPC, _______, KC_SPC,  _______, _______, _______
      ),
 
 
@@ -269,7 +269,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  *                        `----------------------------------'  `----------------------------------'
  */
     [_SHORTNAV] = LAYOUT(
-      _______, KC_BSPC, LWIN(KC_TAB), LWIN(PG_V), RCS(PG_V),   KC_VOLU,                                      KC_PGUP, C(KC_LEFT), KC_UP,      C(KC_RGHT), _______, _______,
+      _______, _______, LWIN(KC_TAB), LWIN(PG_V), RCS(PG_V),   KC_VOLU,                                      KC_PGUP, C(KC_LEFT), KC_UP,      C(KC_RGHT), _______, _______,
       _______, C(PG_A), C(PG_X),      C(PG_V),    SFT_T(COPY), KC_VOLD,                                      KC_PGDN, KC_LEFT,    KC_DOWN,    KC_RIGHT,   KC_F2  , _______,
       _______, KC_SPC,  KC_SPC,       KC_MUTE,    C(PG_Z),     C(PG_Y),  _______, _______, _______, _______, _______, C(KC_PGUP), C(KC_PGDN), C(PG_W),    _______, _______,
                                       _______,    _______,     _______,  _______, _______, _______, _______, _______, _______,    _______
diff --git a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap.h b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap.h
index eed7d499..7464921d 100644
--- a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap.h
+++ b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap.h
@@ -53,20 +53,12 @@ enum custom_keycodes {
   RAZ,
   CAPSWORD,
   OU_GRV,
-  //PG_OE,
-  //E_CIRC,
-/*  I_CIRC,
-  A_CIRC,
-  O_CIRC,
-  U_CIRC,
-  I_TREM,*/
   MAGIC,
   OS_SHFT,
   OS_CTRL,
   OS_RALT,
   OS_LALT,
   OS_WIN,
-  //OS_ODK,
   CNL_ODK,
   TG_APOS,
   PG_DEG
@@ -81,8 +73,7 @@ enum custom_keycodes {
 #define TT_FA TT(_FUNCAPPS)
 #define MT_SLSH SFT_T(PG_SLSH)
 #define MT_1 SFT_T(KC_1)
-//#define LT_NUMWORD LT(_SHORTNAV, NUMWORD)
-#define LT_EURO LT(_SHORTNAV, PG_EURO)
+#define LT_NBSPC LT(_SHORTNAV, NNB_SPC)
 #define E_CIRC S(FG_0)
 #define OS_ODK OSL(_ODK)
 #define OS_RSA OSM(MOD_RALT | MOD_LSFT)
diff --git a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap_french_propergol.h b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap_french_propergol.h
index ac300d7b..505ef76d 100644
--- a/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap_french_propergol.h
+++ b/keyboards/splitkb/kyria/rev1/base/keymaps/Kawamashi/keymap_french_propergol.h
@@ -28,7 +28,7 @@
  * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
  * │     │ , │ É │ U │ P │ - │ V │ M │ C │ J │ X │ ' │ - │     │
  * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
- * │      │ O │ A │ I │ N │ . │ G │ T │ S │ R │ L │ ’ │ € │    │
+ * │      │ O │ A │ I │ N │ . │ G │ T │ S │ R │ L │ _ │ ’ │    │
  * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
  * │    │ E │ Q │ Z │ Y │ H │ B │ K │ D │ F │ W │ **│          │
  * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
@@ -76,7 +76,7 @@
 #define PG_S    KC_K    // S
 #define PG_R    KC_L    // R
 #define PG_L    KC_SCLN // L
-#define PG_EURO KC_QUOT // €
+#define PG_UNDS KC_QUOT // _
 #define PG_APOS KC_NUHS // ’
 
 // Row 4
@@ -95,7 +95,7 @@
 
 /* Shifted symbols
  * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
- * │ ~ │ | │ < │ > │ $ │ % │ ^ │ & │ _ │ # │ @ │ * │ \ │       │
+ * │ ~ │ € │ < │ > │ $ │ % │ ^ │ & │ | │ # │ @ │ * │ \ │       │
  * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
  * │     │ ? │   │   │   │ ! │   │   │   │   │   │ " │ + │     │
  * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
@@ -109,14 +109,14 @@
 
 // Row 1
 #define PG_TILD S(KC_GRV)  // ~
-#define PG_PIPE S(KC_1)    // |
+#define PG_EURO S(KC_1)    // €
 #define PG_INF  S(KC_2)    // <
 #define PG_SUP  S(KC_3)    // >
 #define PG_DLR  S(KC_4)    // $
 #define PG_PERC S(KC_5)    // %
 #define PG_ACIR S(KC_6)    // ^
 #define PG_ESPR S(KC_7)    // &
-#define PG_UNDS S(KC_8)    // _
+#define PG_PIPE S(KC_8)    // |
 #define PG_HASH S(KC_9)    // #
 #define PG_AROB S(KC_0)    // @
 #define PG_ASTX S(PG_SLSH) // *
@@ -132,7 +132,7 @@
 // Row 3
 #define PG_2PTS S(PG_POIN) // :
 #define PG_RSBR S(PG_APOS) // ]
-#define PG_LSBR S(PG_EURO) // [
+#define PG_LSBR S(PG_UNDS) // [
 
 // Row 4
 #define PG_PVIR S(PG_ODK)