Norman layout for the minidox keyboard (#5747)

* Norman layout with Lower and Raise layers working

* Add keymap_extra def for Norman layout
* Re-org'ed the modifiers as explained in the Readme
* Corrected colour legend for KLE that the Readme links to

* Use #pragma once in header file

* Use pragma once and move user config to config.h

* Move definitions to the right file and correct link in Readme

* Move def of NM_COLN to the logical place in header file

* Add sendstring_norman.h for when the laptop layout is not QWERTY

* Update quantum/keymap_extras/sendstring_norman.h

Co-Authored-By: lehoff <torben.lehoff@gmail.com>
This commit is contained in:
Torben Hoffmann 2019-05-10 07:12:11 +02:00 committed by Drashna Jaelre
parent 7dcf9237d5
commit d3f3da5112
5 changed files with 223 additions and 0 deletions

View file

@ -0,0 +1,54 @@
/* Copyright 2019 Torben Hoffmann
*
* 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/>.
*/
#pragma once
#include "keymap.h"
// For software implementation of norman
#define NM_Q KC_Q
#define NM_W KC_W
#define NM_D KC_E
#define NM_F KC_R
#define NM_K KC_T
#define NM_J KC_Y
#define NM_U KC_U
#define NM_R KC_I
#define NM_L KC_O
#define NM_SCLN KC_P
#define NM_COLN LSFT(NM_SCLN)
#define NM_A KC_A
#define NM_S KC_S
#define NM_E KC_D
#define NM_T KC_F
#define NM_G KC_G
#define NM_Y KC_H
#define NM_N KC_J
#define NM_I KC_K
#define NM_O KC_L
#define NM_H KC_SCLN
#define NM_Z KC_Z
#define NM_X KC_X
#define NM_C KC_C
#define NM_V KC_V
#define NM_B KC_B
#define NM_P KC_N
#define NM_M KC_M
#define NM_COMM KC_COMM
#define NM_DOT KC_DOT
#define NM_SLSH KC_SLSH

View file

@ -0,0 +1,39 @@
/* Copyright 2019 Torben Hoffmann
*
* 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/>.
*/
/* Sendstring definitions for the Colemak layout */
#pragma once
#include "keymap_norman.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, KC_1, KC_QUOT, KC_3, KC_4, KC_5, KC_7, KC_QUOT,
KC_9, KC_0, KC_8, KC_EQL, KC_COMM, KC_MINS, KC_DOT, KC_SLSH,
KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7,
KC_8, KC_9, NM_SCLN, NM_SCLN, KC_COMM, KC_EQL, KC_DOT, KC_SLSH,
KC_2, NM_A, NM_B, NM_C, NM_D, NM_E, NM_F, NM_G,
NM_H, NM_I, NM_J, NM_K, NM_L, NM_M, NM_N, NM_O,
NM_P, NM_Q, NM_R, NM_S, NM_T, NM_U, NM_V, NM_W,
NM_X, NM_Y, NM_Z, KC_LBRC, KC_BSLS, KC_RBRC, KC_6, KC_MINS,
KC_GRV, NM_A, NM_B, NM_C, NM_D, NM_E, NM_F, NM_G,
NM_H, NM_I, NM_J, NM_K, NM_L, NM_M, NM_N, NM_O,
NM_P, NM_Q, NM_R, NM_S, NM_T, NM_U, NM_V, NM_W,
NM_X, NM_Y, NM_Z, KC_LBRC, KC_BSLS, KC_RBRC, KC_GRV, KC_DEL
};