* Migrate `LAYOUTS` to data driven, 0-9
* Migrate `LAYOUTS` to data driven, A
* Migrate `LAYOUTS` to data driven, B
* Migrate `LAYOUTS` to data driven, C
* Migrate `LAYOUTS` to data driven, D
* Migrate `LAYOUTS` to data driven, E
* Migrate `LAYOUTS` to data driven, F
* Migrate `LAYOUTS` to data driven, G
* Migrate `LAYOUTS` to data driven, H
* Migrate `LAYOUTS` to data driven, handwired
* Migrate `LAYOUTS` to data driven, I
* Migrate `LAYOUTS` to data driven, J
* Migrate `LAYOUTS` to data driven, K
* Migrate `LAYOUTS` to data driven, L
* Migrate `LAYOUTS` to data driven, M
* Migrate `LAYOUTS` to data driven, N
* Migrate `LAYOUTS` to data driven, O
* Migrate `LAYOUTS` to data driven, P
* Migrate `LAYOUTS` to data driven, Q
* Migrate `LAYOUTS` to data driven, R
* Migrate `LAYOUTS` to data driven, S
* Migrate `LAYOUTS` to data driven, T
* Migrate `LAYOUTS` to data driven, U
* Migrate `LAYOUTS` to data driven, V
* Migrate `LAYOUTS` to data driven, W
* Migrate `LAYOUTS` to data driven, X
* Migrate `LAYOUTS` to data driven, Y
* Migrate `LAYOUTS` to data driven, Z
* mj6xy.h: convert tabs to spaces
* info.json: convert tabs to spaces
* info.json: apply friendly formatting
Whitespace-only change.
* rename LAYOUT_60_ansi_7u_spc to LAYOUT_60_ansi_tsangan
- rename `60_ansi_7u_spc` keymap to `default_ansi_tsangan`
* add K31 position to LAYOUT_60_iso
* rename LAYOUT_60_iso_7u_spc_split_rshift to LAYOUT_60_iso_tsangan_split_rshift
- rename `60_iso_7u_spc_split_rshift` keymap to `default_iso_tsangan_split_rshift`
* add K31 position to LAYOUT_60_iso_arrow
* add K31 position to LAYOUT_60_iso_arrow_6u_spc
* add K31 position to LAYOUT_60_iso_arrow_3u_spc
* refactor LAYOUT_60_iso_7u_spc into LAYOUT_60_iso_tsangan
- add K31 position to layout macro
- rename `60_iso_7u_spc` keymap to `default_iso_tsangan`
* add K31 position to LAYOUT_64_iso
- rename `64_iso` keymap to `default_64_iso`
* add K31 position to LAYOUT_64_iso_3u_spc
- rename `64_iso_3u_spc` keymap to `default_64_iso_3u_spc`
* add K31 position to LAYOUT_64_iso_split_3u_spc
- rename `64_iso_split_3u_spc` keymap to `default_64_iso_split_3u_spc`
* remove LAYOUT_60_iso_1u_lshift_split_rshift macro and keymap
Functionally identical to `LAYOUT_60_iso_split_rshift`.
* remove LAYOUT_60_iso_1u_lshift_7u_spc_split_rshift macro and keymap
Functionally identical to `LAYOUT_60_iso_tsangan_split_rshift`.
* rename LAYOUT_60_ansi_7u_spc_split_bs to LAYOUT_60_ansi_tsangan_split_bs
- rename `60_ansi_7u_spc_split_bs` keymap to `default_60_ansi_tsangan_split_bs`
* add K31 position to LAYOUT_60_iso_split_bs
* rename LAYOUT_60_iso_7u_spc_split_bs_rshift to LAYOUT_60_iso_tsangan_split_bs_rshift
- rename `60_iso_7u_spc_split_bs_rshift` keymap to `default_60_iso_tsangan_split_bs_rshift`
* add K31 position to LAYOUT_60_iso_arrow_split_bs
* add K31 position to LAYOUT_60_iso_arrow_3u_spc_split_bs
- rename `60_iso_arrow_3u_spc_split_bs` keymap to `default_60_iso_arrow_3u_spc_split_bs`
* add K31 position to LAYOUT_60_iso_arrow_split_bs_3u_spc
- rename `60_iso_arrow_split_bs_3u_spc` keymap to `default_60_iso_arrow_split_bs_3u_spc`
* refactor LAYOUT_60_iso_7u_spc_split_bs into LAYOUT_60_iso_tsangan_split_bs
- add K31 position to layout macro
- rename `60_iso_7u_spc_split_bs` keymap to `default_60_iso_tsangan_split_bs`
* add K31 position to LAYOUT_64_iso_split_bs
- rename `64_iso_split_bs` keymap to `default_64_iso_split_bs`
* add K31 position to LAYOUT_64_iso_3u_spc_split_bs
rename `64_iso_3u_spc_split_bs` keymap to `default_64_iso_3u_spc_split_bs`
* add K31 position to LAYOUT_64_iso_split_bs_3u_spc
- rename `64_iso_split_bs_3u_spc` keymap to `default_64_iso_split_bs_3u_spc`
* remove LAYOUT_60_ansi_arrow_6u_spc macro and keymap
Functionally identical to `LAYOUT_60_ansi_arrow`.
* remove LAYOUT_64_ansi_6u_spc macro and keymap
Functionally identical to `LAYOUT_64_ansi`.
* remove LAYOUT_60_iso_arrow_6u_spc macro and keymap
Functionally identical to `LAYOUT_60_iso_arrow`.
* remove LAYOUT_64_iso_6u_spc macro and keymap
Functionally identical to `LAYOUT_64_iso`.
* remove LAYOUT_60_ansi_arrow_6u_spc_split_bs macro and keymap
Functionally identical to `LAYOUT_60_ansi_arrow_split_bs`.
* remove LAYOUT_64_ansi_6u_spc_split_bs macro and keymap
Functionally identical to `LAYOUT_64_ansi_split_bs`.
* remove LAYOUT_60_iso_arrow_6u_spc_split_bs macro and keymap
Functionally identical to `LAYOUT_60_iso_arrow_split_bs`.
* remove LAYOUT_64_iso_6u_spc_split_bs macro and keymap
Functionally identical to `LAYOUT_64_iso_split_bs`.
* remove LAYOUT_60_iso_1u_lshift_split_bs_rshift macro and keymap
Functionally identical to `LAYOUT_60_iso_split_bs_rshift`.
* remove LAYOUT_60_iso_1u_lshift_7u_spc_split_bs_rshift macro and keymap
Functionally identical to `LAYOUT_60_iso_tsangan_split_bs_rshift`.
* refactor keymaps
- convert tabs to spaces
- update keycode grid alignment
* remove LAYOUT_60_ansi_arrow_3u_spc macro and keymap
Subset of `LAYOUT_60_ansi_arrow_3u_spc_split_bs`.
* remove LAYOUT_60_iso_arrow_3u_spc macro and keymap
Subset of `LAYOUT_60_iso_arrow_3u_spc_split_bs`.
* remove LAYOUT_60_iso_tsangan_split_bs macro and keymap
Subset of `LAYOUT_60_iso_tsangan_split_bs_rshift`.
* remove LAYOUT_60_iso_tsangan_split_rshift macro and keymap
Subset of `LAYOUT_60_iso_tsangan_split_bs_rshift`.
* remove LAYOUT_64_ansi_3u_spc macro and keymap
Subset of `LAYOUT_64_ansi_3u_spc_split_bs`.
* remove LAYOUT_64_iso_3u_spc macro and keymap
Subset of `LAYOUT_64_iso_3u_spc_split_bs`.
* remove LAYOUT_60_iso_split_bs macro and keymap
Subset of `LAYOUT_60_iso_split_bs_rshift`.
* remove LAYOUT_60_iso_split_rshift macro and keymap
Subset of `LAYOUT_60_iso_split_bs_rshift`.
* add LAYOUT_60_ansi_split_bs_rshift macro and keymap
* remove LAYOUT_60_ansi_split_bs macro and keymap
Subset of `LAYOUT_60_ansi_split_bs_rshift`.
* add LAYOUT_60_tsangan_hhkb macro and keymap
* remove LAYOUT_60_ansi_tsangan_split_bs macro and keymap
Subset of `LAYOUT_60_tsangan_hhkb`.
* standardize keymap names
Rename all keymaps per QMK guidelines (e.g. keymap using `LAYOUT_60_ansi_arrow` should be named `default_60_ansi_arrow`).
* add LAYOUT_all; refactor default keymap
Add a `LAYOUT_all` macro, and update the `default` keymap to use the new macro.
* refactor via keymap
Update the `via` keymap to match the behaviour of the `default` keymap.
* improve keyboard readme
- fix broken image reference
- improve grammar on keyboard description
- fix Hardware Availability link
- fix `make` instructions
- add bootloader and flashing instructions
* fix default_60_tsangan_hhkb keymap
Fix a keycode count mismatch.
* mj6xy.h: add matrix diagram
* KC_GESC -> QK_GESC per fauxpark
* KC_SLCK -> KC_SCRL per fauxpark
* evyd13/atom47/rev3: best guess at fixing info.json
* evyd13/atom47: best guess at fixing info.json
* eyeohdesigns/sprh: best guess at fixing info.json
* handwired/unicomp_mini_m: best guess at fixing info.json
* lazydesigners/the60/rev2: best guess at fixing info.json
* melgeek/mj6xy: best guess at fixing info.json
* pizzakeyboards/pizza65: best guess at fixing info.json
* plx: best guess at fixing info.json
* rojectcain/vault45: best guess at fixing info.json
* sidderskb/majbritt/rev2: best guess at fixing info.json
* spacey: best guess at fixing info.json