Adds default IC keymap (#2677)
This commit is contained in:
		
							parent
							
								
									d3c6da7aff
								
							
						
					
					
						commit
						5ec3bd9e40
					
				
					 2 changed files with 290 additions and 0 deletions
				
			
		
							
								
								
									
										267
									
								
								keyboards/ergodox_infinity/keymaps/input_club/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										267
									
								
								keyboards/ergodox_infinity/keymaps/input_club/keymap.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,267 @@
 | 
			
		|||
#include QMK_KEYBOARD_H
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
#include "version.h"
 | 
			
		||||
 | 
			
		||||
#define L0 0 // default layer
 | 
			
		||||
#define L1 1
 | 
			
		||||
#define L2 2
 | 
			
		||||
 | 
			
		||||
enum custom_keycodes {
 | 
			
		||||
  PLACEHOLDER = SAFE_RANGE, // can always be here
 | 
			
		||||
  EPRM,
 | 
			
		||||
  VRSN,
 | 
			
		||||
  RGB_SLD
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
[L0] = LAYOUT_ergodox(  // layer 0 : default
 | 
			
		||||
/*
 | 
			
		||||
 * left hand
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *    |   =   |  0  |  2  |  3  |  4  |  5  | ESC |
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *    |   \   |  Q  |  W  |  E  |  R  |  T  |LCK-1|
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+     |
 | 
			
		||||
 *    |  TAB  |  A  |  S  |  D  |  F  |  G  +-----+
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+ f1  |
 | 
			
		||||
 *    | LSHIFT|  Z  |  X  |  C  |  V  |  B  |     |
 | 
			
		||||
 *    +-+-----+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *      |LGUI |  `  |  \  |LEFT |RIGHT|
 | 
			
		||||
 *      +-----+-----+-----+-----+-----+   +-----+-----+
 | 
			
		||||
 *                                        |LCTRL| LALT|
 | 
			
		||||
 *                                  +-----+-----+-----+
 | 
			
		||||
 *                                  |     |     | HOME|
 | 
			
		||||
 *                                  |BKSPC| DEL +-----+
 | 
			
		||||
 *                                  |     |     | END |
 | 
			
		||||
 *                                  +-----+-----+-----+
 | 
			
		||||
 */
 | 
			
		||||
        KC_EQL,  KC_1,   KC_2,    KC_3,    KC_4,    KC_5, KC_ESC,
 | 
			
		||||
        KC_BSLS, KC_Q,   KC_W,    KC_E,    KC_R,    KC_T, TG(L1),
 | 
			
		||||
        KC_TAB,  KC_A,   KC_S,    KC_D,    KC_F,    KC_G,
 | 
			
		||||
        KC_LSFT, KC_Z,   KC_X,    KC_C,    KC_V,    KC_B, MO(L1),
 | 
			
		||||
        KC_LGUI, KC_GRV, KC_BSLS, KC_LEFT, KC_RGHT,
 | 
			
		||||
                                                      KC_LCTL, KC_LALT,
 | 
			
		||||
                                                               KC_HOME,
 | 
			
		||||
                                             KC_BSPC, KC_DELT, KC_END,
 | 
			
		||||
/* right hand
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        |LCK-2|  6  |  7  |  8  |  9  |  0  |   -   |
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        |  [  |  Y  |  U  |  I  |  O  |  P  |   ]   |
 | 
			
		||||
 *        |     +-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        +-----+  H  |  J  |  K  |  L  |  ;  |   '   |
 | 
			
		||||
 *        | f1  +-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        |     |  N  |  M  |  ,  |  .  |  /  | RSHIFT|
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-----+-+
 | 
			
		||||
 *                    |LEFT |DOWN | UP  |RIGHT| RGUI|
 | 
			
		||||
 *    +-----+-----+   +-----+-----+-----+-----+-----+
 | 
			
		||||
 *    | RALT|RCTRL|
 | 
			
		||||
 *    +-----+-----+-----+
 | 
			
		||||
 *    | PGUP|     |     |
 | 
			
		||||
 *    +-----+ ENT | SPC |
 | 
			
		||||
 *    | PGDN|     |     |
 | 
			
		||||
 *    +-----+-----+-----+
 | 
			
		||||
 */
 | 
			
		||||
             TG(L2),  KC_6,   KC_7,    KC_8,    KC_9,   KC_0,     KC_MINS,
 | 
			
		||||
             KC_LBRC, KC_Y,   KC_U,    KC_I,    KC_O,   KC_P,     KC_RBRC,
 | 
			
		||||
                      KC_H,   KC_J,    KC_K,    KC_L,   KC_SCLN,  KC_QUOT,
 | 
			
		||||
             MO(L1),  KC_N,   KC_M,    KC_COMM, KC_DOT, KC_SLSH,  KC_RSFT,
 | 
			
		||||
                              KC_LEFT, KC_DOWN, KC_UP,  KC_RIGHT, KC_RGUI,
 | 
			
		||||
             KC_RALT, KC_RCTL,
 | 
			
		||||
             KC_PGUP,
 | 
			
		||||
             KC_PGDN, KC_ENT, KC_SPC
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
[L1] = LAYOUT_ergodox( // layer 1 : function layers
 | 
			
		||||
/* left hand
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *    |       | f1  | f2  | f3  | f4  | f5  | f11 |
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *    |       |     |     |     |     |     |     |
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+     |
 | 
			
		||||
 *    |       |     |     |     |     |     +-----+
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+     |
 | 
			
		||||
 *    |       |     |     |     |     |     |     |
 | 
			
		||||
 *    +-+-----+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *      |     |     |     |     |     |
 | 
			
		||||
 *      +-----+-----+-----+-----+-----+   +-----+-----+
 | 
			
		||||
 *                                        |     |     |
 | 
			
		||||
 *                                  +-----+-----+-----+
 | 
			
		||||
 *                                  |     |     |     |
 | 
			
		||||
 *                                  |     |     +-----+
 | 
			
		||||
 *                                  |     |     |     |
 | 
			
		||||
 *                                  +-----+-----+-----+
 | 
			
		||||
 */
 | 
			
		||||
       KC_TRNS, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
                                                      KC_TRNS, KC_TRNS,
 | 
			
		||||
                                                               KC_TRNS,
 | 
			
		||||
                                             KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
/* right hand
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        | f12 | f6  | f7  | f8  | f9  | f10 |       |
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        |     |     |     |     |     |     |       |
 | 
			
		||||
 *        |     +-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        +-----+     |     |     |     |     |       |
 | 
			
		||||
 *        |     +-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        |     |     |     |     |     |     |       |
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-----+-+
 | 
			
		||||
 *                    |     |     |     |     |     |
 | 
			
		||||
 *    +-----+-----+   +-----+-----+-----+-----+-----+
 | 
			
		||||
 *    |     |     |
 | 
			
		||||
 *    +-----+-----+-----+
 | 
			
		||||
 *    |     |     |     |
 | 
			
		||||
 *    +-----+     |     |
 | 
			
		||||
 *    |     |     |     |
 | 
			
		||||
 *    +-----+-----+-----+
 | 
			
		||||
 */
 | 
			
		||||
       KC_TRNS, KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
                KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
                         KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,  KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS
 | 
			
		||||
),
 | 
			
		||||
[L2] = LAYOUT_ergodox(
 | 
			
		||||
/* Left hand
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *    | FLASH |     |     |     |     |     |     |
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *    |       |     |     |     |     |     |     |
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+     |
 | 
			
		||||
 *    |       |     |     |     |     |     +-----+
 | 
			
		||||
 *    +-------+-----+-----+-----+-----+-----+     |
 | 
			
		||||
 *    |       |     |     |     |     |     |     |
 | 
			
		||||
 *    +-+-----+-----+-----+-----+-----+-----+-----+
 | 
			
		||||
 *      |     |     |     |     |     |
 | 
			
		||||
 *      +-----+-----+-----+-----+-----+   +-----+-----+
 | 
			
		||||
 *                                        |     |     |
 | 
			
		||||
 *                                  +-----+-----+-----+
 | 
			
		||||
 *                                  |     |     |     |
 | 
			
		||||
 *                                  |     |     +-----+
 | 
			
		||||
 *                                  |     |     |     |
 | 
			
		||||
 *                                  +-----+-----+-----+
 | 
			
		||||
 */
 | 
			
		||||
       RESET,   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
                                           KC_TRNS, KC_TRNS,
 | 
			
		||||
                                                    KC_TRNS,
 | 
			
		||||
                                  KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
/* right hand
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        |     |     |NMLCK| P/  | P*  | P-  |       |
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        |     |     | P7  | P8  | P9  | P+  |       |
 | 
			
		||||
 *        |     +-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        +-----+     | P4  | P5  | P6  | P+  |       |
 | 
			
		||||
 *        |     +-----+-----+-----+-----+-----+-------+
 | 
			
		||||
 *        |     |     | P1  | P2  | P3  |PENT |       |
 | 
			
		||||
 *        +-----+-----+-----+-----+-----+-----+-----+-+
 | 
			
		||||
 *                    |     |     | P.  |PENT |     |
 | 
			
		||||
 *    +-----+-----+   +-----+-----+-----+-----+-----+
 | 
			
		||||
 *    |     |     |
 | 
			
		||||
 *    +-----+-----+-----+
 | 
			
		||||
 *    |     |     |     |
 | 
			
		||||
 *    +-----+     | P0  |
 | 
			
		||||
 *    |     |     |     |
 | 
			
		||||
 *    +-----+-----+-----+
 | 
			
		||||
 */
 | 
			
		||||
       KC_TRNS,  KC_TRNS, KC_NUMLOCK, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_MINUS, KC_TRNS,
 | 
			
		||||
       KC_TRNS,  KC_TRNS, KC_KP_7,    KC_KP_8,     KC_KP_9,        KC_KP_PLUS,  KC_TRNS,
 | 
			
		||||
                 KC_TRNS, KC_KP_4,    KC_KP_5,     KC_KP_6,        KC_KP_PLUS,  KC_TRNS,
 | 
			
		||||
       KC_TRNS,  KC_TRNS, KC_KP_1,    KC_KP_2,     KC_KP_3,        KC_KP_ENTER, KC_TRNS,
 | 
			
		||||
                          KC_TRNS,    KC_TRNS,     KC_KP_DOT,      KC_KP_ENTER, KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS, KC_KP_0
 | 
			
		||||
),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
    [1] = ACTION_LAYER_TAP_TOGGLE(L1)                // FN1 - Momentary Layer 1 (Function)
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
 | 
			
		||||
{
 | 
			
		||||
  // MACRODOWN only works in this function
 | 
			
		||||
      switch(id) {
 | 
			
		||||
        case 0:
 | 
			
		||||
        if (record->event.pressed) {
 | 
			
		||||
          SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
 | 
			
		||||
        }
 | 
			
		||||
        break;
 | 
			
		||||
        case 1:
 | 
			
		||||
        if (record->event.pressed) { // For resetting EEPROM
 | 
			
		||||
          eeconfig_init();
 | 
			
		||||
        }
 | 
			
		||||
        break;
 | 
			
		||||
      }
 | 
			
		||||
    return MACRO_NONE;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 | 
			
		||||
  switch (keycode) {
 | 
			
		||||
    // dynamically generate these.
 | 
			
		||||
    case EPRM:
 | 
			
		||||
      if (record->event.pressed) {
 | 
			
		||||
        eeconfig_init();
 | 
			
		||||
      }
 | 
			
		||||
      return false;
 | 
			
		||||
      break;
 | 
			
		||||
    case VRSN:
 | 
			
		||||
      if (record->event.pressed) {
 | 
			
		||||
        SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
 | 
			
		||||
      }
 | 
			
		||||
      return false;
 | 
			
		||||
      break;
 | 
			
		||||
    case RGB_SLD:
 | 
			
		||||
      if (record->event.pressed) {
 | 
			
		||||
        #ifdef RGBLIGHT_ENABLE
 | 
			
		||||
          rgblight_mode(1);
 | 
			
		||||
        #endif
 | 
			
		||||
      }
 | 
			
		||||
      return false;
 | 
			
		||||
      break;
 | 
			
		||||
  }
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Runs just one time when the keyboard initializes.
 | 
			
		||||
void matrix_init_user(void) {
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// Runs constantly in the background, in a loop.
 | 
			
		||||
void matrix_scan_user(void) {
 | 
			
		||||
 | 
			
		||||
    uint8_t layer = biton32(layer_state);
 | 
			
		||||
 | 
			
		||||
    ergodox_board_led_off();
 | 
			
		||||
    ergodox_right_led_1_off();
 | 
			
		||||
    ergodox_right_led_2_off();
 | 
			
		||||
    ergodox_right_led_3_off();
 | 
			
		||||
    switch (layer) {
 | 
			
		||||
      // TODO: Make this relevant to the ErgoDox EZ.
 | 
			
		||||
        case 1:
 | 
			
		||||
            ergodox_right_led_1_on();
 | 
			
		||||
            break;
 | 
			
		||||
        case 2:
 | 
			
		||||
            ergodox_right_led_2_on();
 | 
			
		||||
            break;
 | 
			
		||||
        default:
 | 
			
		||||
            // none
 | 
			
		||||
            break;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue