]> git.donarmstrong.com Git - qmk_firmware.git/blob - users/edvorakjp/edvorakjp.h
Update keyboards/kbdfans/kbd67/readme.md
[qmk_firmware.git] / users / edvorakjp / edvorakjp.h
1 #ifndef EDVORAKJP
2 #define EDVORAKJP
3
4 #include "quantum.h"
5 #include "action_layer.h"
6
7 #define EECONFIG_EDVORAK (uint8_t *)20
8
9 extern keymap_config_t keymap_config;
10
11 enum edvorakjp_layers {
12   _EDVORAK = 0,
13   _EDVORAKJ1,
14   _EDVORAKJ2,
15   _QWERTY,
16   _LOWER,
17   _RAISE,
18   _ADJUST,
19   _EXTRA,
20 };
21
22 enum edvorakjp_keycodes {
23   EDVORAK = SAFE_RANGE,
24   QWERTY,
25   LOWER,
26   RAISE,
27   KC_MAC,
28   KC_WIN,
29   KC_EXTON,
30   KC_EXTOFF,
31   KC_JPN,
32   KC_ENG,
33   KC_AI,
34   KC_OU,
35   KC_EI,
36   KC_ANN,
37   KC_ONN,
38   KC_ENN,
39   KC_INN,
40   KC_UNN,
41   NEW_SAFE_RANGE
42 };
43
44 enum tap_dance_code {
45   TD_LOWER = 0,
46   TD_RAISE
47 };
48
49 // base
50 void dvorakj_layer_off(void);
51 void matrix_init_user(void);
52 void matrix_init_keymap(void);
53 uint32_t layer_state_set_user(uint32_t state);
54 uint32_t layer_state_set_keymap(uint32_t state);
55 bool process_record_user(uint16_t keycode, keyrecord_t *record);
56 bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
57
58 // status
59 void edvorakjp_status_init(void);
60 bool get_enable_jp_extra_layer(void);
61 void set_enable_jp_extra_layer(bool new_state);
62 bool get_enable_kc_lang(void);
63 void set_enable_kc_lang(bool new_state);
64 bool get_japanese_mode(void);
65 void set_japanese_mode(bool new_state);
66
67 /*
68  * Each process_record_* methods defined here are
69  * return false if processed, or return true if not processed.
70  * You can add your original macros in process_record_keymap() in keymap.c.
71  */
72 bool process_record_edvorakjp_ext(uint16_t keycode, keyrecord_t *record);
73 bool process_record_edvorakjp_swap_scln(uint16_t keycode, keyrecord_t *record);
74 bool process_record_edvorakjp_config(uint16_t keycode, keyrecord_t *record);
75 bool process_record_layer(uint16_t keycode, keyrecord_t *record);
76 bool process_record_ime(uint16_t keycode, keyrecord_t *record);
77
78 #endif // EDVORAKJP