From 4e2e089b173855d61d4cc71724cc7cedfc037204 Mon Sep 17 00:00:00 2001
From: James Young <18669334+noroadsleft@users.noreply.github.com>
Date: Sat, 6 May 2023 15:07:17 -0700
Subject: [PATCH] Kastenwagen 1840 Layout Addition (#20747)

* add matrix_diagram.md

* info.json: apply friendly formatting

* add LAYOUT_7u_space
---
 .../nopunin10did/kastenwagen1840/info.json    | 205 ++++++++++++------
 .../kastenwagen1840/matrix_diagram.md         |  17 ++
 2 files changed, 157 insertions(+), 65 deletions(-)
 create mode 100644 keyboards/nopunin10did/kastenwagen1840/matrix_diagram.md

diff --git a/keyboards/nopunin10did/kastenwagen1840/info.json b/keyboards/nopunin10did/kastenwagen1840/info.json
index 4f6a03771d..a43f84fa57 100644
--- a/keyboards/nopunin10did/kastenwagen1840/info.json
+++ b/keyboards/nopunin10did/kastenwagen1840/info.json
@@ -24,80 +24,155 @@
     "layouts": {
         "LAYOUT_all": {
             "layout": [
-                {"matrix": [0, 0], "x": 0, "y": 0},
-                {"matrix": [1, 0], "x": 1, "y": 0},
-                {"matrix": [0, 1], "x": 2, "y": 0},
-                {"matrix": [1, 1], "x": 3, "y": 0},
-                {"matrix": [0, 2], "x": 4, "y": 0},
-                {"matrix": [1, 2], "x": 5, "y": 0},
-                {"matrix": [0, 3], "x": 6, "y": 0},
-                {"matrix": [1, 3], "x": 7, "y": 0},
-                {"matrix": [0, 4], "x": 8, "y": 0},
-                {"matrix": [1, 4], "x": 9, "y": 0},
-                {"matrix": [0, 5], "x": 10, "y": 0},
-                {"matrix": [1, 5], "x": 11, "y": 0},
-                {"matrix": [0, 6], "x": 12, "y": 0, "w": 1.75},
+                {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+                {"label": "Q", "matrix": [1, 0], "x": 1, "y": 0},
+                {"label": "W", "matrix": [0, 1], "x": 2, "y": 0},
+                {"label": "E", "matrix": [1, 1], "x": 3, "y": 0},
+                {"label": "R", "matrix": [0, 2], "x": 4, "y": 0},
+                {"label": "T", "matrix": [1, 2], "x": 5, "y": 0},
+                {"label": "Y", "matrix": [0, 3], "x": 6, "y": 0},
+                {"label": "U", "matrix": [1, 3], "x": 7, "y": 0},
+                {"label": "I", "matrix": [0, 4], "x": 8, "y": 0},
+                {"label": "O", "matrix": [1, 4], "x": 9, "y": 0},
+                {"label": "P", "matrix": [0, 5], "x": 10, "y": 0},
+                {"label": "[", "matrix": [1, 5], "x": 11, "y": 0},
+                {"label": "Backspace", "matrix": [0, 6], "x": 12, "y": 0, "w": 1.75},
 
-                {"matrix": [0, 7], "x": 14.25, "y": 0},
-                {"matrix": [1, 7], "x": 15.25, "y": 0},
-                {"matrix": [0, 8], "x": 16.25, "y": 0},
-                {"matrix": [1, 8], "x": 17.25, "y": 0},
+                {"label": "7", "matrix": [0, 7], "x": 14.25, "y": 0},
+                {"label": "8", "matrix": [1, 7], "x": 15.25, "y": 0},
+                {"label": "9", "matrix": [0, 8], "x": 16.25, "y": 0},
+                {"label": "-", "matrix": [1, 8], "x": 17.25, "y": 0},
 
-                {"matrix": [2, 0], "x": 0, "y": 1, "w": 1.25},
-                {"matrix": [3, 0], "x": 1.25, "y": 1},
-                {"matrix": [2, 1], "x": 2.25, "y": 1},
-                {"matrix": [3, 1], "x": 3.25, "y": 1},
-                {"matrix": [2, 2], "x": 4.25, "y": 1},
-                {"matrix": [3, 2], "x": 5.25, "y": 1},
-                {"matrix": [2, 3], "x": 6.25, "y": 1},
-                {"matrix": [3, 3], "x": 7.25, "y": 1},
-                {"matrix": [2, 4], "x": 8.25, "y": 1},
-                {"matrix": [3, 4], "x": 9.25, "y": 1},
-                {"matrix": [2, 5], "x": 10.25, "y": 1},
-                {"matrix": [3, 5], "x": 11.25, "y": 1},
-                {"matrix": [2, 6], "x": 12.25, "y": 1, "w": 1.5},
+                {"label": "Tab", "matrix": [2, 0], "x": 0, "y": 1, "w": 1.25},
+                {"label": "A", "matrix": [3, 0], "x": 1.25, "y": 1},
+                {"label": "S", "matrix": [2, 1], "x": 2.25, "y": 1},
+                {"label": "D", "matrix": [3, 1], "x": 3.25, "y": 1},
+                {"label": "F", "matrix": [2, 2], "x": 4.25, "y": 1},
+                {"label": "G", "matrix": [3, 2], "x": 5.25, "y": 1},
+                {"label": "H", "matrix": [2, 3], "x": 6.25, "y": 1},
+                {"label": "J", "matrix": [3, 3], "x": 7.25, "y": 1},
+                {"label": "K", "matrix": [2, 4], "x": 8.25, "y": 1},
+                {"label": "L", "matrix": [3, 4], "x": 9.25, "y": 1},
+                {"label": ";", "matrix": [2, 5], "x": 10.25, "y": 1},
+                {"label": "'", "matrix": [3, 5], "x": 11.25, "y": 1},
+                {"label": "Enter", "matrix": [2, 6], "x": 12.25, "y": 1, "w": 1.5},
 
-                {"matrix": [2, 7], "x": 14.25, "y": 1},
-                {"matrix": [3, 7], "x": 15.25, "y": 1},
-                {"matrix": [2, 8], "x": 16.25, "y": 1},
-                {"matrix": [3, 8], "x": 17.25, "y": 1},
+                {"label": "4", "matrix": [2, 7], "x": 14.25, "y": 1},
+                {"label": "5", "matrix": [3, 7], "x": 15.25, "y": 1},
+                {"label": "6", "matrix": [2, 8], "x": 16.25, "y": 1},
+                {"label": "+", "matrix": [3, 8], "x": 17.25, "y": 1},
 
-                {"matrix": [4, 0], "x": 0, "y": 2, "w": 1.75},
-                {"matrix": [5, 0], "x": 1.75, "y": 2},
-                {"matrix": [4, 1], "x": 2.75, "y": 2},
-                {"matrix": [5, 1], "x": 3.75, "y": 2},
-                {"matrix": [4, 2], "x": 4.75, "y": 2},
-                {"matrix": [5, 2], "x": 5.75, "y": 2},
-                {"matrix": [4, 3], "x": 6.75, "y": 2},
-                {"matrix": [5, 3], "x": 7.75, "y": 2},
-                {"matrix": [4, 4], "x": 8.75, "y": 2},
-                {"matrix": [5, 4], "x": 9.75, "y": 2},
-                {"matrix": [4, 5], "x": 10.75, "y": 2},
-                {"matrix": [5, 5], "x": 11.75, "y": 2, "w": 1.25},
+                {"label": "Shift", "matrix": [4, 0], "x": 0, "y": 2, "w": 1.75},
+                {"label": "Z", "matrix": [5, 0], "x": 1.75, "y": 2},
+                {"label": "X", "matrix": [4, 1], "x": 2.75, "y": 2},
+                {"label": "C", "matrix": [5, 1], "x": 3.75, "y": 2},
+                {"label": "V", "matrix": [4, 2], "x": 4.75, "y": 2},
+                {"label": "B", "matrix": [5, 2], "x": 5.75, "y": 2},
+                {"label": "N", "matrix": [4, 3], "x": 6.75, "y": 2},
+                {"label": "M", "matrix": [5, 3], "x": 7.75, "y": 2},
+                {"label": ",", "matrix": [4, 4], "x": 8.75, "y": 2},
+                {"label": ".", "matrix": [5, 4], "x": 9.75, "y": 2},
+                {"label": "/", "matrix": [4, 5], "x": 10.75, "y": 2},
+                {"label": "Shift", "matrix": [5, 5], "x": 11.75, "y": 2, "w": 1.25},
 
-                {"matrix": [4, 6], "x": 13.125, "y": 2.125},
+                {"label": "\u2191", "matrix": [4, 6], "x": 13.125, "y": 2.125},
 
-                {"matrix": [4, 7], "x": 14.25, "y": 2},
-                {"matrix": [5, 7], "x": 15.25, "y": 2},
-                {"matrix": [4, 8], "x": 16.25, "y": 2},
-                {"matrix": [5, 8], "x": 17.25, "y": 2},
+                {"label": "1", "matrix": [4, 7], "x": 14.25, "y": 2},
+                {"label": "2", "matrix": [5, 7], "x": 15.25, "y": 2},
+                {"label": "3", "matrix": [4, 8], "x": 16.25, "y": 2},
+                {"label": "*", "matrix": [5, 8], "x": 17.25, "y": 2},
 
-                {"matrix": [6, 0], "x": 0, "y": 3, "w": 1.25},
-                {"matrix": [7, 0], "x": 1.25, "y": 3, "w": 1.25},
-                {"matrix": [6, 1], "x": 2.5, "y": 3},
-                {"matrix": [7, 1], "x": 3.5, "y": 3, "w": 2.75},
-                {"matrix": [7, 3], "x": 6.25, "y": 3, "w": 2.25},
-                {"matrix": [6, 4], "x": 8.5, "y": 3},
-                {"matrix": [7, 4], "x": 9.5, "y": 3, "w": 1.25},
-                {"matrix": [6, 5], "x": 10.75, "y": 3, "w": 1.25},
+                {"label": "Ctrl", "matrix": [6, 0], "x": 0, "y": 3, "w": 1.25},
+                {"label": "Alt", "matrix": [7, 0], "x": 1.25, "y": 3, "w": 1.25},
+                {"label": "Fn2", "matrix": [6, 1], "x": 2.5, "y": 3},
+                {"label": "Fn2/Space", "matrix": [7, 1], "x": 3.5, "y": 3, "w": 2.75},
+                {"label": "Fn3/Space", "matrix": [7, 3], "x": 6.25, "y": 3, "w": 2.25},
+                {"label": "Fn3", "matrix": [6, 4], "x": 8.5, "y": 3},
+                {"label": "GUI/Alt", "matrix": [7, 4], "x": 9.5, "y": 3, "w": 1.25},
+                {"label": "Fn", "matrix": [6, 5], "x": 10.75, "y": 3, "w": 1.25},
 
-                {"matrix": [7, 5], "x": 12.125, "y": 3.125},
-                {"matrix": [7, 6], "x": 13.125, "y": 3.125},
-                {"matrix": [6, 7], "x": 14.125, "y": 3.125},
+                {"label": "\u2190", "matrix": [7, 5], "x": 12.125, "y": 3.125},
+                {"label": "\u2193", "matrix": [7, 6], "x": 13.125, "y": 3.125},
+                {"label": "\u2192", "matrix": [6, 7], "x": 14.125, "y": 3.125},
 
-                {"matrix": [7, 7], "x": 15.25, "y": 3},
-                {"matrix": [6, 8], "x": 16.25, "y": 3},
-                {"matrix": [7, 8], "x": 17.25, "y": 3}
+                {"label": "0", "matrix": [7, 7], "x": 15.25, "y": 3},
+                {"label": ".", "matrix": [6, 8], "x": 16.25, "y": 3},
+                {"label": "Fn3/Enter", "matrix": [7, 8], "x": 17.25, "y": 3}
+            ]
+        },
+        "LAYOUT_7u_space": {
+            "layout": [
+                {"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
+                {"label": "Q", "matrix": [1, 0], "x": 1, "y": 0},
+                {"label": "W", "matrix": [0, 1], "x": 2, "y": 0},
+                {"label": "E", "matrix": [1, 1], "x": 3, "y": 0},
+                {"label": "R", "matrix": [0, 2], "x": 4, "y": 0},
+                {"label": "T", "matrix": [1, 2], "x": 5, "y": 0},
+                {"label": "Y", "matrix": [0, 3], "x": 6, "y": 0},
+                {"label": "U", "matrix": [1, 3], "x": 7, "y": 0},
+                {"label": "I", "matrix": [0, 4], "x": 8, "y": 0},
+                {"label": "O", "matrix": [1, 4], "x": 9, "y": 0},
+                {"label": "P", "matrix": [0, 5], "x": 10, "y": 0},
+                {"label": "[", "matrix": [1, 5], "x": 11, "y": 0},
+                {"label": "Backspace", "matrix": [0, 6], "x": 12, "y": 0, "w": 1.75},
+
+                {"label": "7", "matrix": [0, 7], "x": 14.25, "y": 0},
+                {"label": "8", "matrix": [1, 7], "x": 15.25, "y": 0},
+                {"label": "9", "matrix": [0, 8], "x": 16.25, "y": 0},
+                {"label": "-", "matrix": [1, 8], "x": 17.25, "y": 0},
+
+                {"label": "Tab", "matrix": [2, 0], "x": 0, "y": 1, "w": 1.25},
+                {"label": "A", "matrix": [3, 0], "x": 1.25, "y": 1},
+                {"label": "S", "matrix": [2, 1], "x": 2.25, "y": 1},
+                {"label": "D", "matrix": [3, 1], "x": 3.25, "y": 1},
+                {"label": "F", "matrix": [2, 2], "x": 4.25, "y": 1},
+                {"label": "G", "matrix": [3, 2], "x": 5.25, "y": 1},
+                {"label": "H", "matrix": [2, 3], "x": 6.25, "y": 1},
+                {"label": "J", "matrix": [3, 3], "x": 7.25, "y": 1},
+                {"label": "K", "matrix": [2, 4], "x": 8.25, "y": 1},
+                {"label": "L", "matrix": [3, 4], "x": 9.25, "y": 1},
+                {"label": ";", "matrix": [2, 5], "x": 10.25, "y": 1},
+                {"label": "'", "matrix": [3, 5], "x": 11.25, "y": 1},
+                {"label": "Enter", "matrix": [2, 6], "x": 12.25, "y": 1, "w": 1.5},
+
+                {"label": "4", "matrix": [2, 7], "x": 14.25, "y": 1},
+                {"label": "5", "matrix": [3, 7], "x": 15.25, "y": 1},
+                {"label": "6", "matrix": [2, 8], "x": 16.25, "y": 1},
+                {"label": "+", "matrix": [3, 8], "x": 17.25, "y": 1},
+
+                {"label": "Shift", "matrix": [4, 0], "x": 0, "y": 2, "w": 1.75},
+                {"label": "Z", "matrix": [5, 0], "x": 1.75, "y": 2},
+                {"label": "X", "matrix": [4, 1], "x": 2.75, "y": 2},
+                {"label": "C", "matrix": [5, 1], "x": 3.75, "y": 2},
+                {"label": "V", "matrix": [4, 2], "x": 4.75, "y": 2},
+                {"label": "B", "matrix": [5, 2], "x": 5.75, "y": 2},
+                {"label": "N", "matrix": [4, 3], "x": 6.75, "y": 2},
+                {"label": "M", "matrix": [5, 3], "x": 7.75, "y": 2},
+                {"label": ",", "matrix": [4, 4], "x": 8.75, "y": 2},
+                {"label": ".", "matrix": [5, 4], "x": 9.75, "y": 2},
+                {"label": "/", "matrix": [4, 5], "x": 10.75, "y": 2},
+                {"label": "Shift", "matrix": [5, 5], "x": 11.75, "y": 2, "w": 1.25},
+
+                {"label": "\u2191", "matrix": [4, 6], "x": 13.125, "y": 2.125},
+
+                {"label": "1", "matrix": [4, 7], "x": 14.25, "y": 2},
+                {"label": "2", "matrix": [5, 7], "x": 15.25, "y": 2},
+                {"label": "3", "matrix": [4, 8], "x": 16.25, "y": 2},
+                {"label": "*", "matrix": [5, 8], "x": 17.25, "y": 2},
+
+                {"label": "Ctrl", "matrix": [6, 0], "x": 0, "y": 3, "w": 1.25},
+                {"label": "Alt", "matrix": [7, 0], "x": 1.25, "y": 3, "w": 1.25},
+                {"label": "Fn2/Space", "matrix": [7, 1], "x": 2.5, "y": 3, "w": 7},
+                {"label": "GUI/Alt", "matrix": [7, 4], "x": 9.5, "y": 3, "w": 1.25},
+                {"label": "Fn", "matrix": [6, 5], "x": 10.75, "y": 3, "w": 1.25},
+
+                {"label": "\u2190", "matrix": [7, 5], "x": 12.125, "y": 3.125},
+                {"label": "\u2193", "matrix": [7, 6], "x": 13.125, "y": 3.125},
+                {"label": "\u2192", "matrix": [6, 7], "x": 14.125, "y": 3.125},
+
+                {"label": "0", "matrix": [7, 7], "x": 15.25, "y": 3},
+                {"label": ".", "matrix": [6, 8], "x": 16.25, "y": 3},
+                {"label": "Fn3/Enter", "matrix": [7, 8], "x": 17.25, "y": 3}
             ]
         }
     }
diff --git a/keyboards/nopunin10did/kastenwagen1840/matrix_diagram.md b/keyboards/nopunin10did/kastenwagen1840/matrix_diagram.md
new file mode 100644
index 0000000000..7f7fbe619a
--- /dev/null
+++ b/keyboards/nopunin10did/kastenwagen1840/matrix_diagram.md
@@ -0,0 +1,17 @@
+# Matrix Diagram for Kastenwagen 1840
+
+```
+┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬──────┐  ┌───┬───┬───┬───┐
+│00 │10 │01 │11 │02 │12 │03 │13 │04 │14 │05 │15 │06    │  │07 │17 │08 │18 │
+├───┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬─────┤  ├───┼───┼───┼───┤
+│20  │30 │21 │31 │22 │32 │23 │33 │24 │34 │25 │35 │26   │  │27 │37 │28 │38 │
+├────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴──┬──┘  ├───┼───┼───┼───┤   ┌───┐
+│40    │50 │41 │51 │42 │52 │43 │53 │44 │54 │45 │55  │┌───┐│47 │57 │48 │58 │   │   │
+├────┬─┴──┬┴──┬┴───┴───┴─┬─┴───┴──┬┴──┬┴───┼───┴┬───┘│46 │└───┼───┼───┼───┤   │78 │ 2u Numpad Enter
+│60  │70  │61 │71        │73      │64 │74  │65  │┌───┼───┼───┐│77 │68 │78 │   │   │
+└────┴────┴───┴──────────┴────────┴───┴────┴────┘│75 │76 │67 │└───┴───┴───┘   └───┘
+          ┌─ 7u Spacebar ─────────────┐          └───┴───┴───┘┌───────┐
+          ┌───────────────────────────┐                       │77     │ 2u Numpad Zero
+          │71                         │                       └───────┘
+          └───────────────────────────┘
+```