aboutsummaryrefslogtreecommitdiff
path: root/users/edvorakjp/edvorakjp.h
diff options
context:
space:
mode:
Diffstat (limited to 'users/edvorakjp/edvorakjp.h')
-rw-r--r--users/edvorakjp/edvorakjp.h37
1 files changed, 20 insertions, 17 deletions
diff --git a/users/edvorakjp/edvorakjp.h b/users/edvorakjp/edvorakjp.h
index f67400686..e781bf237 100644
--- a/users/edvorakjp/edvorakjp.h
+++ b/users/edvorakjp/edvorakjp.h
@@ -1,5 +1,5 @@
1#ifndef USERSPACE 1#ifndef EDVORAKJP
2#define USERSPACE 2#define EDVORAKJP
3 3
4#include "quantum.h" 4#include "quantum.h"
5#include "action_layer.h" 5#include "action_layer.h"
@@ -8,15 +8,6 @@
8 8
9extern keymap_config_t keymap_config; 9extern keymap_config_t keymap_config;
10 10
11typedef union {
12 uint8_t raw;
13 struct {
14 bool enable_jp_extra_layer : 1;
15 bool enable_kc_lang : 1; // for macOS
16 };
17} edvorakjp_config_t;
18extern edvorakjp_config_t edvorakjp_config;
19
20enum edvorakjp_layers { 11enum edvorakjp_layers {
21 _EDVORAK = 0, 12 _EDVORAK = 0,
22 _EDVORAKJ1, 13 _EDVORAKJ1,
@@ -50,26 +41,38 @@ enum edvorakjp_keycodes {
50 NEW_SAFE_RANGE 41 NEW_SAFE_RANGE
51}; 42};
52 43
53uint8_t eeconfig_read_edvorakjp(void); 44enum tap_dance_code {
54void eeconfig_update_edvorakjp(uint8_t val); 45 TD_LOWER = 0,
46 TD_RAISE
47};
55 48
49// base
56void dvorakj_layer_off(void); 50void dvorakj_layer_off(void);
57void update_japanese_mode(bool new_state);
58void matrix_init_user(void); 51void matrix_init_user(void);
59void matrix_init_keymap(void); 52void matrix_init_keymap(void);
60uint32_t layer_state_set_user(uint32_t state); 53uint32_t layer_state_set_user(uint32_t state);
61uint32_t layer_state_set_keymap(uint32_t state); 54uint32_t layer_state_set_keymap(uint32_t state);
55bool process_record_user(uint16_t keycode, keyrecord_t *record);
56bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
57
58// status
59void edvorakjp_status_init(void);
60bool get_enable_jp_extra_layer(void);
61void set_enable_jp_extra_layer(bool new_state);
62bool get_enable_kc_lang(void);
63void set_enable_kc_lang(bool new_state);
64bool get_japanese_mode(void);
65void set_japanese_mode(bool new_state);
62 66
63/* 67/*
64 * Each process_record_* methods defined here are 68 * Each process_record_* methods defined here are
65 * return false if processed, or return true if not processed. 69 * return false if processed, or return true if not processed.
66 * You can add your original macros in process_record_keymap() in keymap.c. 70 * You can add your original macros in process_record_keymap() in keymap.c.
67 */ 71 */
68bool process_record_keymap(uint16_t keycode, keyrecord_t *record);
69bool process_record_edvorakjp_ext(uint16_t keycode, keyrecord_t *record); 72bool process_record_edvorakjp_ext(uint16_t keycode, keyrecord_t *record);
73bool process_record_edvorakjp_swap_scln(uint16_t keycode, keyrecord_t *record);
70bool process_record_edvorakjp_config(uint16_t keycode, keyrecord_t *record); 74bool process_record_edvorakjp_config(uint16_t keycode, keyrecord_t *record);
71bool process_record_layer(uint16_t keycode, keyrecord_t *record); 75bool process_record_layer(uint16_t keycode, keyrecord_t *record);
72bool process_record_ime(uint16_t keycode, keyrecord_t *record); 76bool process_record_ime(uint16_t keycode, keyrecord_t *record);
73bool process_record_user(uint16_t keycode, keyrecord_t *record);
74 77
75#endif 78#endif // EDVORAKJP