summaryrefslogtreecommitdiffstats
path: root/keyboards/montsinger/rebound/rev4/keymaps/ericgebhart/layouts.h
blob: f6b7fc15131977414e31971f74d1f02e77641088 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
/*
  Copyright 2018 Eric Gebhart <e.a.gebhart@gmail.com>

  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 2 of the License, or
  (at your option) any later version.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

/********************************************************************/
/* Rebound 4 rows, 1x12, 3x13  */
/********************************************************************/

#define LVARG_rebound(...)    LAYOUT_all(__VA_ARGS__)
#define LAYOUT_rebound_base(                                            \
                            K01, K02, K03, K04, K05,                    \
                            K06, K07, K08, K09, K0A,                    \
                            K11, K12, K13, K14, K15,                    \
                            K16, K17, K18, K19, K1A,                    \
                            K21, K22, K23, K24, K25,                    \
                            K26, K27, K28, K29, K2A                     \
                                                                        ) \
  LVARG_rebound(                                                        \
                ROW1_LEFT(K01, K02, K03, K04, K05),                     \
                ROW1_RIGHT(K06, K07, K08, K09, K0A),                    \
                                                                        \
                ROW2_LEFT(K11, K12, K13, K14, K15),                     \
                KC_CCCV,                                                \
                ROW2_RIGHT(K16, K17, K18, K19, K1A),                    \
                                                                        \
                ROW3_LEFT(K21, K22, K23, K24, K25),                     \
                MO(_ADJUST),                                            \
                ROW3_RIGHT(K26, K27, K28, K29, K2A),                    \
                ___13_BOTTOM___                                         \
                                                                        )

#define LAYOUT_rebound_base_bepo(                                       \
                                 K01, K02, K03, K04, K05,               \
                                 K06, K07, K08, K09, K0A,               \
                                 K11, K12, K13, K14, K15,               \
                                 K16, K17, K18, K19, K1A,               \
                                 K21, K22, K23, K24, K25,               \
                                 K26, K27, K28, K29, K2A                \
                                                                        ) \
  LVARG_rebound(                                                        \
                ROW1_LEFT_BP(K01, K02, K03, K04, K05),                  \
                ROW1_RIGHT_BP(K06, K07, K08, K09, K0A),                 \
                                                                        \
                ROW2_LEFT_BP(K11, K12, K13, K14, K15),                  \
                KC_CCCV,                                                \
                ROW2_RIGHT_BP(K16, K17, K18, K19, K1A),                 \
                                                                        \
                ROW3_LEFT_BP(K21, K22, K23, K24, K25),                  \
                MO(_ADJUST),                                            \
                ROW3_RIGHT_BP(K26, K27, K28, K29, K2A),                 \
                ___13_BOTTOM_BP___                                      \
                                                                        )

// Just for bepo because it's a 3x6 matrix on each side.
// So 3 pairs of 6 keys, left and right.
#define LAYOUT_rebound_base_bepo6(                                      \
                                  K01, K02, K03, K04, K05, K06,         \
                                  K07, K08, K09, K0A, K0B, K0C,         \
                                  K11, K12, K13, K14, K15, K16,         \
                                  K17, K18, K19, K1A, K1B, K1C,         \
                                  K21, K22, K23, K24, K25, K26,         \
                                  K27, K28, K29, K2A, K2B, K2C          \
                                                                        ) \
  LVARG_rebound(                                                        \
                ROW1_LEFT_BP6(K01, K02, K03, K04, K05, K06),            \
                ROW1_RIGHT_BP6(K07, K08, K09, K0A, K0B, K0C),           \
                                                                        \
                ROW2_LEFT_BP6(K11, K12, K13, K14, K15, K16),            \
                KC_CCCV,                                                \
                ROW2_RIGHT_BP6(K17, K18, K19, K1A, K1B, K1C),           \
                                                                        \
                ROW3_LEFT_BP6(K21, K22, K23, K24, K25, K26),            \
                MO(_ADJUST),                                            \
                ROW3_RIGHT_BP6(K27, K28, K29, K2A, K2B, K2C),           \
                ___13_BOTTOM_BP___                                      \
                                                                        )

#define LAYOUT_rebound_transient(                                       \
                                 K01, K02, K03, K04, K05, K06,          \
                                 K07, K08, K09, K0A, K0B, K0C,          \
                                 K11, K12, K13, K14, K15, K16,          \
                                 K17, K18, K19, K1A, K1B, K1C,          \
                                 K21, K22, K23, K24, K25, K26,          \
                                 K27, K28, K29, K2A, K2B, K2C           \
                                                                        ) \
  LVARG_rebound(                                                        \
                K01, K02, K03, K04, K05, K06,                           \
                K07, K08, K09, K0A, K0B, K0C,                           \
                K11, K12, K13, K14, K15, K16,                           \
                ___,                                                    \
                K17, K18, K19, K1A, K1B, K1C,                           \
                K21, K22, K23, K24, K25, K26,                           \
                ___,                                                    \
                K27, K28, K29, K2A, K2B, K2C,                           \
                ___, ___12___)

#define Rebound_base(...)       LAYOUT_rebound_base(__VA_ARGS__)
#define Rebound_base_bepo(...)  LAYOUT_rebound_base_bepo(__VA_ARGS__)
#define Rebound_base_bepo6(...) LAYOUT_rebound_base_bepo6(__VA_ARGS__)
#define Rebound_transient(...)  LAYOUT_rebound_transient(__VA_ARGS__)