268.h 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. /* Copyright 2020 Rozakiin
  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. // readability
  19. #define ____ KC_NO
  20. /* This a shortcut to help you visually see your layout.
  21. *
  22. * The first section contains all of the arguments representing the physical
  23. * layout of the board and position of the keys.
  24. *
  25. * The second converts the arguments into a two-dimensional array which
  26. * represents the switch matrix.
  27. */
  28. /*
  29. * LAYOUT OPTIONS
  30. *
  31. * Not all of these options are supported by the plates offered during the
  32. * October 2017 group buy, but all of them are supported by the PCB.
  33. *
  34. * See the pull request for more information:
  35. * https://github.com/qmk/qmk_firmware/pull/3426
  36. *
  37. *
  38. * Backspace
  39. * - Split Backspace = K013 and K014
  40. * - 2u Backspace = K014, delete K013
  41. *
  42. * Enter
  43. * - ANSI Enter = K214, delete K212 (KC_NUHS)
  44. * - ISO Enter = K214, delete K114 (ANSI Backslash)
  45. *
  46. * Left Shift
  47. * - ANSI 2.25u: K300, delete K301 (KC_NUBS)
  48. * - ISO 1.25u: K300, K301 is KC_NUBS
  49. *
  50. * Right Shift:
  51. * - Full 2.75u = K313, delete K312 and K314
  52. * - Split 1.75u + 1u = K312 and K314, delete K313
  53. *
  54. * Right Ctrl
  55. * - K412 in the default keymap, but not supported with the plates offered
  56. * during the October 2017 group buy.
  57. *
  58. */
  59. #define LAYOUT_all( \
  60. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  61. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
  62. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, \
  63. K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, K315, \
  64. K400, K401, K402, K406, K410, K411, K412, K413, K414, K415 \
  65. ) { \
  66. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  67. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, ____, K114, K115 }, \
  68. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, ____, K214, K215 }, \
  69. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, K315 }, \
  70. { K400, K401, K402, ____, ____, ____, K406, ____, ____, ____, K410, K411, K412, K413, K414, K415 } \
  71. }
  72. #define LAYOUT_iso( \
  73. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K014, K015, \
  74. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K115, \
  75. K200, K201, 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, K312, K314, K315, \
  77. K400, K401, K402, K406, K410, K411, K413, K414, K415 \
  78. ) { \
  79. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, ____, K014, K015 }, \
  80. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, ____, ____, K115 }, \
  81. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, ____, K214, K215 }, \
  82. { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, ____, K314, K315 }, \
  83. { K400, K401, K402, ____, ____, ____, K406, ____, ____, ____, K410, K411, ____, K413, K414, K415 } \
  84. }
  85. #define LAYOUT_ansi( \
  86. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K014, K015, \
  87. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
  88. K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K214, K215, \
  89. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K314, K315, \
  90. K400, K401, K402, K406, K410, K411, K413, K414, K415 \
  91. ) { \
  92. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, ____, K014, K015 }, \
  93. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, ____, K114, K115 }, \
  94. { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, ____, ____, K214, K215 }, \
  95. { K300, ____, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, ____, K314, K315 }, \
  96. { K400, K401, K402, ____, ____, ____, K406, ____, ____, ____, K410, K411, ____, K413, K414, K415 } \
  97. }