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