dz60.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. #pragma once
  2. #include "quantum.h"
  3. // Corresponding changes to the layout names and/or definitions must also be made to info.json
  4. // 标准配列
  5. #define LAYOUT( \
  6. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
  7. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  8. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
  9. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
  10. K400, K401, K403, K404, K406, K408, K410, K411, K412, K413, K414 \
  11. ) { \
  12. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  13. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  14. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  15. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314 }, \
  16. { K400, K401, KC_NO, K403, K404, KC_NO, K406, KC_NO, K408, KC_NO, K410, K411, K412, K413, K414 } \
  17. }
  18. #define LAYOUT_hhkb( \
  19. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
  20. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  21. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
  22. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
  23. K401, K403, K406, K411, K413 \
  24. ) { \
  25. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  26. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  27. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  28. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314 }, \
  29. { KC_NO, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, KC_NO } \
  30. }
  31. #define LAYOUT_true_hhkb( \
  32. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
  33. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  34. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
  35. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
  36. K401, K403, K406, K410, K411 \
  37. ) { \
  38. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  39. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  40. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  41. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314 }, \
  42. { KC_NO, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, KC_NO, KC_NO } \
  43. }
  44. #define LAYOUT_60_hhkb( \
  45. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
  46. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  47. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
  48. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
  49. K401, K403, K406, K411, K413 \
  50. ) { \
  51. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  52. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  53. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  54. { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314 }, \
  55. { KC_NO, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, KC_NO, K411, KC_NO, K413, KC_NO } \
  56. }
  57. #define LAYOUT_2_shifts( \
  58. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
  59. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  60. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
  61. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  62. K400, K401, K403, K404, K406, K408, K410, K411, K412, K413, K414 \
  63. ) { \
  64. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  65. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  66. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  67. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  68. { K400, K401, KC_NO, K403, K404, KC_NO, K406, KC_NO, K408, KC_NO, K410, K411, K412, K413, K414 } \
  69. }
  70. // 带方向配列
  71. #define LAYOUT_directional( \
  72. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
  73. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  74. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
  75. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K312, K313, K314, \
  76. K400, K401, K403, K404, K406, K408, K410, K411, K412, K413, K414 \
  77. ) { \
  78. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  79. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  80. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  81. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, KC_NO, K312, K313, K314 }, \
  82. { K400, K401, KC_NO, K403, K404, KC_NO, K406, KC_NO, K408, KC_NO, K410, K411, K412, K413, K414 } \
  83. }
  84. #define LAYOUT_all( \
  85. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
  86. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  87. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, \
  88. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  89. K400, K401, K403, K404, K406, K408, K410, K411, K412, K413, K414 \
  90. ) { \
  91. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  92. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  93. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
  94. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  95. { K400, K401, KC_NO, K403, K404, KC_NO, K406, KC_NO, K408, KC_NO, K410, K411, K412, K413, K414 } \
  96. }
  97. #define LAYOUT_60_ansi( \
  98. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K014, \
  99. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  100. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
  101. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \
  102. K400, K401, K403, K406, K410, K411, K413, K414 \
  103. ) { \
  104. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, KC_NO, K014 }, \
  105. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  106. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  107. { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, KC_NO }, \
  108. { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414 } \
  109. }
  110. #define LAYOUT_60_iso( \
  111. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K014, \
  112. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \
  113. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, K213, \
  114. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \
  115. K400, K401, K403, K406, K410, K411, K413, K414 \
  116. ) { \
  117. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, KC_NO, K014 }, \
  118. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  119. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  120. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, KC_NO }, \
  121. { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414 } \
  122. }
  123. #define LAYOUT_directional_625_space( \
  124. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
  125. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
  126. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \
  127. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, \
  128. K400, K401, K403, K406, K410, K411, K412, K413, K414 \
  129. ) { \
  130. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
  131. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  132. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  133. { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \
  134. { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, K412, K413, K414 } \
  135. }
  136. #define LAYOUT_60_iso_5x1u( \
  137. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K014, \
  138. K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K213, \
  139. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K114, \
  140. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \
  141. K400, K401, K403, K406, K410, K411, K412, K413, K414 \
  142. ) { \
  143. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, KC_NO, K014 }, \
  144. { K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
  145. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, KC_NO }, \
  146. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, KC_NO }, \
  147. { K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, K412, K413, K414 } \
  148. }