* 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
		
			
				
	
	
		
			75 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef USERSPACE
 | |
| #define USERSPACE
 | |
| 
 | |
| #include "quantum.h"
 | |
| #include "action_layer.h"
 | |
| 
 | |
| #define EECONFIG_EDVORAK (uint8_t *)20
 | |
| 
 | |
| extern keymap_config_t keymap_config;
 | |
| 
 | |
| typedef union {
 | |
|   uint8_t raw;
 | |
|   struct {
 | |
|     bool enable_jp_extra_layer : 1;
 | |
|     bool enable_kc_lang        : 1;  // for macOS
 | |
|   };
 | |
| } edvorakjp_config_t;
 | |
| 
 | |
| enum edvorakjp_layers {
 | |
|   _EDVORAK = 0,
 | |
|   _EDVORAKJ1,
 | |
|   _EDVORAKJ2,
 | |
|   _QWERTY,
 | |
|   _LOWER,
 | |
|   _RAISE,
 | |
|   _ADJUST,
 | |
|   _EXTRA,
 | |
| };
 | |
| 
 | |
| enum edvorakjp_keycodes {
 | |
|   EDVORAK = SAFE_RANGE,
 | |
|   QWERTY,
 | |
|   LOWER,
 | |
|   RAISE,
 | |
|   KC_MAC,
 | |
|   KC_WIN,
 | |
|   KC_EXTON,
 | |
|   KC_EXTOFF,
 | |
|   KC_JPN,
 | |
|   KC_ENG,
 | |
|   KC_AI,
 | |
|   KC_OU,
 | |
|   KC_EI,
 | |
|   KC_ANN,
 | |
|   KC_ONN,
 | |
|   KC_ENN,
 | |
|   KC_INN,
 | |
|   KC_UNN,
 | |
|   NEW_SAFE_RANGE
 | |
| };
 | |
| 
 | |
| uint8_t eeconfig_read_edvorakjp(void);
 | |
| void eeconfig_update_edvorakjp(uint8_t val);
 | |
| 
 | |
| void dvorakj_layer_off(void);
 | |
| void update_japanese_mode(bool new_state);
 | |
| void matrix_init_user(void);
 | |
| void matrix_init_keymap(void);
 | |
| uint32_t layer_state_set_user(uint32_t state);
 | |
| uint32_t layer_state_set_keymap(uint32_t state);
 | |
| 
 | |
| /*
 | |
|  * Each process_record_* methods defined here are
 | |
|  * return false if processed, or return true if not processed.
 | |
|  * You can add your original macros in process_record_keymap() in keymap.c.
 | |
|  */
 | |
| bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
 | |
| bool process_record_edvorakjp_ext(uint16_t keycode, keyrecord_t *record);
 | |
| bool process_record_edvorakjp_config(uint16_t keycode, keyrecord_t *record);
 | |
| bool process_record_layer(uint16_t keycode, keyrecord_t *record);
 | |
| bool process_record_ime(uint16_t keycode, keyrecord_t *record);
 | |
| bool process_record_user(uint16_t keycode, keyrecord_t *record);
 | |
| 
 | |
| #endif
 |