From 760b11b5e84291019605af3abeef2d09f8991779 Mon Sep 17 00:00:00 2001 From: epaew Date: Wed, 23 May 2018 08:59:43 +0900 Subject: Add edvorakjp layout for the Iris keyboard (#3020) * add edvorakjp libraries * add edvorakjp iris keymap * change the custom eeconfig's address to prevent future address conflicts * deleted the verbose line of rule.mk --- keyboards/iris/keymaps/edvorakjp/config.h | 30 +++++ keyboards/iris/keymaps/edvorakjp/keymap.c | 171 +++++++++++++++++++++++++++++ keyboards/iris/keymaps/edvorakjp/readme.md | 21 ++++ keyboards/iris/keymaps/edvorakjp/rules.mk | 16 +++ 4 files changed, 238 insertions(+) create mode 100644 keyboards/iris/keymaps/edvorakjp/config.h create mode 100644 keyboards/iris/keymaps/edvorakjp/keymap.c create mode 100644 keyboards/iris/keymaps/edvorakjp/readme.md create mode 100644 keyboards/iris/keymaps/edvorakjp/rules.mk (limited to 'keyboards/iris') diff --git a/keyboards/iris/keymaps/edvorakjp/config.h b/keyboards/iris/keymaps/edvorakjp/config.h new file mode 100644 index 0000000000..cc24ffc312 --- /dev/null +++ b/keyboards/iris/keymaps/edvorakjp/config.h @@ -0,0 +1,30 @@ +#ifndef CONFIG_USER_H +#define CONFIG_USER_H + +#include "config_common.h" + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL +// #define USE_I2C + +/* Select hand configuration */ + +#define MASTER_LEFT +// #define MASTER_RIGHT +// #define EE_HANDS + +#undef RGBLED_NUM +#define RGBLIGHT_ANIMATIONS +#define RGBLED_NUM 10 +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 +#define RGBLIGHT_LIMIT_VAL 100 + +#define MOUSEKEY_WHEEL_MAX_SPEED 10 +#define MOUSEKEY_WHEEL_TIME_TO_MAX 20 + +#define TAPPING_TERM 120 + +#endif diff --git a/keyboards/iris/keymaps/edvorakjp/keymap.c b/keyboards/iris/keymaps/edvorakjp/keymap.c new file mode 100644 index 0000000000..286aa3b5bb --- /dev/null +++ b/keyboards/iris/keymaps/edvorakjp/keymap.c @@ -0,0 +1,171 @@ +#include QMK_KEYBOARD_H +#include "action_layer.h" +#include "eeconfig.h" + +#include "edvorakjp.h" + +extern edvorakjp_config_t edvorakjp_config; + +enum custom_keycodes { + KC_LOCK = NEW_SAFE_RANGE, +}; + +#define KC_ KC_TRNS + +#define KC_TMB1 LGUI_T(KC_TAB) +#define KC_TMB2 LSFT_T(KC_SPC) +#define KC_TMB3 LOWER // act as LOWER when hold, as KC_LANG2(=English) when tapped +#define KC_TMB4 LCTL_T(KC_ESC) +#define KC_TMB5 RSFT_T(KC_DEL) +#define KC_TMB6 RAISE // act as RAISE when hold, as KC_LANG1(=Japanese) when tapped +#define KC_TMB7 RCTL_T(KC_BSPC) +#define KC_TMB8 RALT_T(KC_ENT) +#define KC_TMB9 LGUI(KC_TAB) + +#define KC_RST RESET +#define KC_DBUG DEBUG +#define KC_RTOG RGB_TOG +#define KC_EDJP EDVORAK +#define KC_QWER QWERTY + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_EDVORAK] = LAYOUT_kc( + //,----+----+----+----+----+----. ,----+----+----+----+----+----. + GRV ,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,LPRN,RPRN,BSPC, + //|----+----+----+----+----+----| |----+----+----+----+----+----| + LBRC,RBRC,COMM,DOT , P , Y , F , G , R , W , Q ,BSLS, + //|----+----+----+----+----+----| |----+----+----+----+----+----| + EQL , A , O , E , I , U , D , T , N , S , M ,MINS, + //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----| + QUOT,SCLN, X , C , V , Z ,TMB4, TMB5, B , H , J , K , L ,SLSH, + //`----+----+----+----+----+----+----/ \----+----+----+----+----+----+----' + TMB1,TMB2,TMB3, TMB6,TMB7,TMB8 + // `----+----+----' `----+----+----' + ), + + [_EDVORAKJ1] = LAYOUT_kc( + //,----+----+----+----+----+----. ,----+----+----+----+----+----. + , , , , , , , , , , , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + , AI , OU , EI , , , , , , , , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + , , , , , , , , , Y , , , + //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----| + ,ANN ,ONN ,ENN ,INN ,UNN , , , , , , , , , + //`----+----+----+----+----+----+----/ \----+----+----+----+----+----+----' + , , , , , + // `----+----+----' `----+----+----' + ), + + [_EDVORAKJ2] = LAYOUT_kc( + //,----+----+----+----+----+----. ,----+----+----+----+----+----. + , , , , , , , , , , , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + , AI , OU , EI , , , , , , , , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + , , , , , , , Y , , , , , + //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----| + ,ANN ,ONN ,ENN ,INN ,UNN , , , , , , , , , + //`----+----+----+----+----+----+----/ \----+----+----+----+----+----+----' + , , , , , + // `----+----+----' `----+----+----' + ), + + [_QWERTY] = LAYOUT_kc( + //,----+----+----+----+----+----. ,----+----+----+----+----+----. + GRV ,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,LPRN,RPRN,BSPC, + //|----+----+----+----+----+----| |----+----+----+----+----+----| + EQL , Q , W , E , R , T , Y , U , I , O , P ,MINS, + //|----+----+----+----+----+----| |----+----+----+----+----+----| + LBRC, A , S , D , F , G , H , J , K , L ,SCLN,QUOT, + //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----| + RBRC, Z , X , C , V , B , , , N , M ,COMM,DOT ,SLSH,BSLS, + //`----+----+----+----+----+----+----/ \----+----+----+----+----+----+----' + , , , , , + // `----+----+----' `----+----+----' + ), + + [_LOWER] = LAYOUT_kc( + //,----+----+----+----+----+----. ,----+----+----+----+----+----. + , , , , , , , ,SLSH,ASTR, , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + , ,BTN4,WH_U,BTN5, , , 7 , 8 , 9 ,MINS, , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + , ,WH_L,WH_D,WH_R, , , 4 , 5 , 6 ,PLUS, , + //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----| + , ,BTN1,BTN3,BTN2, , , , , 1 , 2 , 3 , , , + //`----+----+----+----+----+----+----/ \----+----+----+----+----+----+----' + , , , , 0 , + // `----+----+----' `----+----+----' + ), + + [_RAISE] = LAYOUT_kc( + //,----+----+----+----+----+----. ,----+----+----+----+----+----. + , , , , , , , , , , , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + F1 , F2 , F3 , F4 , F5 ,LCBR, RCBR, , , , , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + F6 , F7 , F8 , F9 ,F10 ,LPRN, RPRN,HOME,PGDN,PGUP,END , , + //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----| + F11 ,F12 ,PSCR,SLCK,PAUS,LBRC,LOCK, ,RBRC,LEFT,DOWN, UP ,RGHT, , + //`----+----+----+----+----+----+----/ \----+----+----+----+----+----+----' + TMB9, , , , , + // `----+----+----' `----+----+----' + ), + + [_ADJUST] = LAYOUT_kc( + //,----+----+----+----+----+----. ,----+----+----+----+----+----. + , , , , , , , , , , , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + , , , ,EXTOFF, , ,EXTON, , , , , + //|----+----+----+----+----+----| |----+----+----+----+----+----| + ,RST ,DBUG,RTOG,WIN , , ,MAC ,QWER,EDJP, , , + //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----| + , , , , , , , , , , , , , , + //`----+----+----+----+----+----+----/ \----+----+----+----+----+----+----' + , , , , , + // `----+----+----' `----+----+----' + ) +}; + +void matrix_init_keymap() { +} + +bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { + case KC_LOCK: + if (record->event.pressed) { + if (edvorakjp_config.enable_kc_lang) { + SEND_STRING( SS_LCTRL(SS_LSFT(SS_TAP(X_POWER))) ); + } else { + SEND_STRING( SS_LGUI("L") ); + } + } + return false; + } + return true; +} + +uint32_t layer_state_set_keymap(uint32_t state) { + switch (biton32(state)) { + case _EDVORAKJ1: + case _EDVORAKJ2: + // _EDVORAKJ1 & J2 are same colored + rgblight_setrgb (0xFF, 0xFF, 0xFF); + break; + case _LOWER: + rgblight_setrgb (0xFF, 0x00, 0x00); + break; + case _RAISE: + rgblight_setrgb (0x00, 0x00, 0xFF); + break; + case _ADJUST: + rgblight_setrgb (0x00, 0xFF, 0x00); + break; + default: // for any other layers, or the default layer + rgblight_mode(28); + break; + } + return state; +} diff --git a/keyboards/iris/keymaps/edvorakjp/readme.md b/keyboards/iris/keymaps/edvorakjp/readme.md new file mode 100644 index 0000000000..e5d3eab11f --- /dev/null +++ b/keyboards/iris/keymaps/edvorakjp/readme.md @@ -0,0 +1,21 @@ +# edvorakjp + +Epaew's Enhanced Dvorak layout for Japanese Programmer +see [here](../../../../users/edvorakjp) for more informations. + +## License + +Copyright 2018 Ryo Maeda epaew.333@gmail.com @epaew + +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 . diff --git a/keyboards/iris/keymaps/edvorakjp/rules.mk b/keyboards/iris/keymaps/edvorakjp/rules.mk new file mode 100644 index 0000000000..1c88fbc7bc --- /dev/null +++ b/keyboards/iris/keymaps/edvorakjp/rules.mk @@ -0,0 +1,16 @@ +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. -- cgit v1.2.3