2021-07-03 18:09:02 +02:00
// Copyright 2019 Manna Harbour
// https://github.com/manna-harbour/miryoku
2019-06-26 09:33:12 +02:00
2021-07-03 18:09:02 +02:00
// 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/>.
2022-07-02 13:26:23 +02:00
# include QMK_KEYBOARD_H
2020-06-23 07:30:05 +02:00
# include "manna-harbour_miryoku.h"
2019-06-26 09:33:12 +02:00
2022-07-02 13:26:23 +02:00
enum layers { MIRYOKU_LAYER_NAMES } ;
2019-06-26 09:33:12 +02:00
const uint16_t PROGMEM keymaps [ ] [ MATRIX_ROWS ] [ MATRIX_COLS ] = {
2022-07-02 13:26:23 +02:00
[ BASE ] = U_MACRO_VA_ARGS ( LAYOUT_miryoku , MIRYOKU_LAYER_BASE ) ,
[ NAV ] = U_MACRO_VA_ARGS ( LAYOUT_miryoku , MIRYOKU_LAYER_NAV ) ,
[ MOUSE ] = U_MACRO_VA_ARGS ( LAYOUT_miryoku , MIRYOKU_LAYER_MOUSE ) ,
[ MEDIA ] = U_MACRO_VA_ARGS ( LAYOUT_miryoku , MIRYOKU_LAYER_MEDIA ) ,
[ NUM ] = U_MACRO_VA_ARGS ( LAYOUT_miryoku , MIRYOKU_LAYER_NUM ) ,
[ SYM ] = U_MACRO_VA_ARGS ( LAYOUT_miryoku , MIRYOKU_LAYER_SYM ) ,
[ FUN ] = U_MACRO_VA_ARGS ( LAYOUT_miryoku , MIRYOKU_LAYER_FUN ) ,
[ BUTTON ] = U_MACRO_VA_ARGS ( LAYOUT_miryoku , MIRYOKU_LAYER_BUTTON )
} ;
# if defined (MIRYOKU_KLUDGE_THUMBCOMBOS)
const uint16_t PROGMEM thumbcombos_base_right [ ] = { LT ( SYM , KC_ENT ) , LT ( NUM , KC_BSPC ) , COMBO_END } ;
const uint16_t PROGMEM thumbcombos_base_left [ ] = { LT ( NAV , KC_SPC ) , LT ( MOUSE , KC_TAB ) , COMBO_END } ;
const uint16_t PROGMEM thumbcombos_nav [ ] = { KC_ENT , KC_BSPC , COMBO_END } ;
const uint16_t PROGMEM thumbcombos_mouse [ ] = { KC_BTN1 , KC_BTN3 , COMBO_END } ;
const uint16_t PROGMEM thumbcombos_media [ ] = { KC_MSTP , KC_MPLY , COMBO_END } ;
const uint16_t PROGMEM thumbcombos_num [ ] = { KC_0 , KC_MINS , COMBO_END } ;
# if defined (MIRYOKU_LAYERS_FLIP)
const uint16_t PROGMEM thumbcombos_sym [ ] = { KC_UNDS , KC_LPRN , COMBO_END } ;
2021-07-03 18:09:02 +02:00
# else
2022-07-02 13:26:23 +02:00
const uint16_t PROGMEM thumbcombos_sym [ ] = { KC_RPRN , KC_UNDS , COMBO_END } ;
2021-07-03 18:09:02 +02:00
# endif
2022-07-02 13:26:23 +02:00
const uint16_t PROGMEM thumbcombos_fun [ ] = { KC_SPC , KC_TAB , COMBO_END } ;
combo_t key_combos [ COMBO_COUNT ] = {
COMBO ( thumbcombos_base_right , LT ( FUN , KC_DEL ) ) ,
COMBO ( thumbcombos_base_left , LT ( MEDIA , KC_ESC ) ) ,
COMBO ( thumbcombos_nav , KC_DEL ) ,
COMBO ( thumbcombos_mouse , KC_BTN2 ) ,
COMBO ( thumbcombos_media , KC_MUTE ) ,
COMBO ( thumbcombos_num , KC_DOT ) ,
# if defined (MIRYOKU_LAYERS_FLIP)
COMBO ( thumbcombos_sym , KC_RPRN ) ,
2021-07-03 18:09:02 +02:00
# else
2022-07-02 13:26:23 +02:00
COMBO ( thumbcombos_sym , KC_LPRN ) ,
2021-07-03 18:09:02 +02:00
# endif
2022-07-02 13:26:23 +02:00
COMBO ( thumbcombos_fun , KC_APP )
2019-06-26 09:33:12 +02:00
} ;
2022-07-02 13:26:23 +02:00
# endif