]>
Commit | Line | Data |
---|---|---|
1 | #include "actionmap.h" | |
2 | #include "action_code.h" | |
3 | #include "actionmap_common.h" | |
4 | // use ____ or T0D0 as keyboard keys in KEYMAP | |
5 | #define AC_____ AC_NO | |
6 | ||
7 | ||
8 | /* TODO XXX TODO: | |
9 | * ^I(AC_TAB) has not been placed (best on layer2) | |
10 | * §(AC_SECT) has not been placed (best on layer3) | |
11 | * | |
12 | * define bottom row Fn keys | |
13 | */ | |
14 | ||
15 | // action key names are from german layout! | |
16 | #define AC_FN1 ACTION_LAYER_MOMENTARY(1) | |
17 | #define AC_FN2 ACTION_LAYER_MOMENTARY(2) | |
18 | #define AC_FN3 ACTION_LAYER_MOMENTARY(3) | |
19 | #define AC_DEG ACTION_MODS_KEY(MOD_LSFT, KC_GRV) | |
20 | #define AC_EXCL ACTION_MODS_KEY(MOD_LSFT, KC_1) | |
21 | #define AC_DQOT ACTION_MODS_KEY(MOD_LSFT, KC_2) | |
22 | #define AC_SECT ACTION_MODS_KEY(MOD_LSFT, KC_3) | |
23 | #define AC_DLLR ACTION_MODS_KEY(MOD_LSFT, KC_4) | |
24 | #define AC_PERC ACTION_MODS_KEY(MOD_LSFT, KC_5) | |
25 | #define AC_AMP ACTION_MODS_KEY(MOD_LSFT, KC_6) | |
26 | #define AC_SLAS ACTION_MODS_KEY(MOD_LSFT, KC_7) | |
27 | #define AC_LPAR ACTION_MODS_KEY(MOD_LSFT, KC_8) | |
28 | #define AC_RPAR ACTION_MODS_KEY(MOD_LSFT, KC_9) | |
29 | #define AC_EQUL ACTION_MODS_KEY(MOD_LSFT, KC_0) | |
30 | #define AC_QEST ACTION_MODS_KEY(MOD_LSFT, KC_MINS) | |
31 | #define AC_GRAV ACTION_MODS_KEY(MOD_LSFT, KC_EQL) | |
32 | #define AC_SUP2 ACTION_MODS_KEY(MOD_RALT, KC_2) | |
33 | #define AC_SUP3 ACTION_MODS_KEY(MOD_RALT, KC_3) | |
34 | #define AC_LBRA ACTION_MODS_KEY(MOD_RALT, KC_7) | |
35 | #define AC_LBRK ACTION_MODS_KEY(MOD_RALT, KC_8) | |
36 | #define AC_RBRK ACTION_MODS_KEY(MOD_RALT, KC_9) | |
37 | #define AC_RBRA ACTION_MODS_KEY(MOD_RALT, KC_0) | |
38 | #define AC_BKSL ACTION_MODS_KEY(MOD_RALT, KC_MINS) | |
39 | #define AC_ASTK ACTION_MODS_KEY(MOD_LSFT, KC_RBRC) | |
40 | #define AC_SQOT ACTION_MODS_KEY(MOD_LSFT, KC_NUHS) | |
41 | #define AC_AT ACTION_MODS_KEY(MOD_RALT, KC_Q) | |
42 | #define AC_EUR ACTION_MODS_KEY(MOD_RALT, KC_E) | |
43 | #define AC_TILD ACTION_MODS_KEY(MOD_RALT, KC_RBRC) | |
44 | #define AC_RANG ACTION_MODS_KEY(MOD_LSFT, KC_NUBS) | |
45 | #define AC_BAR ACTION_MODS_KEY(MOD_RALT, KC_NUBS) | |
46 | #define AC_MU ACTION_MODS_KEY(MOD_RALT, KC_M) | |
47 | #define AC_CIRC AC_GRV | |
48 | #define AC_SS AC_MINS | |
49 | #define AC_PLUS AC_RBRC | |
50 | #define AC_HASH AC_NUHS | |
51 | #define AC_LANG AC_NUBS | |
52 | #define AC_DASH AC_SLSH | |
53 | #define AC_WORD ACTION_MODS_KEY(MOD_LCTL, KC_RIGHT) | |
54 | #define AC_BACK ACTION_MODS_KEY(MOD_LCTL, KC_LEFT) | |
55 | #define AC_AUML ACTION_MODS_KEY(MOD_LSFT, AC_QUOT) | |
56 | #define AC_OUML ACTION_MODS_KEY(MOD_LSFT, AC_SCLN) | |
57 | #define AC_UUML ACTION_MODS_KEY(MOD_LSFT, AC_LBRC) | |
58 | #define AC_aUML AC_QUOT | |
59 | #define AC_oUML AC_SCLN | |
60 | #define AC_uUML AC_LBRC | |
61 | ||
62 | ||
63 | const action_t PROGMEM actionmaps[][MATRIX_ROWS][MATRIX_COLS] = { | |
64 | /* Layer: Base Layer | |
65 | * ,-------------------------------------------------. | |
66 | * |Esc| Q| W| E| R| T| Z| U| I| O| P| BSp | | |
67 | * |-------------------------------------------------| | |
68 | * |C/^I| A| S| D| F| G| H| J| K| L| /|Fn2 | | |
69 | * |-------------------------------------------------| | |
70 | * |Shift| Y| X| C| V| B| N| M| ,| .| -|Sft| | |
71 | * |-------------------------------------------------| | |
72 | * |Alt | XXX |XXX |Enter| Space |XXX |XXX | Fn3 | TODO: where to put Fn1 | |
73 | * `-------------------------------------------------' | |
74 | */ | |
75 | ACTIONMAP( | |
76 | ESC , Q, W, E, R, T, Y, U, I, O, P, BSPC, \ | |
77 | LCTRL, A, S, D, F, G, H, J, K, L,SLAS, FN2, \ | |
78 | LSHIFT, Z, X, C, V, B, N, M,COMM, DOT,DASH, RSHIFT, \ | |
79 | LALT, FN1, LGUI, ENT, SPC, RALT, RSFT, FN3 ), | |
80 | ||
81 | /* Layer: Movement Layer (wrd=ctrl-right, bck=crtl-left) TOGGLE | |
82 | * ,-------------------------------------------------. | |
83 | * |Esc| |wrd| |END| | |PUp| |Hom| | Del | TODO: move Home? | |
84 | * |-------------------------------------------------| | |
85 | * | | | |PDn| | |Lft| Up| Dn| Rt| | | | |
86 | * |-------------------------------------------------| | |
87 | * | |Psc| | | |bck| | | | | | | TODO: where NUM, CAPS, | |
88 | * |-------------------------------------------------| SCROLL, PAUSE | |
89 | * | | Gui | | | | | | | | |
90 | * `-------------------------------------------------' | |
91 | */ | |
92 | ACTIONMAP( | |
93 | ESC ,____,WORD,____, END,____,____,PGUP,____,HOME,____, DEL, \ | |
94 | TRNS ,____,____,PGDN,____,____,LEFT,DOWN, UP,RGHT,____, TRNS, \ | |
95 | TRNS ,PSCR,____,____,____,BACK,____,____,____,____,____,TRNS, \ | |
96 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS ), | |
97 | ||
98 | /* Layer: Numbers and ASCII-Symbols Layer MOMENTARY+TOGGLE | |
99 | * ,-------------------------------------------------. | |
100 | * | ^| !| "| '| $| %| &| /| (| )| =| ? | | |
101 | * |-------------------------------------------------| | |
102 | * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0|Fn2 | TODO: where to put § | |
103 | * |-------------------------------------------------| | |
104 | * | #| <| || >| +| *| {| [| ]| }| \| ~| | |
105 | * |-------------------------------------------------| | |
106 | * | | | | | | | | | | |
107 | * `-------------------------------------------------' | |
108 | */ | |
109 | ACTIONMAP( | |
110 | CIRC,EXCL,DQOT,SQOT,DLLR,PERC, AMP,SLAS,LPAR,RPAR,EQUL, QEST, \ | |
111 | GRAV , 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, TRNS, \ | |
112 | HASH ,LANG, BAR,RANG,PLUS,ASTK,LBRA,LBRK,RBRK,RBRA,BKSL,TILD, \ | |
113 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS ), | |
114 | ||
115 | /* Layer: Layer for Function keys and Unicode Symbols MOMENTARY | |
116 | * ,-------------------------------------------------. | |
117 | * | F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11| F12| | |
118 | * |-------------------------------------------------| | |
119 | * | | | | | | | | | Ä| Ö| Ü|Entr| | |
120 | * |-------------------------------------------------| | |
121 | * | | | | °| ²| ³| µ| ä| ö| ü| ß| | | |
122 | * |-------------------------------------------------| | |
123 | * | | | |Space| Enter | | | | | |
124 | * `-------------------------------------------------' | |
125 | */ | |
126 | ACTIONMAP( | |
127 | F1 , F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, \ | |
128 | TRNS ,____,____,____,____,____,____,____,AUML,OUML,UUML, ENT, \ | |
129 | TRNS ,____,____, DEG,SUP2,SUP3, MU,aUML,oUML,uUML, SS,TRNS, \ | |
130 | TRNS, TRNS, TRNS, SPC, ENT, TRNS, TRNS, TRNS ), | |
131 | }; |