fddf4b590eb01732baff007d5715ff1fe1d6545a
[jackhill/qmk/firmware.git] / quantum / keymap_extras / sendstring_colemak.h
1 /* Copyright 2016 Jack Humbert
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
17 // Sendstring lookup tables for Colemak layouts
18
19 #pragma once
20
21 #include "keymap_colemak.h"
22
23 // clang-format off
24
25 const uint8_t ascii_to_keycode_lut[128] PROGMEM = {
26 // NUL SOH STX ETX EOT ENQ ACK BEL
27 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
28 // BS TAB LF VT FF CR SO SI
29 KC_BSPC, KC_TAB, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
30 // DLE DC1 DC2 DC3 DC4 NAK SYN ETB
31 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
32 // CAN EM SUB ESC FS GS RS US
33 XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
34
35 // ! " # $ % & '
36 KC_SPC, KC_1, KC_QUOT, KC_3, KC_4, KC_5, KC_7, KC_QUOT,
37 // ( ) * + , - . /
38 KC_9, KC_0, KC_8, KC_EQL, KC_COMM, KC_MINS, KC_DOT, KC_SLSH,
39 // 0 1 2 3 4 5 6 7
40 KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7,
41 // 8 9 : ; < = > ?
42 KC_8, KC_9, CM_SCLN, CM_SCLN, KC_COMM, KC_EQL, KC_DOT, KC_SLSH,
43 // @ A B C D E F G
44 KC_2, CM_A, CM_B, CM_C, CM_D, CM_E, CM_F, CM_G,
45 // H I J K L M N O
46 CM_H, CM_I, CM_J, CM_K, CM_L, CM_M, CM_N, CM_O,
47 // P Q R S T U V W
48 CM_P, CM_Q, CM_R, CM_S, CM_T, CM_U, CM_V, CM_W,
49 // X Y Z [ \ ] ^ _
50 CM_X, CM_Y, CM_Z, KC_LBRC, KC_BSLS, KC_RBRC, KC_6, KC_MINS,
51 // ` a b c d e f g
52 KC_GRV, CM_A, CM_B, CM_C, CM_D, CM_E, CM_F, CM_G,
53 // h i j k l m n o
54 CM_H, CM_I, CM_J, CM_K, CM_L, CM_M, CM_N, CM_O,
55 // p q r s t u v w
56 CM_P, CM_Q, CM_R, CM_S, CM_T, CM_U, CM_V, CM_W,
57 // x y z { | } ~ DEL
58 CM_X, CM_Y, CM_Z, KC_LBRC, KC_BSLS, KC_RBRC, KC_GRV, KC_DEL
59 };