浏览代码

Studio Kestra Nascent Refactor (#18625)

James Young 2 年之前
父节点
当前提交
1a9058b2d1

+ 380 - 70
keyboards/studiokestra/nascent/info.json

@@ -2,85 +2,395 @@
     "keyboard_name": "Nascent",
     "manufacturer": "Studio Kestra",
     "url": "https://studiokestra.ca/",
-    "maintainer": "Studio Kestra",
+    "maintainer": "studiokestra",
     "usb": {
         "vid": "0x7C10",
         "pid": "0x0165",
         "device_version": "0.0.1"
     },
+    "community_layouts": [
+        "65_ansi_blocker",
+        "65_ansi_blocker_split_bs",
+        "65_ansi_blocker_tsangan",
+        "65_ansi_blocker_tsangan_split_bs"
+    ],
     "layouts": {
         "LAYOUT_all": {
             "layout": [
-                {"label":"~", "x":0, "y":0}, 
-                {"label":"!", "x":1, "y":0}, 
-                {"label":"@", "x":2, "y":0}, 
-                {"label":"#", "x":3, "y":0}, 
-                {"label":"$", "x":4, "y":0}, 
-                {"label":"%", "x":5, "y":0}, 
-                {"label":"^", "x":6, "y":0}, 
-                {"label":"&", "x":7, "y":0}, 
-                {"label":"*", "x":8, "y":0}, 
-                {"label":"(", "x":9, "y":0}, 
-                {"label":")", "x":10, "y":0}, 
-                {"label":"_", "x":11, "y":0}, 
-                {"label":"+", "x":12, "y":0}, 
-                {"label":"Bksp", "x":13, "y":0}, 
-                {"label":"Bksp", "x":14, "y":0}, 
-                {"label":"Delete", "x":15, "y":0}, 
-                {"label":"Tab", "x":0, "y":1, "w":1.5}, 
-                {"label":"Q", "x":1.5, "y":1}, 
-                {"label":"W", "x":2.5, "y":1}, 
-                {"label":"E", "x":3.5, "y":1}, 
-                {"label":"R", "x":4.5, "y":1}, 
-                {"label":"T", "x":5.5, "y":1}, 
-                {"label":"Y", "x":6.5, "y":1}, 
-                {"label":"U", "x":7.5, "y":1}, 
-                {"label":"I", "x":8.5, "y":1}, 
-                {"label":"O", "x":9.5, "y":1}, 
-                {"label":"P", "x":10.5, "y":1}, 
-                {"label":"{", "x":11.5, "y":1}, 
-                {"label":"}", "x":12.5, "y":1}, 
-                {"label":"|", "x":13.5, "y":1, "w":1.5}, 
-                {"label":"Home", "x":15, "y":1}, 
-                {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, 
-                {"label":"A", "x":1.75, "y":2}, 
-                {"label":"S", "x":2.75, "y":2}, 
-                {"label":"D", "x":3.75, "y":2}, 
-                {"label":"F", "x":4.75, "y":2}, 
-                {"label":"G", "x":5.75, "y":2}, 
-                {"label":"H", "x":6.75, "y":2}, 
-                {"label":"J", "x":7.75, "y":2}, 
-                {"label":"K", "x":8.75, "y":2}, 
-                {"label":"L", "x":9.75, "y":2}, 
-                {"label":":", "x":10.75, "y":2}, 
-                {"label":"\"", "x":11.75, "y":2}, 
-                {"label":"Enter", "x":12.75, "y":2, "w":2.25}, 
-                {"label":"PgUp", "x":15, "y":2}, 
-                {"label":"Shift", "x":0, "y":3, "w":2.25}, 
-                {"label":"Z", "x":2.25, "y":3}, 
-                {"label":"X", "x":3.25, "y":3}, 
-                {"label":"C", "x":4.25, "y":3}, 
-                {"label":"V", "x":5.25, "y":3}, 
-                {"label":"B", "x":6.25, "y":3}, 
-                {"label":"N", "x":7.25, "y":3}, 
-                {"label":"M", "x":8.25, "y":3}, 
-                {"label":"<", "x":9.25, "y":3}, 
-                {"label":">", "x":10.25, "y":3}, 
-                {"label":"?", "x":11.25, "y":3}, 
-                {"label":"Shift", "x":12.25, "y":3, "w":1.75}, 
-                {"label":"\u2191", "x":14, "y":3}, 
-                {"label":"PgDn", "x":15, "y":3}, 
-                {"label":"Ctrl", "x":0, "y":4, "w":1.5}, 
-                {"label":"Win", "x":1.5, "y":4}, 
-                {"label":"Alt", "x":2.5, "y":4, "w":1.5}, 
-                {"x":4, "y":4, "w":3}, 
-                {"x":7, "y":4}, 
-                {"x":8, "y":4, "w":3}, 
-                {"label":"Ctrl", "x":11, "y":4, "w":1.5}, 
-                {"label":"\u2190", "x":13, "y":4}, 
-                {"label":"\u2193", "x":14, "y":4}, 
+                {"label":"`~", "x":0, "y":0},
+                {"label":"1!", "x":1, "y":0},
+                {"label":"2@", "x":2, "y":0},
+                {"label":"3#", "x":3, "y":0},
+                {"label":"4$", "x":4, "y":0},
+                {"label":"5%", "x":5, "y":0},
+                {"label":"6^", "x":6, "y":0},
+                {"label":"7&", "x":7, "y":0},
+                {"label":"8*", "x":8, "y":0},
+                {"label":"9(", "x":9, "y":0},
+                {"label":"0)", "x":10, "y":0},
+                {"label":"-_", "x":11, "y":0},
+                {"label":"=+", "x":12, "y":0},
+                {"label":"Bksp", "x":13, "y":0},
+                {"label":"Bksp", "x":14, "y":0},
+                {"label":"Delete", "x":15, "y":0},
+
+                {"label":"Tab", "x":0, "y":1, "w":1.5},
+                {"label":"Q", "x":1.5, "y":1},
+                {"label":"W", "x":2.5, "y":1},
+                {"label":"E", "x":3.5, "y":1},
+                {"label":"R", "x":4.5, "y":1},
+                {"label":"T", "x":5.5, "y":1},
+                {"label":"Y", "x":6.5, "y":1},
+                {"label":"U", "x":7.5, "y":1},
+                {"label":"I", "x":8.5, "y":1},
+                {"label":"O", "x":9.5, "y":1},
+                {"label":"P", "x":10.5, "y":1},
+                {"label":"[{", "x":11.5, "y":1},
+                {"label":"]}", "x":12.5, "y":1},
+                {"label":"\\|", "x":13.5, "y":1, "w":1.5},
+                {"label":"Home", "x":15, "y":1},
+
+                {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
+                {"label":"A", "x":1.75, "y":2},
+                {"label":"S", "x":2.75, "y":2},
+                {"label":"D", "x":3.75, "y":2},
+                {"label":"F", "x":4.75, "y":2},
+                {"label":"G", "x":5.75, "y":2},
+                {"label":"H", "x":6.75, "y":2},
+                {"label":"J", "x":7.75, "y":2},
+                {"label":"K", "x":8.75, "y":2},
+                {"label":"L", "x":9.75, "y":2},
+                {"label":";:", "x":10.75, "y":2},
+                {"label":"'\"", "x":11.75, "y":2},
+                {"label":"Enter", "x":12.75, "y":2, "w":2.25},
+                {"label":"PgUp", "x":15, "y":2},
+
+                {"label":"Shift", "x":0, "y":3, "w":2.25},
+                {"label":"Z", "x":2.25, "y":3},
+                {"label":"X", "x":3.25, "y":3},
+                {"label":"C", "x":4.25, "y":3},
+                {"label":"V", "x":5.25, "y":3},
+                {"label":"B", "x":6.25, "y":3},
+                {"label":"N", "x":7.25, "y":3},
+                {"label":"M", "x":8.25, "y":3},
+                {"label":",<", "x":9.25, "y":3},
+                {"label":".>", "x":10.25, "y":3},
+                {"label":"/?", "x":11.25, "y":3},
+                {"label":"Shift", "x":12.25, "y":3, "w":1.75},
+                {"label":"\u2191", "x":14, "y":3},
+                {"label":"PgDn", "x":15, "y":3},
+
+                {"label":"Ctrl", "x":0, "y":4, "w":1.5},
+                {"label":"Win", "x":1.5, "y":4},
+                {"label":"Alt", "x":2.5, "y":4, "w":1.5},
+                {"label":"Space", "x":4, "y":4, "w":3},
+                {"label":"Space", "x":7, "y":4},
+                {"label":"Alt", "x":8, "y":4, "w":3},
+                {"label":"Ctrl", "x":11, "y":4, "w":1.5},
+                {"label":"\u2190", "x":13, "y":4},
+                {"label":"\u2193", "x":14, "y":4},
+                {"label":"\u2192", "x":15, "y":4}
+            ]
+        },
+        "LAYOUT_65_ansi_blocker": {
+            "layout": [
+                {"label":"`~", "x":0, "y":0},
+                {"label":"1!", "x":1, "y":0},
+                {"label":"2@", "x":2, "y":0},
+                {"label":"3#", "x":3, "y":0},
+                {"label":"4$", "x":4, "y":0},
+                {"label":"5%", "x":5, "y":0},
+                {"label":"6^", "x":6, "y":0},
+                {"label":"7&", "x":7, "y":0},
+                {"label":"8*", "x":8, "y":0},
+                {"label":"9(", "x":9, "y":0},
+                {"label":"0)", "x":10, "y":0},
+                {"label":"-_", "x":11, "y":0},
+                {"label":"=+", "x":12, "y":0},
+                {"label":"Bksp", "x":13, "y":0, "w":2},
+                {"label":"Delete", "x":15, "y":0},
+
+                {"label":"Tab", "x":0, "y":1, "w":1.5},
+                {"label":"Q", "x":1.5, "y":1},
+                {"label":"W", "x":2.5, "y":1},
+                {"label":"E", "x":3.5, "y":1},
+                {"label":"R", "x":4.5, "y":1},
+                {"label":"T", "x":5.5, "y":1},
+                {"label":"Y", "x":6.5, "y":1},
+                {"label":"U", "x":7.5, "y":1},
+                {"label":"I", "x":8.5, "y":1},
+                {"label":"O", "x":9.5, "y":1},
+                {"label":"P", "x":10.5, "y":1},
+                {"label":"[{", "x":11.5, "y":1},
+                {"label":"]}", "x":12.5, "y":1},
+                {"label":"\\|", "x":13.5, "y":1, "w":1.5},
+                {"label":"Home", "x":15, "y":1},
+
+                {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
+                {"label":"A", "x":1.75, "y":2},
+                {"label":"S", "x":2.75, "y":2},
+                {"label":"D", "x":3.75, "y":2},
+                {"label":"F", "x":4.75, "y":2},
+                {"label":"G", "x":5.75, "y":2},
+                {"label":"H", "x":6.75, "y":2},
+                {"label":"J", "x":7.75, "y":2},
+                {"label":"K", "x":8.75, "y":2},
+                {"label":"L", "x":9.75, "y":2},
+                {"label":";:", "x":10.75, "y":2},
+                {"label":"'\"", "x":11.75, "y":2},
+                {"label":"Enter", "x":12.75, "y":2, "w":2.25},
+                {"label":"PgUp", "x":15, "y":2},
+
+                {"label":"Shift", "x":0, "y":3, "w":2.25},
+                {"label":"Z", "x":2.25, "y":3},
+                {"label":"X", "x":3.25, "y":3},
+                {"label":"C", "x":4.25, "y":3},
+                {"label":"V", "x":5.25, "y":3},
+                {"label":"B", "x":6.25, "y":3},
+                {"label":"N", "x":7.25, "y":3},
+                {"label":"M", "x":8.25, "y":3},
+                {"label":",<", "x":9.25, "y":3},
+                {"label":".>", "x":10.25, "y":3},
+                {"label":"/?", "x":11.25, "y":3},
+                {"label":"Shift", "x":12.25, "y":3, "w":1.75},
+                {"label":"\u2191", "x":14, "y":3},
+                {"label":"PgDn", "x":15, "y":3},
+
+                {"label":"Ctrl", "x":0, "y":4, "w":1.25},
+                {"label":"Win", "x":1.25, "y":4, "w":1.25},
+                {"label":"Alt", "x":2.5, "y":4, "w":1.25},
+                {"label":"Space", "x":3.75, "y":4, "w":6.25},
+                {"label":"Alt", "x":10, "y":4, "w":1.25},
+                {"label":"Ctrl", "x":11.25, "y":4, "w":1.25},
+                {"label":"\u2190", "x":13, "y":4},
+                {"label":"\u2193", "x":14, "y":4},
+                {"label":"\u2192", "x":15, "y":4}
+            ]
+        },
+        "LAYOUT_65_ansi_blocker_split_bs": {
+            "layout": [
+                {"label":"`~", "x":0, "y":0},
+                {"label":"1!", "x":1, "y":0},
+                {"label":"2@", "x":2, "y":0},
+                {"label":"3#", "x":3, "y":0},
+                {"label":"4$", "x":4, "y":0},
+                {"label":"5%", "x":5, "y":0},
+                {"label":"6^", "x":6, "y":0},
+                {"label":"7&", "x":7, "y":0},
+                {"label":"8*", "x":8, "y":0},
+                {"label":"9(", "x":9, "y":0},
+                {"label":"0)", "x":10, "y":0},
+                {"label":"-_", "x":11, "y":0},
+                {"label":"=+", "x":12, "y":0},
+                {"label":"Bksp", "x":13, "y":0},
+                {"label":"Bksp", "x":14, "y":0},
+                {"label":"Delete", "x":15, "y":0},
+
+                {"label":"Tab", "x":0, "y":1, "w":1.5},
+                {"label":"Q", "x":1.5, "y":1},
+                {"label":"W", "x":2.5, "y":1},
+                {"label":"E", "x":3.5, "y":1},
+                {"label":"R", "x":4.5, "y":1},
+                {"label":"T", "x":5.5, "y":1},
+                {"label":"Y", "x":6.5, "y":1},
+                {"label":"U", "x":7.5, "y":1},
+                {"label":"I", "x":8.5, "y":1},
+                {"label":"O", "x":9.5, "y":1},
+                {"label":"P", "x":10.5, "y":1},
+                {"label":"[{", "x":11.5, "y":1},
+                {"label":"]}", "x":12.5, "y":1},
+                {"label":"\\|", "x":13.5, "y":1, "w":1.5},
+                {"label":"Home", "x":15, "y":1},
+
+                {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
+                {"label":"A", "x":1.75, "y":2},
+                {"label":"S", "x":2.75, "y":2},
+                {"label":"D", "x":3.75, "y":2},
+                {"label":"F", "x":4.75, "y":2},
+                {"label":"G", "x":5.75, "y":2},
+                {"label":"H", "x":6.75, "y":2},
+                {"label":"J", "x":7.75, "y":2},
+                {"label":"K", "x":8.75, "y":2},
+                {"label":"L", "x":9.75, "y":2},
+                {"label":";:", "x":10.75, "y":2},
+                {"label":"'\"", "x":11.75, "y":2},
+                {"label":"Enter", "x":12.75, "y":2, "w":2.25},
+                {"label":"PgUp", "x":15, "y":2},
+
+                {"label":"Shift", "x":0, "y":3, "w":2.25},
+                {"label":"Z", "x":2.25, "y":3},
+                {"label":"X", "x":3.25, "y":3},
+                {"label":"C", "x":4.25, "y":3},
+                {"label":"V", "x":5.25, "y":3},
+                {"label":"B", "x":6.25, "y":3},
+                {"label":"N", "x":7.25, "y":3},
+                {"label":"M", "x":8.25, "y":3},
+                {"label":",<", "x":9.25, "y":3},
+                {"label":".>", "x":10.25, "y":3},
+                {"label":"/?", "x":11.25, "y":3},
+                {"label":"Shift", "x":12.25, "y":3, "w":1.75},
+                {"label":"\u2191", "x":14, "y":3},
+                {"label":"PgDn", "x":15, "y":3},
+
+                {"label":"Ctrl", "x":0, "y":4, "w":1.25},
+                {"label":"Win", "x":1.25, "y":4, "w":1.25},
+                {"label":"Alt", "x":2.5, "y":4, "w":1.25},
+                {"label":"Space", "x":3.75, "y":4, "w":6.25},
+                {"label":"Alt", "x":10, "y":4, "w":1.25},
+                {"label":"Ctrl", "x":11.25, "y":4, "w":1.25},
+                {"label":"\u2190", "x":13, "y":4},
+                {"label":"\u2193", "x":14, "y":4},
+                {"label":"\u2192", "x":15, "y":4}
+            ]
+        },
+        "LAYOUT_65_ansi_blocker_tsangan": {
+            "layout": [
+                {"label":"`~", "x":0, "y":0},
+                {"label":"1!", "x":1, "y":0},
+                {"label":"2@", "x":2, "y":0},
+                {"label":"3#", "x":3, "y":0},
+                {"label":"4$", "x":4, "y":0},
+                {"label":"5%", "x":5, "y":0},
+                {"label":"6^", "x":6, "y":0},
+                {"label":"7&", "x":7, "y":0},
+                {"label":"8*", "x":8, "y":0},
+                {"label":"9(", "x":9, "y":0},
+                {"label":"0)", "x":10, "y":0},
+                {"label":"-_", "x":11, "y":0},
+                {"label":"=+", "x":12, "y":0},
+                {"label":"Bksp", "x":13, "y":0, "w":2},
+                {"label":"Delete", "x":15, "y":0},
+
+                {"label":"Tab", "x":0, "y":1, "w":1.5},
+                {"label":"Q", "x":1.5, "y":1},
+                {"label":"W", "x":2.5, "y":1},
+                {"label":"E", "x":3.5, "y":1},
+                {"label":"R", "x":4.5, "y":1},
+                {"label":"T", "x":5.5, "y":1},
+                {"label":"Y", "x":6.5, "y":1},
+                {"label":"U", "x":7.5, "y":1},
+                {"label":"I", "x":8.5, "y":1},
+                {"label":"O", "x":9.5, "y":1},
+                {"label":"P", "x":10.5, "y":1},
+                {"label":"[{", "x":11.5, "y":1},
+                {"label":"]}", "x":12.5, "y":1},
+                {"label":"\\|", "x":13.5, "y":1, "w":1.5},
+                {"label":"Home", "x":15, "y":1},
+
+                {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
+                {"label":"A", "x":1.75, "y":2},
+                {"label":"S", "x":2.75, "y":2},
+                {"label":"D", "x":3.75, "y":2},
+                {"label":"F", "x":4.75, "y":2},
+                {"label":"G", "x":5.75, "y":2},
+                {"label":"H", "x":6.75, "y":2},
+                {"label":"J", "x":7.75, "y":2},
+                {"label":"K", "x":8.75, "y":2},
+                {"label":"L", "x":9.75, "y":2},
+                {"label":";:", "x":10.75, "y":2},
+                {"label":"'\"", "x":11.75, "y":2},
+                {"label":"Enter", "x":12.75, "y":2, "w":2.25},
+                {"label":"PgUp", "x":15, "y":2},
+
+                {"label":"Shift", "x":0, "y":3, "w":2.25},
+                {"label":"Z", "x":2.25, "y":3},
+                {"label":"X", "x":3.25, "y":3},
+                {"label":"C", "x":4.25, "y":3},
+                {"label":"V", "x":5.25, "y":3},
+                {"label":"B", "x":6.25, "y":3},
+                {"label":"N", "x":7.25, "y":3},
+                {"label":"M", "x":8.25, "y":3},
+                {"label":",<", "x":9.25, "y":3},
+                {"label":".>", "x":10.25, "y":3},
+                {"label":"/?", "x":11.25, "y":3},
+                {"label":"Shift", "x":12.25, "y":3, "w":1.75},
+                {"label":"\u2191", "x":14, "y":3},
+                {"label":"PgDn", "x":15, "y":3},
+
+                {"label":"Ctrl", "x":0, "y":4, "w":1.5},
+                {"label":"Win", "x":1.5, "y":4},
+                {"label":"Alt", "x":2.5, "y":4, "w":1.5},
+                {"label":"Space", "x":4, "y":4, "w":7},
+                {"label":"Ctrl", "x":11, "y":4, "w":1.5},
+                {"label":"\u2190", "x":13, "y":4},
+                {"label":"\u2193", "x":14, "y":4},
+                {"label":"\u2192", "x":15, "y":4}
+            ]
+        },
+        "LAYOUT_65_ansi_blocker_tsangan_split_bs": {
+            "layout": [
+                {"label":"`~", "x":0, "y":0},
+                {"label":"1!", "x":1, "y":0},
+                {"label":"2@", "x":2, "y":0},
+                {"label":"3#", "x":3, "y":0},
+                {"label":"4$", "x":4, "y":0},
+                {"label":"5%", "x":5, "y":0},
+                {"label":"6^", "x":6, "y":0},
+                {"label":"7&", "x":7, "y":0},
+                {"label":"8*", "x":8, "y":0},
+                {"label":"9(", "x":9, "y":0},
+                {"label":"0)", "x":10, "y":0},
+                {"label":"-_", "x":11, "y":0},
+                {"label":"=+", "x":12, "y":0},
+                {"label":"Bksp", "x":13, "y":0},
+                {"label":"Bksp", "x":14, "y":0},
+                {"label":"Delete", "x":15, "y":0},
+
+                {"label":"Tab", "x":0, "y":1, "w":1.5},
+                {"label":"Q", "x":1.5, "y":1},
+                {"label":"W", "x":2.5, "y":1},
+                {"label":"E", "x":3.5, "y":1},
+                {"label":"R", "x":4.5, "y":1},
+                {"label":"T", "x":5.5, "y":1},
+                {"label":"Y", "x":6.5, "y":1},
+                {"label":"U", "x":7.5, "y":1},
+                {"label":"I", "x":8.5, "y":1},
+                {"label":"O", "x":9.5, "y":1},
+                {"label":"P", "x":10.5, "y":1},
+                {"label":"[{", "x":11.5, "y":1},
+                {"label":"]}", "x":12.5, "y":1},
+                {"label":"\\|", "x":13.5, "y":1, "w":1.5},
+                {"label":"Home", "x":15, "y":1},
+
+                {"label":"Caps Lock", "x":0, "y":2, "w":1.75},
+                {"label":"A", "x":1.75, "y":2},
+                {"label":"S", "x":2.75, "y":2},
+                {"label":"D", "x":3.75, "y":2},
+                {"label":"F", "x":4.75, "y":2},
+                {"label":"G", "x":5.75, "y":2},
+                {"label":"H", "x":6.75, "y":2},
+                {"label":"J", "x":7.75, "y":2},
+                {"label":"K", "x":8.75, "y":2},
+                {"label":"L", "x":9.75, "y":2},
+                {"label":";:", "x":10.75, "y":2},
+                {"label":"'\"", "x":11.75, "y":2},
+                {"label":"Enter", "x":12.75, "y":2, "w":2.25},
+                {"label":"PgUp", "x":15, "y":2},
+
+                {"label":"Shift", "x":0, "y":3, "w":2.25},
+                {"label":"Z", "x":2.25, "y":3},
+                {"label":"X", "x":3.25, "y":3},
+                {"label":"C", "x":4.25, "y":3},
+                {"label":"V", "x":5.25, "y":3},
+                {"label":"B", "x":6.25, "y":3},
+                {"label":"N", "x":7.25, "y":3},
+                {"label":"M", "x":8.25, "y":3},
+                {"label":",<", "x":9.25, "y":3},
+                {"label":".>", "x":10.25, "y":3},
+                {"label":"/?", "x":11.25, "y":3},
+                {"label":"Shift", "x":12.25, "y":3, "w":1.75},
+                {"label":"\u2191", "x":14, "y":3},
+                {"label":"PgDn", "x":15, "y":3},
+
+                {"label":"Ctrl", "x":0, "y":4, "w":1.5},
+                {"label":"Win", "x":1.5, "y":4},
+                {"label":"Alt", "x":2.5, "y":4, "w":1.5},
+                {"label":"Space", "x":4, "y":4, "w":7},
+                {"label":"Ctrl", "x":11, "y":4, "w":1.5},
+                {"label":"\u2190", "x":13, "y":4},
+                {"label":"\u2193", "x":14, "y":4},
                 {"label":"\u2192", "x":15, "y":4}
             ]
         }
     }
-}
+}

+ 14 - 12
keyboards/studiokestra/nascent/keymaps/default/keymap.c

@@ -24,18 +24,20 @@ enum layer_names {
 
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 
-
     [_BASE] = LAYOUT_all(
-    KC_ESC,  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_BSPC,    KC_DEL,
-    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_HOME,
-    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_PGUP,
-    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH,  KC_RSFT,    KC_UP,      KC_PGDN,
-    KC_LCTL, KC_LGUI, KC_LALT,          KC_SPC,  KC_SPC,           KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN,  KC_RGHT),
+        KC_ESC,  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_BSPC, KC_DEL,
+        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_HOME,
+        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_PGUP,
+        KC_LSFT,          KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_UP,            KC_PGDN,
+        KC_LCTL, KC_LGUI, KC_LALT,                   KC_SPC,  KC_SPC,  KC_RALT,                   KC_RCTL,          KC_LEFT, KC_DOWN, KC_RGHT
+    ),
 
     [_FN] = LAYOUT_all(
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-};
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,          KC_TRNS,
+        KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS
+    ),
+
+};

+ 28 - 20
keyboards/studiokestra/nascent/keymaps/via/keymap.c

@@ -27,27 +27,35 @@ enum layer_names {
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 
     [_BASE] = LAYOUT_all(
-    KC_ESC,  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_BSPC,    KC_DEL,
-    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_HOME,
-    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_PGUP,
-    KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH,  KC_RSFT,    KC_UP,      KC_PGDN,
-    KC_LCTL, KC_LGUI, KC_LALT,          KC_SPC,  KC_SPC,           KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN,  KC_RGHT),
+        KC_ESC,  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_BSPC, KC_DEL,
+        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_HOME,
+        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_PGUP,
+        KC_LSFT,          KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_UP,            KC_PGDN,
+        KC_LCTL, KC_LGUI, KC_LALT,                   KC_SPC,  KC_SPC,  KC_RALT,                   KC_RCTL,          KC_LEFT, KC_DOWN, KC_RGHT
+    ),
+
     [_FN1] = LAYOUT_all(
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,          KC_TRNS,
+        KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS
+    ),
+
     [_FN2] = LAYOUT_all(
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,          KC_TRNS,
+        KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS
+    ),
+
     [_FN3] = LAYOUT_all(
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
-    KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,          KC_TRNS,
+        KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_TRNS,
+        KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS
+    ),
+
 };

+ 112 - 22
keyboards/studiokestra/nascent/nascent.h

@@ -18,29 +18,119 @@
 
 #include "quantum.h"
 
-/* This is a shortcut to help you visually see your layout.
- *
- * The first section contains all of the arguments representing the physical
- * layout of the board and position of the keys.
- *
- * The second converts the arguments into a two-dimensional array which
- * represents the switch matrix.
+#define ___ KC_NO
+
+/*
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐   ┌───────┐
+ * │00 │10 │01 │11 │02 │12 │03 │13 │04 │14 │05 │15 │06 │16 │07 │17 │   │07     │ 2u Backspace
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤   └───────┘
+ * │20   │30 │21 │31 │22 │32 │23 │33 │24 │34 │25 │35 │26 │27   │37 │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
+ * │40    │50 │41 │51 │42 │52 │43 │53 │44 │54 │45 │55 │47      │57 │
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
+ * │60      │61 │71 │62 │72 │63 │73 │64 │74 │65 │75 │66    │67 │77 │
+ * ├─────┬──┴┬──┴──┬┴───┴───┴──┬┴──┬┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤
+ * │80   │90 │81   │82         │83 │84         │85   │ │86 │87 │97 │
+ * └─────┴───┴─────┴───────────┴───┴───────────┴─────┘ └───┴───┴───┘
+ * ┌─────┬───┬─────┬───────────────────────────┬─────┐
+ * │80   │90 │81   │83                         │85   │ Tsangan
+ * └─────┴───┴─────┴───────────────────────────┴─────┘
+ * ┌────┬────┬────┬────────────────────────┬────┬────┐
+ * │80  │90  │81  │83                      │84  │85  │ Standard
+ * └────┴────┴────┴────────────────────────┴────┴────┘
  */
+
 #define LAYOUT_all(\
-    k000, k100, k001, k101, k002, k102, k003, k103, k004, k104, k005, k105, k006, k106, k007, k107, \
-    k200, k300, k201, k301, k202, k302, k203, k303, k204, k304, k205, k305, k206,       k207, k307, \
-    k400, k500, k401, k501, k402, k502, k403, k503, k404, k504, k405, k505,             k407, k507, \
-    k600,       k601, k701, k602, k702, k603, k703, k604, k704, k605, k705, k606,       k607, k707,  \
-    k800, k900, k801,       k802,       k803,       k804,       k805,       k806,       k807, k907  \
+    K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16, K07, K17, \
+    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K27, K37, \
+    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55,      K47, K57, \
+    K60,      K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K66, K67, K77, \
+    K80, K90, K81,           K82, K83, K84,           K85,      K86, K87, K97  \
+) { \
+    { K00, K01, K02, K03, K04, K05, K06, K07 }, \
+    { K10, K11, K12, K13, K14, K15, K16, K17 }, \
+    { K20, K21, K22, K23, K24, K25, K26, K27 }, \
+    { K30, K31, K32, K33, K34, K35, ___, K37 }, \
+    { K40, K41, K42, K43, K44, K45, ___, K47 }, \
+    { K50, K51, K52, K53, K54, K55, ___, K57 }, \
+    { K60, K61, K62, K63, K64, K65, K66, K67 }, \
+    { ___, K71, K72, K73, K74, K75, ___, K77 }, \
+    { K80, K81, K82, K83, K84, K85, K86, K87 }, \
+    { K90, ___, ___, ___, ___, ___, ___, K97 } \
+}
+
+#define LAYOUT_65_ansi_blocker(\
+    K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K07, K17, \
+    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K27, K37, \
+    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55,      K47, K57, \
+    K60,      K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K66, K67, K77, \
+    K80, K90, K81,                K83,           K84, K85,      K86, K87, K97  \
+) { \
+    { K00, K01, K02, K03, K04, K05, K06, K07 }, \
+    { K10, K11, K12, K13, K14, K15, ___, K17 }, \
+    { K20, K21, K22, K23, K24, K25, K26, K27 }, \
+    { K30, K31, K32, K33, K34, K35, ___, K37 }, \
+    { K40, K41, K42, K43, K44, K45, ___, K47 }, \
+    { K50, K51, K52, K53, K54, K55, ___, K57 }, \
+    { K60, K61, K62, K63, K64, K65, K66, K67 }, \
+    { ___, K71, K72, K73, K74, K75, ___, K77 }, \
+    { K80, K81, ___, K83, K84, K85, K86, K87 }, \
+    { K90, ___, ___, ___, ___, ___, ___, K97 } \
+}
+
+#define LAYOUT_65_ansi_blocker_split_bs(\
+    K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16, K07, K17, \
+    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K27, K37, \
+    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55,      K47, K57, \
+    K60,      K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K66, K67, K77, \
+    K80, K90, K81,                K83,           K84, K85,      K86, K87, K97  \
+) { \
+    { K00, K01, K02, K03, K04, K05, K06, K07 }, \
+    { K10, K11, K12, K13, K14, K15, K16, K17 }, \
+    { K20, K21, K22, K23, K24, K25, K26, K27 }, \
+    { K30, K31, K32, K33, K34, K35, ___, K37 }, \
+    { K40, K41, K42, K43, K44, K45, ___, K47 }, \
+    { K50, K51, K52, K53, K54, K55, ___, K57 }, \
+    { K60, K61, K62, K63, K64, K65, K66, K67 }, \
+    { ___, K71, K72, K73, K74, K75, ___, K77 }, \
+    { K80, K81, ___, K83, K84, K85, K86, K87 }, \
+    { K90, ___, ___, ___, ___, ___, ___, K97 } \
+}
+
+#define LAYOUT_65_ansi_blocker_tsangan(\
+    K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K07, K17, \
+    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K27, K37, \
+    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55,      K47, K57, \
+    K60,      K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K66, K67, K77, \
+    K80, K90, K81,                K83,                K85,      K86, K87, K97  \
+) { \
+    { K00, K01, K02, K03, K04, K05, K06, K07 }, \
+    { K10, K11, K12, K13, K14, K15, ___, K17 }, \
+    { K20, K21, K22, K23, K24, K25, K26, K27 }, \
+    { K30, K31, K32, K33, K34, K35, ___, K37 }, \
+    { K40, K41, K42, K43, K44, K45, ___, K47 }, \
+    { K50, K51, K52, K53, K54, K55, ___, K57 }, \
+    { K60, K61, K62, K63, K64, K65, K66, K67 }, \
+    { ___, K71, K72, K73, K74, K75, ___, K77 }, \
+    { K80, K81, ___, K83, ___, K85, K86, K87 }, \
+    { K90, ___, ___, ___, ___, ___, ___, K97 } \
+}
+
+#define LAYOUT_65_ansi_blocker_tsangan_split_bs(\
+    K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16, K07, K17, \
+    K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K27, K37, \
+    K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55,      K47, K57, \
+    K60,      K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K66, K67, K77, \
+    K80, K90, K81,                K83,                K85,      K86, K87, K97  \
 ) { \
-    { k000,  k001,  k002,  k003,  k004,  k005,  k006,  k007 }, \
-    { k100,  k101,  k102,  k103,  k104,  k105,  k106,  k107 }, \
-    { k200,  k201,  k202,  k203,  k204,  k205,  k206,  k207 }, \
-    { k300,  k301,  k302,  k303,  k304,  k305,  KC_NO, k307 }, \
-    { k400,  k401,  k402,  k403,  k404,  k405,  KC_NO, k407 }, \
-    { k500,  k501,  k502,  k503,  k504,  k505,  KC_NO, k507 }, \
-    { k600,  k601,  k602,  k603,  k604,  k605,  k606,  k607 }, \
-    { KC_NO, k701,  k702,  k703,  k704,  k705,  KC_NO, k707 }, \
-    { k800,  k801,  k802,  k803,  k804,  k805,  k806,  k807 }, \
-    { k900,  KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k907 } \
+    { K00, K01, K02, K03, K04, K05, K06, K07 }, \
+    { K10, K11, K12, K13, K14, K15, K16, K17 }, \
+    { K20, K21, K22, K23, K24, K25, K26, K27 }, \
+    { K30, K31, K32, K33, K34, K35, ___, K37 }, \
+    { K40, K41, K42, K43, K44, K45, ___, K47 }, \
+    { K50, K51, K52, K53, K54, K55, ___, K57 }, \
+    { K60, K61, K62, K63, K64, K65, K66, K67 }, \
+    { ___, K71, K72, K73, K74, K75, ___, K77 }, \
+    { K80, K81, ___, K83, ___, K85, K86, K87 }, \
+    { K90, ___, ___, ___, ___, ___, ___, K97 } \
 }