wt65_d.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. // Copyright 2022 Jason Williams (@wilba)
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #include "quantum.h"
  5. #define ____ KC_NO
  6. /*
  7. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐
  8. * │000│003│002│001│004│005│006│007│008│009│012│011│010│013│213│014│ │013 │ 2u Backspace
  9. * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤
  10. * │100 │101│102│103│104│105│106│107│108│109│110│111│112│113 │114│ │ │
  11. * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐113 │ ISO Enter
  12. * LShift │200 │201│202│203│204│205│206│207│208│209│210│211│212 │214│ │212│ │
  13. * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘
  14. * │300 │ │300 │301│302│303│304│305│306│307│308│309│310│311│312 │313│314│
  15. * └────────┘ ├────┼───┼───┴┬──┴───┴───┴───┴───┴───┴┬──┴─┬─┴─┬─┴──┬───┼───┼───┤
  16. * │400 │401│402 │403 │409 │410│411 │412│413│414│
  17. * └────┴───┴────┴───────────────────────┴────┴───┴────┴───┴───┴───┘
  18. * ┌─────┬─────┬───────────────────────────┬─────┬─────┐
  19. * │400 │402 │403 │409 │411 │ WKL
  20. * └─────┴─────┴───────────────────────────┴─────┴─────┘
  21. */
  22. #define LAYOUT_all( \
  23. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K213, K014, \
  24. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  25. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \
  26. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  27. K400, K401, K402, K403, K409, K410, K411, K412, K413, K414 \
  28. ) { \
  29. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  30. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  31. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
  32. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  33. { K400, K401, K402, K403, ____, ____, ____, ____, ____, K409, K410, K411, K412, K413, K414 } \
  34. }
  35. #define LAYOUT_65_ansi( \
  36. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K014, \
  37. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  38. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \
  39. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  40. K400, K401, K402, K403, K409, K410, K411, K412, K413, K414 \
  41. ) { \
  42. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  43. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  44. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, ____, K214 }, \
  45. { K300, ____, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  46. { K400, K401, K402, K403, ____, ____, ____, ____, ____, K409, K410, K411, K412, K413, K414 } \
  47. }
  48. #define LAYOUT_65_ansi_split_bs( \
  49. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K213, K014, \
  50. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  51. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \
  52. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  53. K400, K401, K402, K403, K409, K410, K411, K412, K413, K414 \
  54. ) { \
  55. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  56. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  57. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
  58. { K300, ____, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  59. { K400, K401, K402, K403, ____, ____, ____, ____, ____, K409, K410, K411, K412, K413, K414 } \
  60. }
  61. #define LAYOUT_65_ansi_wkl( \
  62. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K014, \
  63. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  64. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \
  65. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  66. K400, K402, K403, K409, K411, K412, K413, K414 \
  67. ) { \
  68. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  69. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  70. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, ____, K214 }, \
  71. { K300, ____, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  72. { K400, ____, K402, K403, ____, ____, ____, ____, ____, K409, ____, K411, K412, K413, K414 } \
  73. }
  74. #define LAYOUT_65_ansi_wkl_split_bs( \
  75. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K213, K014, \
  76. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  77. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \
  78. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  79. K400, K402, K403, K409, K411, K412, K413, K414 \
  80. ) { \
  81. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  82. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  83. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
  84. { K300, ____, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  85. { K400, ____, K402, K403, ____, ____, ____, ____, ____, K409, ____, K411, K412, K413, K414 } \
  86. }
  87. #define LAYOUT_65_iso( \
  88. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K014, \
  89. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, \
  90. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K113, K214, \
  91. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  92. K400, K401, K402, K403, K409, K410, K411, K412, K413, K414 \
  93. ) { \
  94. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  95. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  96. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, ____, K214 }, \
  97. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  98. { K400, K401, K402, K403, ____, ____, ____, ____, ____, K409, K410, K411, K412, K413, K414 } \
  99. }
  100. #define LAYOUT_65_iso_split_bs( \
  101. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K213, K014, \
  102. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, \
  103. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K113, K214, \
  104. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  105. K400, K401, K402, K403, K409, K410, K411, K412, K413, K414 \
  106. ) { \
  107. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  108. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  109. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
  110. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  111. { K400, K401, K402, K403, ____, ____, ____, ____, ____, K409, K410, K411, K412, K413, K414 } \
  112. }
  113. #define LAYOUT_65_iso_wkl( \
  114. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K014, \
  115. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, \
  116. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K113, K214, \
  117. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  118. K400, K402, K403, K409, K411, K412, K413, K414 \
  119. ) { \
  120. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  121. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  122. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, ____, K214 }, \
  123. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  124. { K400, ____, K402, K403, ____, ____, ____, ____, ____, K409, ____, K411, K412, K413, K414 } \
  125. }
  126. #define LAYOUT_65_iso_wkl_split_bs( \
  127. K000, K003, K002, K001, K004, K005, K006, K007, K008, K009, K012, K011, K010, K013, K213, K014, \
  128. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, \
  129. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K113, K214, \
  130. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  131. K400, K402, K403, K409, K411, K412, K413, K414 \
  132. ) { \
  133. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  134. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  135. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
  136. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  137. { K400, ____, K402, K403, ____, ____, ____, ____, ____, K409, ____, K411, K412, K413, K414 } \
  138. }