From 3f292ec723d5ce22add1c95065ef3ad0d91c7913 Mon Sep 17 00:00:00 2001
From: James Young <18669334+noroadsleft@users.noreply.github.com>
Date: Mon, 21 Jun 2021 13:32:51 -0700
Subject: [PATCH] Swiftrax Nodu handwired: Layout Macro rename and Community
 Layout support (#13276)

* rename LAYOUT to LAYOUT_60_ansi_split_bs_rshift

* enable Community Layout support
---
 keyboards/handwired/swiftrax/nodu/info.json                | 7 +++++--
 keyboards/handwired/swiftrax/nodu/keymaps/default/keymap.c | 4 ++--
 keyboards/handwired/swiftrax/nodu/keymaps/via/keymap.c     | 6 +++---
 keyboards/handwired/swiftrax/nodu/nodu.h                   | 2 +-
 keyboards/handwired/swiftrax/nodu/rules.mk                 | 2 ++
 5 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/keyboards/handwired/swiftrax/nodu/info.json b/keyboards/handwired/swiftrax/nodu/info.json
index ed394602e4..3cc75836b3 100644
--- a/keyboards/handwired/swiftrax/nodu/info.json
+++ b/keyboards/handwired/swiftrax/nodu/info.json
@@ -4,9 +4,12 @@
     "maintainer": "Swiftrax", 
     "width": 15, 
     "height": 5, 
+    "layout_aliases": {
+        "LAYOUT": "LAYOUT_60_ansi_split_bs_rshift"
+    },
     "layouts": {
-        "LAYOUT": {
+        "LAYOUT_60_ansi_split_bs_rshift": {
             "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1, "y":0}, {"label":"0,2", "x":2, "y":0}, {"label":"0,3", "x":3, "y":0}, {"label":"0,4", "x":4, "y":0}, {"label":"0,5", "x":5, "y":0}, {"label":"0,6", "x":6, "y":0}, {"label":"0,7", "x":7, "y":0}, {"label":"0,8", "x":8, "y":0}, {"label":"0,9", "x":9, "y":0}, {"label":"0,A", "x":10, "y":0}, {"label":"0,B", "x":11, "y":0}, {"label":"0,C", "x":12, "y":0}, {"label":"0,D", "x":13, "y":0}, {"label":"2,D", "x":14, "y":0}, {"label":"1,0", "x":0, "y":1, "w":1.5}, {"label":"1,1", "x":1.5, "y":1}, {"label":"1,2", "x":2.5, "y":1}, {"label":"1,3", "x":3.5, "y":1}, {"label":"1,4", "x":4.5, "y":1}, {"label":"1,5", "x":5.5, "y":1}, {"label":"1,6", "x":6.5, "y":1}, {"label":"1,7", "x":7.5, "y":1}, {"label":"1,8", "x":8.5, "y":1}, {"label":"1,9", "x":9.5, "y":1}, {"label":"1,A", "x":10.5, "y":1}, {"label":"1,B", "x":11.5, "y":1}, {"label":"1,C", "x":12.5, "y":1}, {"label":"1,D", "x":13.5, "y":1, "w":1.5}, {"label":"2,0", "x":0, "y":2, "w":1.75}, {"label":"2,1", "x":1.75, "y":2}, {"label":"2,2", "x":2.75, "y":2}, {"label":"2,3", "x":3.75, "y":2}, {"label":"2,4", "x":4.75, "y":2}, {"label":"2,5", "x":5.75, "y":2}, {"label":"2,6", "x":6.75, "y":2}, {"label":"2,7", "x":7.75, "y":2}, {"label":"2,8", "x":8.75, "y":2}, {"label":"2,9", "x":9.75, "y":2}, {"label":"2,A", "x":10.75, "y":2}, {"label":"2,B", "x":11.75, "y":2}, {"label":"2,C", "x":12.75, "y":2, "w":2.25}, {"label":"3,0", "x":0, "y":3, "w":2.25}, {"label":"3,1", "x":2.25, "y":3}, {"label":"3,2", "x":3.25, "y":3}, {"label":"3,3", "x":4.25, "y":3}, {"label":"3,4", "x":5.25, "y":3}, {"label":"3,5", "x":6.25, "y":3}, {"label":"3,6", "x":7.25, "y":3}, {"label":"3,7", "x":8.25, "y":3}, {"label":"3,8", "x":9.25, "y":3}, {"label":"3,9", "x":10.25, "y":3}, {"label":"3,A", "x":11.25, "y":3}, {"label":"3,B", "x":12.25, "y":3, "w":1.75}, {"label":"3,C", "x":14, "y":3}, {"label":"4,0", "x":0, "y":4, "w":1.25}, {"label":"4,1", "x":1.25, "y":4, "w":1.25}, {"label":"4,2", "x":2.5, "y":4, "w":1.25}, {"label":"4,6", "x":3.75, "y":4, "w":6.25}, {"label":"4,8", "x":10, "y":4, "w":1.25}, {"label":"4,9", "x":11.25, "y":4, "w":1.25}, {"label":"4,A", "x":12.5, "y":4, "w":1.25}, {"label":"4,B", "x":13.75, "y":4, "w":1.25}]
         }
     }
-}
\ No newline at end of file
+}
diff --git a/keyboards/handwired/swiftrax/nodu/keymaps/default/keymap.c b/keyboards/handwired/swiftrax/nodu/keymaps/default/keymap.c
index d74fc381f1..617c1434aa 100644
--- a/keyboards/handwired/swiftrax/nodu/keymaps/default/keymap.c
+++ b/keyboards/handwired/swiftrax/nodu/keymaps/default/keymap.c
@@ -17,14 +17,14 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include QMK_KEYBOARD_H
 
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-   [0] = LAYOUT(
+   [0] = LAYOUT_60_ansi_split_bs_rshift(
     KC_GESC, KC_1   , KC_2   , KC_3   , KC_4   , KC_5   , KC_6   , KC_7   , KC_8   , KC_9   , KC_0   , KC_MINS, KC_EQL , KC_BSPC,
     KC_TAB , KC_Q   , KC_W   , KC_E   , KC_R   , KC_T   , KC_Y   , KC_U   , KC_I   , KC_O   , KC_P   , KC_LBRC, KC_RBRC, KC_BSLS, 
     KC_CAPS, KC_A   , KC_S   , KC_D   , KC_F   , KC_G   , KC_H   , KC_J   , KC_K   , KC_L   , KC_SCLN, KC_QUOT, KC_ENT , KC_DEL,
     KC_LSFT, KC_Z   , KC_X   , KC_C   , KC_V   , KC_B   , KC_N   , KC_M   , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, MO(1) , 
     KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC ,          KC_RALT, KC_RGUI, MO(1)  , KC_RCTL
  ),
-   [1] = LAYOUT(
+   [1] = LAYOUT_60_ansi_split_bs_rshift(
     _______, KC_F1  , KC_F2  , KC_F3  , KC_F4  , KC_F5  , KC_F6  , KC_F7  , KC_F8  , KC_F9  , KC_F10 , KC_F11 , KC_F12 , _______,
     _______, _______, KC_UP  , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
     _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
diff --git a/keyboards/handwired/swiftrax/nodu/keymaps/via/keymap.c b/keyboards/handwired/swiftrax/nodu/keymaps/via/keymap.c
index e263efa662..6672ad7cc8 100644
--- a/keyboards/handwired/swiftrax/nodu/keymaps/via/keymap.c
+++ b/keyboards/handwired/swiftrax/nodu/keymaps/via/keymap.c
@@ -17,21 +17,21 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include QMK_KEYBOARD_H
 
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-   [0] = LAYOUT(
+   [0] = LAYOUT_60_ansi_split_bs_rshift(
     KC_GESC, KC_1   , KC_2   , KC_3   , KC_4   , KC_5   , KC_6   , KC_7   , KC_8   , KC_9   , KC_0   , KC_MINS, KC_EQL , KC_BSPC,
     KC_TAB , KC_Q   , KC_W   , KC_E   , KC_R   , KC_T   , KC_Y   , KC_U   , KC_I   , KC_O   , KC_P   , KC_LBRC, KC_RBRC, KC_BSLS, 
     KC_CAPS, KC_A   , KC_S   , KC_D   , KC_F   , KC_G   , KC_H   , KC_J   , KC_K   , KC_L   , KC_SCLN, KC_QUOT, KC_ENT , KC_DEL,
     KC_LSFT, KC_Z   , KC_X   , KC_C   , KC_V   , KC_B   , KC_N   , KC_M   , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, MO(1) , 
     KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC ,          KC_RALT, KC_RGUI, MO(1)  , KC_RCTL
  ),
-   [1] = LAYOUT(
+   [1] = LAYOUT_60_ansi_split_bs_rshift(
     _______, KC_F1  , KC_F2  , KC_F3  , KC_F4  , KC_F5  , KC_F6  , KC_F7  , KC_F8  , KC_F9  , KC_F10 , KC_F11 , KC_F12 , _______,
     _______, _______, KC_UP  , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
     _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
     _______, _______, _______,                            _______,          _______, _______, _______, _______ 
  ),
-   [2] = LAYOUT(
+   [2] = LAYOUT_60_ansi_split_bs_rshift(
     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
     _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
diff --git a/keyboards/handwired/swiftrax/nodu/nodu.h b/keyboards/handwired/swiftrax/nodu/nodu.h
index baca1265d9..d9024237af 100644
--- a/keyboards/handwired/swiftrax/nodu/nodu.h
+++ b/keyboards/handwired/swiftrax/nodu/nodu.h
@@ -20,7 +20,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "quantum.h"
 
-#define LAYOUT( \
+#define LAYOUT_60_ansi_split_bs_rshift( \
     K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
     K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
     K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, \
diff --git a/keyboards/handwired/swiftrax/nodu/rules.mk b/keyboards/handwired/swiftrax/nodu/rules.mk
index 5c0d8f307c..f4b86c5997 100644
--- a/keyboards/handwired/swiftrax/nodu/rules.mk
+++ b/keyboards/handwired/swiftrax/nodu/rules.mk
@@ -20,3 +20,5 @@ BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
 RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
 BLUETOOTH_ENABLE = no       # Enable Bluetooth
 AUDIO_ENABLE = no           # Audio output
+
+LAYOUTS = 60_ansi_split_bs_rshift