e65.h 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367
  1. #pragma once
  2. #include "quantum.h"
  3. // clang-format off
  4. // layout with all the switches supported by the PCB
  5. #define LAYOUT_all( \
  6. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  7. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  8. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  9. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  10. K400, K401, K403, K406, K410, K411, K412, K413, K414, K415 \
  11. ) { \
  12. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  13. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  14. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
  15. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
  16. { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, K412, K413, K414, K415 } \
  17. }
  18. // Ansi layout with bottom row 1.25,1.25,1,25,6.25,1.5,1.5,<-,v,->
  19. #define LAYOUT_65_all_noblocker( \
  20. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  21. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  22. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  23. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  24. K400, K401, K403, K406, K410, K412, K413, K414, K415 \
  25. ) { \
  26. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  27. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  28. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
  29. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
  30. { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, KC_NO, K412, K413, K414, K415 } \
  31. }
  32. #define LAYOUT_65_ansi_noblocker( \
  33. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  34. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  35. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  36. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  37. K400, K401, K403, K406, K410, K412, K413, K414, K415 \
  38. ) LAYOUT_65_all_noblocker( \
  39. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  40. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  41. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  42. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  43. K400, K401, K403, K406, K410, K412, K413, K414, K415 \
  44. )
  45. #define LAYOUT_65_ansi_noblocker_splitbs( \
  46. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  47. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  48. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  49. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  50. K400, K401, K403, K406, K410, K412, K413, K414, K415 \
  51. ) LAYOUT_65_all_noblocker( \
  52. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  53. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  54. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  55. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  56. K400, K401, K403, K406, K410, K412, K413, K414, K415 \
  57. )
  58. #define LAYOUT_65_iso_noblocker( \
  59. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  60. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K115, \
  61. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
  62. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  63. K400, K401, K403, K406, K410, K412, K413, K414, K415 \
  64. ) LAYOUT_65_all_noblocker( \
  65. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  66. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  67. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  68. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  69. K400, K401, K403, K406, K410, K412, K413, K414, K415 \
  70. )
  71. // Ansi layout with bottom row 1.25,1.25,1,25,6.25,1.25,1.25 blocker <-,v,->
  72. #define LAYOUT_65_all_blocker( \
  73. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  74. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  75. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  76. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  77. K400, K401, K403, K406, K410, K411, K413, K414, K415 \
  78. ) { \
  79. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  80. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  81. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
  82. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
  83. { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
  84. }
  85. #define LAYOUT_65_ansi_blocker( \
  86. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  87. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  88. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  89. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  90. K400, K401, K403, K406, K410, K411, K413, K414, K415 \
  91. ) LAYOUT_65_all_blocker( \
  92. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  93. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  94. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  95. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  96. K400, K401, K403, K406, K410, K411, K413, K414, K415 \
  97. )
  98. #define LAYOUT_65_ansi_blocker_splitbs( \
  99. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  100. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  101. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  102. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  103. K400, K401, K403, K406, K410, K411, K413, K414, K415 \
  104. ) LAYOUT_65_all_blocker( \
  105. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  106. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  107. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  108. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  109. K400, K401, K403, K406, K410, K411, K413, K414, K415 \
  110. )
  111. #define LAYOUT_65_iso_blocker( \
  112. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  113. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K115, \
  114. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
  115. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  116. K400, K401, K403, K406, K410, K411, K413, K414, K415 \
  117. ) LAYOUT_65_all_blocker( \
  118. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  119. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  120. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  121. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  122. K400, K401, K403, K406, K410, K411, K413, K414, K415 \
  123. )
  124. // ANSI layout with bottom row 1.5,1.5,7,1.5,1.5,<-,v,->
  125. #define LAYOUT_65_all_7u_noblocker( \
  126. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  127. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  128. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  129. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  130. K400, K401, K406, K410, K412, K413, K414, K415 \
  131. ) { \
  132. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  133. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  134. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
  135. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
  136. { K400, K401, KC_NO, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, KC_NO, K412, K413, K414, K415 } \
  137. }
  138. #define LAYOUT_65_ansi_7u_noblocker( \
  139. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  140. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  141. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  142. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  143. K400, K401, K406, K410, K412, K413, K414, K415 \
  144. ) LAYOUT_65_all_7u_noblocker( \
  145. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  146. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  147. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  148. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  149. K400, K401, K406, K410, K412, K413, K414, K415 \
  150. )
  151. #define LAYOUT_65_ansi_7u_noblocker_splitbs( \
  152. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  153. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  154. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  155. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  156. K400, K401, K406, K410, K412, K413, K414, K415 \
  157. ) LAYOUT_65_all_7u_noblocker( \
  158. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  159. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  160. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  161. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  162. K400, K401, K406, K410, K412, K413, K414, K415 \
  163. )
  164. #define LAYOUT_65_iso_7u_noblocker( \
  165. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  166. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K115, \
  167. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
  168. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  169. K400, K401, K406, K410, K412, K413, K414, K415 \
  170. ) LAYOUT_65_all_7u_noblocker( \
  171. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  172. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  173. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  174. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  175. K400, K401, K406, K410, K412, K413, K414, K415 \
  176. )
  177. // ANSI layout with bottom row 1.5,1,1.5,7,1.5, blocker, <-,v,->
  178. #define LAYOUT_65_all_7u_wk( \
  179. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  180. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  181. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  182. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  183. K400, K401, K402, K406, K411, K413, K414, K415 \
  184. ) { \
  185. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  186. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  187. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
  188. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
  189. { K400, K401, K402, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
  190. }
  191. #define LAYOUT_65_ansi_7u_wk( \
  192. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  193. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  194. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  195. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  196. K400, K401, K402, K406, K411, K413, K414, K415 \
  197. ) LAYOUT_65_all_7u_wk( \
  198. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  199. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  200. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  201. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  202. K400, K401, K402, K406, K411, K413, K414, K415 \
  203. )
  204. #define LAYOUT_65_ansi_7u_wk_splitbs( \
  205. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  206. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  207. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  208. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  209. K400, K401, K402, K406, K411, K413, K414, K415 \
  210. ) LAYOUT_65_all_7u_wk( \
  211. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  212. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  213. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  214. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  215. K400, K401, K402, K406, K411, K413, K414, K415 \
  216. )
  217. #define LAYOUT_65_iso_7u_wk( \
  218. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  219. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K115, \
  220. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
  221. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  222. K400, K401, K402, K406, K411, K413, K414, K415 \
  223. ) LAYOUT_65_all_7u_wk( \
  224. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  225. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  226. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  227. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  228. K400, K401, K402, K406, K411, K413, K414, K415 \
  229. )
  230. // layout with bottom row 1.5,blocker,1.5,7,1.5, blocker, <-,v,->
  231. #define LAYOUT_65_all_7u_wkl( \
  232. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  233. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  234. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  235. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  236. K400, K402, K406, K411, K413, K414, K415 \
  237. ) { \
  238. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  239. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  240. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
  241. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
  242. { K400, KC_NO, K402, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, K414, K415 } \
  243. }
  244. #define LAYOUT_65_ansi_7u_wkl( \
  245. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  246. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  247. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  248. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  249. K400, K402, K406, K411, K413, K414, K415 \
  250. ) LAYOUT_65_all_7u_wkl( \
  251. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  252. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  253. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  254. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  255. K400, K402, K406, K411, K413, K414, K415 \
  256. )
  257. #define LAYOUT_65_ansi_7u_wkl_splitbs( \
  258. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  259. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  260. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  261. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  262. K400, K402, K406, K411, K413, K414, K415 \
  263. ) LAYOUT_65_all_7u_wkl( \
  264. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  265. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  266. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  267. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  268. K400, K402, K406, K411, K413, K414, K415 \
  269. )
  270. #define LAYOUT_65_iso_7u_wkl( \
  271. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  272. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K115, \
  273. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
  274. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  275. K400, K402, K406, K411, K413, K414, K415 \
  276. ) LAYOUT_65_all_7u_wkl( \
  277. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  278. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  279. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  280. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  281. K400, K402, K406, K411, K413, K414, K415 \
  282. )
  283. // layout with bottom row blocker,1,1.5,7,1.5,1, blocker, <-,v,->
  284. #define LAYOUT_65_all_7u_hhkb( \
  285. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  286. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  287. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  288. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  289. K400, K401, K406, K410, K411, K413, K414, K415 \
  290. ) { \
  291. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  292. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  293. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215 }, \
  294. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315 }, \
  295. { K400, K401, KC_NO, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414, K415 } \
  296. }
  297. #define LAYOUT_65_ansi_7u_hhkb( \
  298. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  299. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  300. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  301. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  302. K400, K401, K406, K410, K411, K413, K414, K415 \
  303. ) LAYOUT_65_all_7u_hhkb( \
  304. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  305. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  306. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  307. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  308. K400, K401, K406, K410, K411, K413, K414, K415 \
  309. )
  310. #define LAYOUT_65_ansi_7u_hhkb_splitbs( \
  311. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  312. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  313. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  314. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  315. K400, K401, K406, K410, K411, K413, K414, K415 \
  316. ) LAYOUT_65_all_7u_hhkb( \
  317. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  318. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  319. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  320. K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  321. K400, K401, K406, K410, K411, K413, K414, K415 \
  322. )
  323. #define LAYOUT_65_iso_7u_hhkb( \
  324. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K015, \
  325. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K115, \
  326. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K214, K215, \
  327. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  328. K400, K401, K406, K410, K411, K413, K414, K415 \
  329. ) LAYOUT_65_all_7u_hhkb( \
  330. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, \
  331. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  332. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  333. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, \
  334. K400, K401, K406, K410, K411, K413, K414, K415 \
  335. )
  336. // clang-format on