Add edvorakjp kepmap for crkbd (#4537)
* edvorakjp layout for crkbd * bugfix of edvorakjp QMK cannot send keycode that doesn't exists on new layer.
This commit is contained in:
		
							parent
							
								
									5d47231f2a
								
							
						
					
					
						commit
						fe982caf5d
					
				
					 7 changed files with 354 additions and 5 deletions
				
			
		
							
								
								
									
										158
									
								
								keyboards/crkbd/keymaps/edvorakjp/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										158
									
								
								keyboards/crkbd/keymaps/edvorakjp/keymap.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,158 @@
 | 
			
		|||
#include QMK_KEYBOARD_H
 | 
			
		||||
#ifdef PROTOCOL_LUFA
 | 
			
		||||
  #include "split_util.h"
 | 
			
		||||
#endif
 | 
			
		||||
#ifdef SSD1306OLED
 | 
			
		||||
  #include "oled.h"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#include "edvorakjp.h"
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * 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 TD(TD_LOWER) // act as LOWER when hold, as KC_LANG2(=English) when tapped
 | 
			
		||||
#define KC_TMB4 TD(TD_RAISE) // act as RAISE when hold, as KC_LANG1(=Japanese) when tapped
 | 
			
		||||
#define KC_TMB5 RCTL_T(KC_BSPC)
 | 
			
		||||
#define KC_TMB6 RALT_T(KC_ENT)
 | 
			
		||||
#define KC_TMB7 KC_DEL
 | 
			
		||||
#define KC_TMB8 RALT(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(
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
     ESC ,QUOT,COMM,DOT , Y  , P  ,             F  , G  , R  , W  , Q  ,BSLS,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
     EQL , A  , O  , E  , I  , U  ,             D  , T  , N  , S  , M  ,MINS,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
     GRV ,SCLN, X  , C  , V  , Z  ,             B  , H  , J  , K  , L  ,SLSH,
 | 
			
		||||
  //`----+----+----+----+----+----+----| |----+----+----+----+----+----+----'
 | 
			
		||||
                         TMB1,TMB2,TMB3,  TMB4,TMB5,TMB6
 | 
			
		||||
  //                    `----+----+----' `----+----+----'
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_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(
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
     TAB , Q  , W  , E  , R  , T  ,             Y  , U  , I  , O  , P  ,MINS,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
     EQL , A  , S  , D  , F  , G  ,             H  , J  , K  , L  ,SCLN,QUOT,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
     GRV , Z  , X  , C  , V  , B  ,             N  , M  ,COMM,DOT ,SLSH,BSLS,
 | 
			
		||||
  //`----+----+----+----+----+----+----| |----+----+----+----+----+----+----'
 | 
			
		||||
                             ,    ,    ,      ,    ,
 | 
			
		||||
  //                    `----+----+----' `----+----+----'
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_LOWER] = LAYOUT_kc(
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         ,    , 2  , 3  , 4  , 5  ,             6  , 7  , 8  , 9  ,    ,    ,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         , 1  ,EXLM, AT ,HASH,DLR ,            PERC,CIRC,AMPR,ASTR, 0  ,    ,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         ,    , LT ,LCBR,LPRN,LBRC,            RBRC,RPRN,RCBR, GT ,    ,    ,
 | 
			
		||||
  //`----+----+----+----+----+----+----| |----+----+----+----+----+----+----'
 | 
			
		||||
                             ,    ,    ,      ,TMB7,TMB8
 | 
			
		||||
  //                    `----+----+----' `----+----+----'
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_RAISE] = LAYOUT_kc(
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         , F1 , F2 , F3 , F4 , F5 ,             F6 , F7 , F8 , F9 ,F10 ,    ,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         ,F11 ,F12 ,PSCR,SLCK,PAUS,                ,HOME,PGDN,PGUP,END ,    ,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         ,    ,    ,    ,    ,    ,                ,LEFT,DOWN, UP ,RGHT,    ,
 | 
			
		||||
  //|----+----+----+----+----+----+----| |----+----+----+----+----+----+----'
 | 
			
		||||
                         TMB9,    ,    ,      ,    ,
 | 
			
		||||
  //                    `----+----+----' `----+----+----'
 | 
			
		||||
  ),
 | 
			
		||||
 | 
			
		||||
  [_ADJUST] = LAYOUT_kc(
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         ,    ,    ,   ,EXTOFF,   ,                ,EXTON,   ,    ,    ,    ,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         ,    ,    ,QWER,WIN ,RST ,            RTOG,MAC ,EDJP,    ,    ,    ,
 | 
			
		||||
  //|----+----+----+----+----+----|           |----+----+----+----+----+----|
 | 
			
		||||
         ,    ,    ,    ,    ,    ,                ,    ,    ,    ,    ,    ,
 | 
			
		||||
  //`----+----+----+----+----+----+----| |----+----+----+----+----+----+----'
 | 
			
		||||
                             ,    ,    ,      ,    ,
 | 
			
		||||
  //                    `----+----+----' `----+----+----'
 | 
			
		||||
  )
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#ifdef SSD1306OLED
 | 
			
		||||
void matrix_init_keymap(void) {
 | 
			
		||||
  //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
 | 
			
		||||
  iota_gfx_init(!has_usb());   // turns on the display
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void matrix_scan_user(void) {
 | 
			
		||||
  iota_gfx_task();  // this is what updates the display continuously
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef RGBLIGHT_EFFECT_STATIC_GRADIENT
 | 
			
		||||
uint32_t layer_state_set_keymap(uint32_t state) {
 | 
			
		||||
  rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
 | 
			
		||||
  switch (biton32(state)) {
 | 
			
		||||
    case _EDVORAKJ1:
 | 
			
		||||
    case _EDVORAKJ2:
 | 
			
		||||
      // _EDVORAKJ1 & J2 are same colored
 | 
			
		||||
      rgblight_sethsv_noeeprom_white();
 | 
			
		||||
      break;
 | 
			
		||||
    case _LOWER:
 | 
			
		||||
      rgblight_sethsv_noeeprom_red();
 | 
			
		||||
      break;
 | 
			
		||||
    case _RAISE:
 | 
			
		||||
      rgblight_sethsv_noeeprom_blue();
 | 
			
		||||
      break;
 | 
			
		||||
    case _ADJUST:
 | 
			
		||||
      rgblight_sethsv_noeeprom_green();
 | 
			
		||||
      break;
 | 
			
		||||
    default: //  for any other layers, or the default layer
 | 
			
		||||
      rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_GRADIENT + 3);
 | 
			
		||||
      rgblight_sethsv_noeeprom_red();
 | 
			
		||||
      break;
 | 
			
		||||
  }
 | 
			
		||||
  return state;
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue