Remove complex fn_actions macros (#14662)
				
					
				
			* Remove complex `fn_actions` macros * Remove additional `KC_FN*` instances
This commit is contained in:
		
							parent
							
								
									b25218ccc1
								
							
						
					
					
						commit
						928d9f90ec
					
				
					 37 changed files with 379 additions and 5036 deletions
				
			
		| 
						 | 
				
			
			@ -1,6 +1,5 @@
 | 
			
		|||
#include QMK_KEYBOARD_H
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
 | 
			
		||||
// readme
 | 
			
		||||
// This keyboard layout is based on the [Workman Dead layout](https://github.com/ojbucao/Workman/tree/master/mac#workman-dead-for-programmers), which uses the comma as a dead key to trigger a second layer.
 | 
			
		||||
// Since I have more keys at my disposal on the ErgoDox, I moved the dead key to the bottom right. There are still a lot of
 | 
			
		||||
| 
						 | 
				
			
			@ -9,12 +8,46 @@
 | 
			
		|||
// triggers the key you pressed AND switches the layout back to the original. For now I do this with a super kludgey macro and I
 | 
			
		||||
// look forward to learning about a more elegant way to do the same thing. Until then, this will have to do.
 | 
			
		||||
 | 
			
		||||
enum layer_names {
 | 
			
		||||
    BASE, // default layer
 | 
			
		||||
    SYMB, // symbols
 | 
			
		||||
    MDIA, // media keys
 | 
			
		||||
    DEAD  // dead version of the symbols layer
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
// TODO: Define layer names that make sense for the ErgoDox EZ.
 | 
			
		||||
#define BASE 0 // default layer
 | 
			
		||||
#define SYMB 1 // symbols
 | 
			
		||||
#define MDIA 2 // media keys
 | 
			
		||||
#define DEAD 3 // dead version of the symbols layer
 | 
			
		||||
enum custom_keycodes {
 | 
			
		||||
    M_100 = SAFE_RANGE,
 | 
			
		||||
    M_101,
 | 
			
		||||
    M_102,
 | 
			
		||||
    M_103,
 | 
			
		||||
    M_104,
 | 
			
		||||
    M_105,
 | 
			
		||||
    M_106,
 | 
			
		||||
    M_107,
 | 
			
		||||
    M_108,
 | 
			
		||||
    M_109,
 | 
			
		||||
    M_110,
 | 
			
		||||
    M_111,
 | 
			
		||||
    M_112,
 | 
			
		||||
    M_113,
 | 
			
		||||
    M_114,
 | 
			
		||||
    M_115,
 | 
			
		||||
    M_116,
 | 
			
		||||
    M_117,
 | 
			
		||||
    M_118,
 | 
			
		||||
    M_119,
 | 
			
		||||
    M_120,
 | 
			
		||||
    M_121,
 | 
			
		||||
    M_122,
 | 
			
		||||
    M_123,
 | 
			
		||||
    M_124,
 | 
			
		||||
    M_125,
 | 
			
		||||
    M_126,
 | 
			
		||||
    M_127,
 | 
			
		||||
    M_128,
 | 
			
		||||
    M_129,
 | 
			
		||||
    M_130
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
/* Keymap 0: Basic layer
 | 
			
		||||
| 
						 | 
				
			
			@ -43,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
[BASE] = LAYOUT_ergodox(  // layer 0 : default
 | 
			
		||||
        // left hand
 | 
			
		||||
        KC_GRV,         KC_1,         KC_2,   KC_3,   KC_4,   KC_5,   KC_LEFT,
 | 
			
		||||
        KC_TAB,         KC_Q,         KC_D,   KC_R,   KC_W,   KC_B,   TG(1),
 | 
			
		||||
        KC_TAB,         KC_Q,         KC_D,   KC_R,   KC_W,   KC_B,   TG(SYMB),
 | 
			
		||||
        ALL_T(KC_ESC),  KC_A,         KC_S,   KC_H,   KC_T,   KC_G,
 | 
			
		||||
        KC_LSFT,        KC_Z,         KC_X,   KC_M,   KC_C,   KC_V,   KC_NO,
 | 
			
		||||
        KC_NO,          KC_NO,        KC_LCTL,KC_LALT,KC_LGUI,
 | 
			
		||||
| 
						 | 
				
			
			@ -52,10 +85,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
                                               KC_BSPC,KC_SPC,KC_END,
 | 
			
		||||
        // right hand
 | 
			
		||||
             KC_RGHT,     KC_6,   KC_7,   KC_8,   KC_9,   KC_0,             KC_MINS,
 | 
			
		||||
             TG(1),       KC_J,   KC_F,   KC_U,   KC_P,   KC_SCLN,          KC_BSLS,
 | 
			
		||||
             TG(SYMB),    KC_J,   KC_F,   KC_U,   KC_P,   KC_SCLN,          KC_BSLS,
 | 
			
		||||
                          KC_Y,   KC_N,   KC_E,   KC_O,   KC_I,             KC_QUOT,
 | 
			
		||||
             MEH_T(KC_NO),KC_K,   KC_L,   KC_COMM,KC_DOT, CTL_T(KC_SLSH),   KC_RSFT,
 | 
			
		||||
                                  KC_LEFT,KC_DOWN,KC_UP,  KC_RGHT,          F(4),
 | 
			
		||||
                                  KC_LEFT,KC_DOWN,KC_UP,  KC_RGHT,          TG(DEAD),
 | 
			
		||||
             KC_NO,        KC_NO,
 | 
			
		||||
             KC_PGUP,
 | 
			
		||||
             KC_PGDN,KC_SPC,KC_ENT
 | 
			
		||||
| 
						 | 
				
			
			@ -168,18 +201,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
[DEAD] = LAYOUT_ergodox(
 | 
			
		||||
       // left hand
 | 
			
		||||
       KC_TRNS,   KC_F1,    KC_F2,    KC_F3,      KC_F4,    KC_F5,          KC_TRNS,
 | 
			
		||||
       KC_TRNS,   M(100),   M(101),   M(102),     M(103),   M(104),         KC_TRNS,
 | 
			
		||||
       KC_TRNS,   M(109),  M(110),  M(111),       M(112),   M(113),
 | 
			
		||||
       KC_TRNS,   M(120),     M(121),     M(122),           M(123),     M(124),        KC_TRNS,
 | 
			
		||||
       KC_TRNS,   M_100,    M_101,    M_102,      M_103,    M_104,          KC_TRNS,
 | 
			
		||||
       KC_TRNS,   M_109,   M_110,   M_111,        M_112,    M_113,
 | 
			
		||||
       KC_TRNS,   M_120,      M_121,      M_122,            M_123,      M_124,         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
 | 
			
		||||
       KC_TRNS, KC_F6,    KC_F7,    KC_F8,    KC_F9,    KC_F10,   KC_F11,
 | 
			
		||||
       KC_TRNS, M(105),   M(106),   M(107),   M(108),   M(130),   KC_F12,
 | 
			
		||||
                M(114),   M(115),   M(116),   M(117),   M(118),   M(119),
 | 
			
		||||
       KC_TRNS, M(125),   M(126),   M(127),   M(128),   M(129),   KC_TRNS,
 | 
			
		||||
       KC_TRNS, M_105,    M_106,    M_107,    M_108,    M_130,    KC_F12,
 | 
			
		||||
                M_114,    M_115,    M_116,    M_117,    M_118,    M_119,
 | 
			
		||||
       KC_TRNS, M_125,    M_126,    M_127,    M_128,    M_129,    KC_TRNS,
 | 
			
		||||
                          KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,
 | 
			
		||||
       KC_TRNS, KC_TRNS,
 | 
			
		||||
       KC_TRNS,
 | 
			
		||||
| 
						 | 
				
			
			@ -187,169 +220,181 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
    [2] = ACTION_LAYER_ON(BASE,0),                       // FN2 - Go back to the base layer
 | 
			
		||||
    [3] = ACTION_LAYER_ON(DEAD,0),
 | 
			
		||||
    [4] = ACTION_LAYER_TOGGLE(DEAD),
 | 
			
		||||
};
 | 
			
		||||
void tap_dead_code(uint16_t keycode) {
 | 
			
		||||
    layer_clear();
 | 
			
		||||
    tap_code16(keycode);
 | 
			
		||||
    layer_on(DEAD);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
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) {
 | 
			
		||||
            register_code(KC_RSFT);
 | 
			
		||||
          } else {
 | 
			
		||||
            unregister_code(KC_RSFT);
 | 
			
		||||
          }
 | 
			
		||||
          break;
 | 
			
		||||
        case 100:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(5), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 101:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(7), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 102:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(SLSH), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 103:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(EQL), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 104:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(2), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 105:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(4), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 106:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(MINS), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 107:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(LBRC), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 108:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(RBRC), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 130:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(1), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 109:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(SLSH), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 110:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(9), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 111:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(EQL), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 112:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(0), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 113:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(LBRC), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 114:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(RBRC), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 115:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(1), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 116:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(8), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 117:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(0), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 118:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(MINS), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 119:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(QUOT), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 120:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(6), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 121:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(7), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 122:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(8), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 123:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(9), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 124:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(D(LSFT), T(BSLS), U(LSFT), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 125:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(BSLS), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 126:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(2), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 127:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(3), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 128:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(4), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
        case 129:
 | 
			
		||||
          layer_clear();
 | 
			
		||||
          return MACRODOWN(T(5), T(FN4), END);
 | 
			
		||||
          break;
 | 
			
		||||
 | 
			
		||||
        default:
 | 
			
		||||
        return MACRO_NONE;
 | 
			
		||||
      }
 | 
			
		||||
  return MACRO_NONE;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
// Runs just one time when the keyboard initializes.
 | 
			
		||||
void matrix_init_user(void) {
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 | 
			
		||||
    switch (keycode) {
 | 
			
		||||
        case M_100:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_5));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_101:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_7));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_102:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_SLSH));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_103:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_EQL));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_104:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_2));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_105:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_4));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_106:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_MINS));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_107:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_LBRC);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_108:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_RBRC);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_109:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_SLSH);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_110:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_9));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_111:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_EQL);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_112:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_0);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_113:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_LBRC));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_114:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_RBRC));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_115:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_1);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_116:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_8));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_117:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_0));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_118:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_MINS);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_119:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_QUOT));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_120:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_6);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_121:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_7);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_122:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_8);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_123:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_9);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_124:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_BSLS));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_125:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_BSLS);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_126:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_2);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_127:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_3);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_128:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_4);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_129:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(KC_5);
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
        case M_130:
 | 
			
		||||
            if (record->event.pressed) {
 | 
			
		||||
                tap_dead_code(S(KC_1));
 | 
			
		||||
            }
 | 
			
		||||
            return false;
 | 
			
		||||
    }
 | 
			
		||||
    return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// 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) {
 | 
			
		||||
 | 
			
		||||
    switch (get_highest_layer(layer_state)) {
 | 
			
		||||
      // TODO: Make this relevant to the ErgoDox EZ.
 | 
			
		||||
        case 1:
 | 
			
		||||
            ergodox_right_led_1_on();
 | 
			
		||||
| 
						 | 
				
			
			@ -361,5 +406,4 @@ void matrix_scan_user(void) {
 | 
			
		|||
            // none
 | 
			
		||||
            break;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue