You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
5.7 KiB

  1. /* Copyright 2020 DmNosachev
  2. *
  3. * This program is free software: you can redistribute it and/or modify
  4. * it under the terms of the GNU General Public License as published by
  5. * the Free Software Foundation, either version 2 of the License, or
  6. * (at your option) any later version.
  7. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. *
  13. * You should have received a copy of the GNU General Public License
  14. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. */
  16. #pragma once
  17. #include "quantum.h"
  18. #define XXX KC_NO
  19. /* This is a shortcut to help you visually see your layout.
  20. *
  21. * The first section contains all of the arguments representing the physical
  22. * layout of the board and position of the keys.
  23. *
  24. * The second converts the arguments into a two-dimensional array which
  25. * represents the switch matrix.
  26. */
  27. /*
  28. ,---------------------------------------------------------------------------------------------------------, ,-----,
  29. | < | |NumLk| | f1 | f2 | f3 | f4 | f5 | | f6 | f7 | f8 | f9 | f10 | |RlUp |RlDn | |CurLk|
  30. |-------------------------------------------------------------------------------------------| |-----------| |-----|-----------------,
  31. | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | = - | ^ | ^ | BS | |Home |Help | | * | / | - | + |
  32. |-------------------------------------------------------------------------------------------| |-----------| |-----------------------|
  33. | Tab | Q | W | E | R | T | Y | U | I | O | P | ~@ | {[ | Return | | Ins | Del | | 7 | 8 | 9 | = |
  34. |--------------------------------------------------------------------------------| | `-----------' |-----------------------|
  35. | Ctrl | A | S | D | F | G | H | J | K | L | +; | *: | }] | | | Up | | 4 | 5 | 6 | . |
  36. |--------------------------------------------------------------------------------`----------' |-----------| |-----------------------|
  37. | Shift | Z | X | C | V | B | N | M | , | . | ?/ | -- | Shift | |Left |Right| | 1 | 2 | 3 | , |
  38. |-------------------------------------------------------------------------------------------| |-----------| |-----------------------|
  39. |Caps | Opt |Kana | Cmd | Space1 | Space2 | Space3 | Enter | | Alt | | Down | | 0 | 000 | Enter |
  40. `-------------------------------------------------------------------------------------------' `-----------' '-----------------------'
  41. |Thumb1|Thumb2|
  42. `-------------'
  43. */
  44. #define LAYOUT( \
  45. K00, K01, K02, K03, K04, K05, K06, K07, K10, K11, K12, K13, K97, KA0, KD6, \
  46. K14, K15, K16, K17, K20, K21, K22, K23, K24, K25, K26, K27, K30, K31, K74, KA1, KA2, KC0, KD0, KE0, KC1, \
  47. K75, K32, K33, K34, K35, K36, K37, K40, K41, K42, K43, K44, K45, K76, KA3, KA4, KD1, KE1, KC2, KD2, \
  48. K77, K47, K50, K51, K52, K53, K54, K55, K56, K57, K60, K80, K81, KB0, KE2, KC3, KD3, KE3, \
  49. K82, K61, K62, K63, K64, K65, K66, K67, K70, K71, K72, K73, K83, KB1, KB2, KC4, KD4, KE4, KC5,\
  50. K84, K85, K86, K87, K90, K91, K92, K93, K94, KB3, KD5, KE5, KC6, \
  51. K95, K96 \
  52. ) { \
  53. { K00, K01, K02, K03, K04, K05, K06, K07 }, \
  54. { K10, K11, K12, K13, K14, K15, K16, K17 }, \
  55. { K20, K21, K22, K23, K24, K25, K26, K27 }, \
  56. { K30, K31, K32, K33, K34, K35, K36, K37 }, \
  57. { K40, K41, K42, K43, K44, K45, XXX, K47 }, \
  58. { K50, K51, K52, K53, K54, K55, K56, K57 }, \
  59. { K60, K61, K62, K63, K64, K65, K66, K67 }, \
  60. { K70, K71, K72, K73, K74, K75, K76, K77 }, \
  61. { K80, K81, K82, K83, K84, K85, K86, K87 }, \
  62. { K90, K91, K92, K93, K94, K95, K96, K97 }, \
  63. { KA0, KA1, KA2, KA3, KA4, XXX, XXX, XXX }, \
  64. { KB0, KB1, KB2, KB3, XXX, XXX, XXX, XXX }, \
  65. { KC0, KC1, KC2, KC3, KC4, KC5, KC6, XXX }, \
  66. { KD0, KD1, KD2, KD3, KD4, KD5, KD6, XXX }, \
  67. { KE0, KE1, KE2, KE3, KE4, KE5, XXX, XXX } \
  68. }
  69. #define LAYOUT_debug( \
  70. K00, K01, K02, K03, K04, K05, K06, K07, \
  71. K10, K11, K12, K13, K14, K15, K16, K17, \
  72. K20, K21, K22, K23, K24, K25, K26, K27, \
  73. K30, K31, K32, K33, K34, K35, K36, K37, \
  74. K40, K41, K42, K43, K44, K45, K46, K47, \
  75. K50, K51, K52, K53, K54, K55, K56, K57, \
  76. K60, K61, K62, K63, K64, K65, K66, K67, \
  77. K70, K71, K72, K73, K74, K75, K76, K77, \
  78. K80, K81, K82, K83, K84, K85, K86, K87, \
  79. K90, K91, K92, K93, K94, K95, K96, K97, \
  80. KA0, KA1, KA2, KA3, KA4, KA5, KA6, KA7, \
  81. KB0, KB1, KB2, KB3, KB4, KB5, KB6, KB7, \
  82. KC0, KC1, KC2, KC3, KC4, KC5, KC6, KC7, \
  83. KD0, KD1, KD2, KD3, KD4, KD5, KD6, KD7, \
  84. KE0, KE1, KE2, KE3, KE4, KE5, KE6, KE7 \
  85. ) { \
  86. { K00, K01, K02, K03, K04, K05, K06, K07 }, \
  87. { K10, K11, K12, K13, K14, K15, K16, K17 }, \
  88. { K20, K21, K22, K23, K24, K25, K26, K27 }, \
  89. { K30, K31, K32, K33, K34, K35, K36, K37 }, \
  90. { K40, K41, K42, K43, K44, K45, K46, K47 }, \
  91. { K50, K51, K52, K53, K54, K55, K56, K57 }, \
  92. { K60, K61, K62, K63, K64, K65, K66, K67 }, \
  93. { K70, K71, K72, K73, K74, K75, K76, K77 }, \
  94. { K80, K81, K82, K83, K84, K85, K86, K87 }, \
  95. { K90, K91, K92, K93, K94, K95, K96, K97 }, \
  96. { KA0, KA1, KA2, KA3, KA4, KA5, KA6, KA7 }, \
  97. { KB0, KB1, KB2, KB3, KB4, KB5, KB6, KB7 }, \
  98. { KC0, KC1, KC2, KC3, KC4, KC5, KC6, KC7 }, \
  99. { KD0, KD1, KD2, KD3, KD4, KD5, KD6, KD7 }, \
  100. { KE0, KE1, KE2, KE3, KE4, KE5, KE6, KE7 } \
  101. }