1
0
Fork 0

Sendstring LUT improvements (#5727)

* Align sendstring LUTs to 9 characters wide

* Replace 0 with XXXXXXX

* Use decimal 128 for LUT size

* Align heading comments

* Add ASCII table comments

* Add missing AltGr LUTs and adjust keycode LUTs accordingly

* Use pragma once

* Correct a couple more keycodes

* Capitalise "BÉPO"

* Also clean up the default tables

* Tidy up Belgian and Norman LUTs
This commit is contained in:
fauxpark 2019-07-16 16:15:07 +10:00 committed by skullydazed
parent 26bbf6a66a
commit a5ecf14608
12 changed files with 511 additions and 291 deletions

View file

@ -13,29 +13,85 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/* Sendstring definitions for the bépo layout */
#ifndef SENDSTRING_BEPO
#define SENDSTRING_BEPO
// Sendstring lookup tables for BÉPO layouts
#pragma once
#include "keymap_bepo.h"
const uint8_t ascii_to_keycode_lut[0x80] PROGMEM = {
0, 0, 0, 0, 0, 0, 0, 0,
KC_BSPC, KC_TAB, KC_ENT, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, KC_ESC, 0, 0, 0, 0,
KC_SPC, BP_DCRC, BP_DQOT, BP_DOLLAR, BP_DOLLAR, BP_PERCENT, BP_P, BP_APOS,
BP_LPRN, BP_RPRN, BP_ASTR, BP_PLUS, BP_COMM, BP_MINUS, BP_DOT, BP_SLSH,
KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7,
KC_8, KC_9, BP_DOT, BP_DOT, KC_2, BP_EQUAL, KC_2, BP_APOS,
BP_AT, BP_A, BP_B, BP_C, BP_D, BP_E, BP_F, BP_G,
BP_H, BP_I, BP_J, BP_K, BP_L, BP_M, BP_N, BP_O,
BP_P, BP_Q, BP_R, BP_S, BP_T, BP_U, BP_V, BP_W,
BP_X, BP_Y, BP_Z, KC_4, BP_AGRV, KC_5, KC_5, KC_MINS,
KC_2, BP_A, BP_B, BP_C, BP_D, BP_E, BP_F, BP_G,
BP_H, BP_I, BP_J, BP_K, BP_L, BP_M, BP_N, BP_O,
BP_P, BP_Q, BP_R, BP_S, BP_T, BP_U, BP_V, BP_W,
BP_X, BP_Y, BP_Z, BP_Y, BP_B, BP_X, BP_K, KC_DEL,
const bool ascii_to_shift_lut[128] PROGMEM = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 1, 0, 1, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 0, 0, 0, 1,
0, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0
};
#endif
const bool ascii_to_altgr_lut[128] PROGMEM = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 1, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1, 1, 1, 1, 1,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1, 1, 1, 1, 0
};
const uint8_t ascii_to_keycode_lut[128] PROGMEM = {
// NUL SOH STX ETX EOT ENQ ACK BEL
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
// BS TAB LF VT FF CR SO SI
KC_BSPC, KC_TAB, KC_ENT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
// DLE DC1 DC2 DC3 DC4 NAK SYN ETB
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
// CAN EM SUB ESC FS GS RS US
XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
// ! " # $ % & '
KC_SPC, BP_DCRC, BP_DQOT, BP_DLR, BP_DLR, BP_PERC, BP_P, BP_APOS,
// ( ) * + , - . /
BP_LPRN, BP_RPRN, BP_ASTR, BP_PLUS, BP_COMM, BP_MINS, BP_DOT, BP_SLSH,
// 0 1 2 3 4 5 6 7
BP_ASTR, BP_DQOT, BP_LGIL, BP_RGIL, BP_LPRN, BP_RPRN, BP_AT, BP_PLUS,
// 8 9 : ; < = > ?
BP_MINS, BP_SLSH, BP_DOT, BP_COMM, BP_LGIL, BP_EQL, BP_RGIL, BP_APOS,
// @ A B C D E F G
BP_AT, BP_A, BP_B, BP_C, BP_D, BP_E, BP_F, BP_G,
// H I J K L M N O
BP_H, BP_I, BP_J, BP_K, BP_L, BP_M, BP_N, BP_O,
// P Q R S T U V W
BP_P, BP_Q, BP_R, BP_S, BP_T, BP_U, BP_V, BP_W,
// X Y Z [ \ ] ^ _
BP_X, BP_Y, BP_Z, BP_LPRN, BP_AGRV, BP_RPRN, BP_AT, KC_SPC,
// ` a b c d e f g
BP_PERC, BP_A, BP_B, BP_C, BP_D, BP_E, BP_F, BP_G,
// h i j k l m n o
BP_H, BP_I, BP_J, BP_K, BP_L, BP_M, BP_N, BP_O,
// p q r s t u v w
BP_P, BP_Q, BP_R, BP_S, BP_T, BP_U, BP_V, BP_W,
// x y z { | } ~ DEL
BP_X, BP_Y, BP_Z, BP_Y, BP_B, BP_X, BP_K, KC_DEL
};