| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242 |
- /*
- Copyright 2018 Eric Gebhart <e.a.gebhart@gmail.com>
- 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 <http://www.gnu.org/licenses/>.
- */
- #include "keymap_bepo.h"
- #include "ericgebhart.h"
- const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [DVORAK] = LAYOUT_ortho_5x15_wrapper(
- KC_GRV, ___ORTHO_15_N___, KC_EQL,
- KC_LOCK, ___13_DVORAK_1___, KC_SLASH,
- TAB_BKTAB, ___13_DVORAK_2___, KC_MINUS,
- KC_LSFT, ___13_DVORAK_3___, KC_RSFT,
- ___ORTHO_15_BOTTOM___
- ),
- [QWERTY] = LAYOUT_ortho_5x15_wrapper(
- KC_GRV, ___ORTHO_15_N___, KC_EQL,
- KC_LOCK, ___13_QWERTY_1___, KC_SLASH,
- TAB_BKTAB, ___13_QWERTY_2___, KC_MINUS,
- KC_LSFT, ___13_QWERTY_3___, KC_RSFT,
- ___ORTHO_15_BOTTOM___
- ),
- [COLEMAK] = LAYOUT_ortho_5x15_wrapper(
- KC_GRV, ___ORTHO_15_N___, KC_EQL,
- KC_LOCK, ___13_COLEMAK_1___, KC_SLASH,
- TAB_BKTAB, ___13_COLEMAK_2___, KC_MINUS,
- KC_LSFT, ___13_COLEMAK_3___, KC_RSFT,
- ___ORTHO_15_BOTTOM___
- ),
- [WORKMAN] = LAYOUT_ortho_5x15_wrapper(
- KC_GRV, ___ORTHO_15_N___, KC_EQL,
- KC_LOCK, ___13_WORKMAN_1___, KC_SLASH,
- TAB_BKTAB, ___13_WORKMAN_2___, KC_MINUS,
- KC_LSFT, ___13_WORKMAN_3___, KC_RSFT,
- ___ORTHO_15_BOTTOM___
- ),
- [NORMAN] = LAYOUT_ortho_5x15_wrapper(
- KC_GRV, ___ORTHO_15_N___, KC_EQL,
- KC_LOCK, ___13_NORMAN_1___, KC_SLASH,
- TAB_BKTAB, ___13_NORMAN_2___, KC_MINUS,
- KC_LSFT, ___13_NORMAN_3___, KC_RSFT,
- ___ORTHO_15_BOTTOM___
- ),
- [DVORAK_ON_BEPO] = LAYOUT_ortho_5x15_wrapper(
- DB_GRV, ___ORTHO_15_B_N___, DB_EQL,
- KC_LOCK, ___13_DVORAK_B_1___, DB_SLASH,
- TAB_BKTAB, ___13_DVORAK_B_2___, DB_MINUS,
- KC_LSFT, ___13_DVORAK_B_3___, KC_RSFT,
- ___ORTHO_15_BOTTOM_FR___
- ),
- [XMONAD] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___, ___13_DVORAK_1___, ___,
- ___, ___13_DVORAK_2___, ___,
- ___, ___13_DVORAK_3___, ___,
- ___15___
- ),
- [XMONAD_FR] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___, ___13_DVORAK_B_1___, ___,
- ___, ___13_DVORAK_B_2___, ___,
- ___, ___13_DVORAK_B_3___, ___,
- ___15___
- ),
- [BEPO] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_B_SYMB___,
- KC_LOCK, ___13_BEPO_1___, BP_W,
- TAB_BKTAB, ___13_BEPO_2___, BP_CCED,
- BP_SFT_T_ECRC, ___13_BEPO_3___, BP_SFT_T_W,
- ___ORTHO_15_BOTTOM_BP___
- ),
- // SYMBOLS
- [SYMB] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___15_SYMB_1___,
- ___15_SYMB_2___,
- ___15_SYMB_3___,
- ___15_SYMB_4___
- ),
- [KEYPAD] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___15_KP_1___,
- ___15_KP_2___,
- ___15_KP_3___,
- ___15_KP_4___
- ),
- [KEYPAD_ON_BEPO] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___15_KP_B_1___,
- ___15_KP_B_2___,
- ___15_KP_B_3___,
- ___15_KP_B_4___
- ),
- [SYMB_ON_BEPO] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___15_SYMB_B_1___,
- ___15_SYMB_B_2___,
- ___15_SYMB_B_3___,
- ___15_SYMB_B_4___
- ),
- // MEDIA AND MOUSE
- [MDIA] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___15_MDIA_1___,
- ___15_MDIA_2___,
- ___15_MDIA_3___,
- ___15_MDIA_4___
- ),
- [LAYERS] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___15_LAYERS_1___,
- ___15_LAYERS_2___,
- ___15_LAYERS_3___,
- ___15___
- ),
- [_RGB] = LAYOUT_ortho_5x15_wrapper(
- ___ORTHO_15_FUNC_1_12___,
- ___15_RGB_1___,
- ___15_RGB_2___,
- ___15_RGB_3___,
- ___15___
- ),
- };
- /********************************************************************************/
- /* Using layers to do RGB underlighting */
- /********************************************************************************/
- const rgblight_segment_t PROGMEM on_bepo[] = RGBLIGHT_LAYER_SEGMENTS(
- {0, 2, HSV_AZURE}
- );
- const rgblight_segment_t PROGMEM bepo[] = RGBLIGHT_LAYER_SEGMENTS(
- {3, 2, HSV_MAGENTA}
- );
- const rgblight_segment_t PROGMEM dvorak[] = RGBLIGHT_LAYER_SEGMENTS(
- {3, 2, HSV_AZURE}
- );
- const rgblight_segment_t PROGMEM media[] = RGBLIGHT_LAYER_SEGMENTS(
- {5, 1, HSV_GREEN}
- );
- const rgblight_segment_t PROGMEM symbol[] = RGBLIGHT_LAYER_SEGMENTS(
- {4, 2, HSV_GOLD}
- );
- const rgblight_segment_t PROGMEM keypad[] = RGBLIGHT_LAYER_SEGMENTS(
- {4, 2, HSV_BLUE}
- );
- const rgblight_segment_t PROGMEM layers[] = RGBLIGHT_LAYER_SEGMENTS(
- {5, 1, HSV_RED}
- );
- const rgblight_segment_t PROGMEM rgb[] = RGBLIGHT_LAYER_SEGMENTS(
- {5, 1, HSV_ORANGE}
- );
- const rgblight_segment_t* const PROGMEM rgb_layers[] = RGBLIGHT_LAYERS_LIST(on_bepo, bepo, dvorak, media, symbol,
- keypad, layers, rgb);
- void keyboard_post_init_user(void) {
- rgblight_sethsv_noeeprom(HSV_PURPLE);
- rgblight_layers = rgb_layers;
- }
- layer_state_t layer_state_set_user(layer_state_t state) {
- // rgblight_set_layer_state(0, !on_qwerty());
- rgblight_set_layer_state(0, layer_state_cmp(state, DVORAK));
- rgblight_set_layer_state(1, layer_state_cmp(state, BEPO));
- rgblight_set_layer_state(2, layer_state_cmp(state, DVORAK));
- //|| layer_state_cmp(state, DVORAK_ON_BEPO)));
- rgblight_set_layer_state(3, layer_state_cmp(state, MDIA));
- rgblight_set_layer_state(4, layer_state_cmp(state, SYMB) );
- //(layer_state_cmp(state, SYMB) || (layer_state_cmp(state, SYMB_ON_BEPO))));
- rgblight_set_layer_state(5, layer_state_cmp(state, KEYPAD) );
- ///(layer_state_cmp(state, KEYPAD) || (layer_state_cmp(state, KEYPAD_ON_BEPO))));
- rgblight_set_layer_state(6, layer_state_cmp(state, LAYERS));
- rgblight_set_layer_state(7, layer_state_cmp(state, _RGB));
- return state;
- }
- /* void suspend_power_down_user(void) { */
- /* rgblight_disable(); */
- /* } */
- /* void suspend_wakeup_init_user(void) { */
- /* rgblight_enable(); */
- /* } */
- /* bool is_shift_pressed = false; */
- /* bool led_update_user(led_t led_state) { */
- /* rgblight_set_layer_state(2, is_shift_pressed != led_state.caps_lock); */
- /* return true; */
- /* } */
- /* bool process_record_user(uint16_t keycode, keyrecord_t* record) { */
- /* switch (keycode) { */
- /* case KC_LSFT: */
- /* case KC_RSFT: */
- /* is_shift_pressed = record->event.pressed; */
- /* rgblight_set_layer_state(2, is_shift_pressed != host_keyboard_led_state().caps_lock); */
- /* default: */
- /* return true; */
- /* } */
- /* } */
|