<commit_before>#include "ergodox.h"
#include "led.h"
#include "debug.h"
#include "action_layer.h"
#include "action_util.h"
#include "timer.h"
#include "keymap_plover.h"
#include "eeconfig.h"
#include "version.h"
#include "wait.h"

#define BASE 0   // default layer
#define SYMB 1   // symbol layer   -  NumPad and symbols
#define MOUS 2  // mouse layer - includes mouse buttons and function keys

enum custom_keycodes {
  PLACEHOLDER = SAFE_RANGE, // can always be here
  EPRM,
  VRSN,
  RGB_SLD,
};

// Sticky keys
enum {
  F_SFT_L = 0,
  F_SFT_R,
  F_ALT_L,
  F_ALT_R,
  F_GUI_L,
  F_GUI_R,
  F_CTRL_L,
  F_CTRL_R
};

// Tapdance constants
enum {
    CAKEWARP = 0
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  // LUKETODO: tap dance layers
  // LUKETODO:  lay out keys like Hungarian keymap (algernon)
/* Keymap 0: Base Layer
 *
 * ,-----------------------------------------------------.           ,-----------------------------------------------------.
 * |     =     | 1  ! | 2  @ | 3  # | 4  $ | 5  % |CTL+LT|           |CTL+RT| 6  ^ | 7  & | 8  * | 9  ( | 10 ) |   DEL     |
 * |-----------+------+------+------+------+-------------|           |------+------+------+------+------+------+-----------|
 * |    TAB    |   Q  |   W  |   E  |   R  |   T  | Tap  |           |OneSht|   Y  |   U  |   I  |   O  |   P  |     -     |
 * |-----------+------+------+------+------+------|Layers|           |Symbol|------+------+------+------+------+-----------|
 * |     ~     |   A  |   S  |   D  |   F  |   G  |------|           |------|   H  |   J  |   K  |   L  |   ;  |     "     |
 * |-----------+------+------+------+------+------| CTRL |           | Opt  |------+------+------+------+------+-----------|
 * |   SHIFT   |   Z  |   X  |   C  |   V  |   B  | SPC  |           | SPC  |   N  |   M  |   ,  |   .  |   /  |   SHIFT   |
 * `-----------+------+------+------+------+-------------'           `-------------+------+------+------+------+-----------'
 *     |  Opt  |   '  |SF+CTL| Left | Right|                                       | Down |  Up  |SF+CTL|S+C+SP|  Opt  |
 *     `-----------------------------------'                                       `-----------------------------------'
 *                                         ,-------------.           ,-------------.
 *                                         | CTRL |  GUI |           | GUI  | CTRL |
 *                                  ,------|------|------|           |------+------+------.
 *                                  |      |      | PgUp |           | Home |      |      |
 *                                  |  SPC | BKSP |------|           |------| ESC  | ENTR |
 *                                  |      |      | PgDn |           |  End |      |      |
 *                                  `--------------------'           `--------------------'
 */

  [BASE] = KEYMAP(
            // left hand
            KC_EQUAL,       KC_1,        KC_2,         KC_3,    KC_4,    KC_5,       LCTL(KC_LEFT),
            KC_TAB,         KC_Q,        KC_W,         KC_E,    KC_R,    KC_T,       TD(CAKEWARP),
            KC_TILD,        KC_A,        KC_S,         KC_D,    KC_F,    SFT_T(KC_G),
            F(F_SFT_L),     KC_Z,        KC_X,         KC_C,    KC_V,    KC_B,       LCTL(KC_SPACE),
            F(F_ALT_L),     KC_QUOTE,    LSFT(KC_LGUI),KC_LEFT, KC_RIGHT,
            
                                    // left thumb cluster
                                    F(F_CTRL_L), F(F_GUI_L),
                                                         KC_PGUP,
                                    KC_SPACE, KC_BSPACE, KC_PGDOWN,

                                                    // right hand
                                                    RCTL(KC_RIGHT), KC_6,       KC_7,   KC_8,     KC_9,             KC_0,                   KC_DELETE,
                                                    OSL(1),         KC_Y,       KC_U,   KC_I,     KC_O,             KC_P,                   KC_MINUS,
                                                                    SFT_T(KC_H),KC_J,   KC_K,     KC_L,             KC_SCOLON,              KC_DQUO,
                                                    RALT(KC_SPACE), KC_N,       KC_M,   KC_COMMA, KC_DOT,           KC_SLASH,               F(F_SFT_R), 
                                                                                KC_DOWN,KC_UP,    RSFT(KC_RGUI),    LGUI(LSFT(KC_SPACE)),   F(F_ALT_R),

                                                                    // right thumb cluster
                                                                    F(F_GUI_L), F(F_CTRL_R),
                                                                    KC_HOME,
                                                                    KC_END, KC_ESC, KC_ENTER
        ),

/* Keymap 1: Symbol Layer
 *
 * ,-----------------------------------------------------.           ,-----------------------------------------------------.
 * |           |  F1  |  F2  |  F3  |  F4  |  F5  |      |           |      |  F6  |  F7  |  F8  |  F9  |  F10 |    F11    |
 * |-----------+------+------+------+------+-------------|           |------+------+------+------+------+------+-----------|
 * |           |   !  |   @  |   {  |   }  |   |  |      |           |      |   *  |   7  |   8  |   9  |   &  |    F12    |
 * |-----------+------+------+------+------+------|      |           |      |------+------+------+------+------+-----------|
 * |           |   #  |   $  |   (  |   )  |   &  |------|           |------|   +  |   4  |   5  |   6  |   _  |           |
 * |-----------+------+------+------+------+------|      |           |      |------+------+------+------+------+-----------|
 * |           |   %  |   ^  |   [  |   ]  |   `  |      |           |      |   -  |   1  |   2  |   3  |   /  |           |
 * `-----------+------+------+------+------+-------------'           `-------------+------+------+------+------+-----------'
 *     |       |      |      |      |   \  |                                       |   =  |   0  |   .  |      |       |
 *     `-----------------------------------'                                       `-----------------------------------'
 *                                         ,-------------.           ,-------------.
 *                                         |      |      |           |      |      |
 *                                  ,------|------|------|           |------+------+------.
 *                                  |      |      |      |           |      |      |      |
 *                                  |      |      |------|           |------|      |      |
 *                                  |      |      |      |           |      |      |      |<commit_msg>Need left GUI key instead of right on right SHIFT+GUI to work correctly.<commit_after>#include "ergodox.h"
#include "led.h"
#include "debug.h"
#include "action_layer.h"
#include "action_util.h"
#include "timer.h"
#include "keymap_plover.h"
#include "eeconfig.h"
#include "version.h"
#include "wait.h"

#define BASE 0   // default layer
#define SYMB 1   // symbol layer   -  NumPad and symbols
#define MOUS 2  // mouse layer - includes mouse buttons and function keys

enum custom_keycodes {
  PLACEHOLDER = SAFE_RANGE, // can always be here
  EPRM,
  VRSN,
  RGB_SLD,
};

// Sticky keys
enum {
  F_SFT_L = 0,
  F_SFT_R,
  F_ALT_L,
  F_ALT_R,
  F_GUI_L,
  F_GUI_R,
  F_CTRL_L,
  F_CTRL_R
};

// Tapdance constants
enum {
    CAKEWARP = 0
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  // LUKETODO: tap dance layers
  // LUKETODO:  lay out keys like Hungarian keymap (algernon)
/* Keymap 0: Base Layer
 *
 * ,-----------------------------------------------------.           ,-----------------------------------------------------.
 * |     =     | 1  ! | 2  @ | 3  # | 4  $ | 5  % |CTL+LT|           |CTL+RT| 6  ^ | 7  & | 8  * | 9  ( | 10 ) |   DEL     |
 * |-----------+------+------+------+------+-------------|           |------+------+------+------+------+------+-----------|
 * |    TAB    |   Q  |   W  |   E  |   R  |   T  | Tap  |           |OneSht|   Y  |   U  |   I  |   O  |   P  |     -     |
 * |-----------+------+------+------+------+------|Layers|           |Symbol|------+------+------+------+------+-----------|
 * |     ~     |   A  |   S  |   D  |   F  |   G  |------|           |------|   H  |   J  |   K  |   L  |   ;  |     "     |
 * |-----------+------+------+------+------+------| CTRL |           | Opt  |------+------+------+------+------+-----------|
 * |   SHIFT   |   Z  |   X  |   C  |   V  |   B  | SPC  |           | SPC  |   N  |   M  |   ,  |   .  |   /  |   SHIFT   |
 * `-----------+------+------+------+------+-------------'           `-------------+------+------+------+------+-----------'
 *     |  Opt  |   '  |SF+GUI| Left | Right|                                       | Down |  Up  |SF+GUI|S+C+SP|  Opt  |
 *     `-----------------------------------'                                       `-----------------------------------'
 *                                         ,-------------.           ,-------------.
 *                                         | CTRL |  GUI |           | GUI  | CTRL |
 *                                  ,------|------|------|           |------+------+------.
 *                                  |      |      | PgUp |           | Home |      |      |
 *                                  |  SPC | BKSP |------|           |------| ESC  | ENTR |
 *                                  |      |      | PgDn |           |  End |      |      |
 *                                  `--------------------'           `--------------------'
 */

  [BASE] = KEYMAP(
            // left hand
            KC_EQUAL,       KC_1,        KC_2,         KC_3,    KC_4,    KC_5,       LCTL(KC_LEFT),
            KC_TAB,         KC_Q,        KC_W,         KC_E,    KC_R,    KC_T,       TD(CAKEWARP),
            KC_TILD,        KC_A,        KC_S,         KC_D,    KC_F,    SFT_T(KC_G),
            F(F_SFT_L),     KC_Z,        KC_X,         KC_C,    KC_V,    KC_B,       LCTL(KC_SPACE),
            F(F_ALT_L),     KC_QUOTE,    LSFT(KC_LGUI),KC_LEFT, KC_RIGHT,
            
                                    // left thumb cluster
                                    F(F_CTRL_L), F(F_GUI_L),
                                                         KC_PGUP,
                                    KC_SPACE, KC_BSPACE, KC_PGDOWN,

                                                    // right hand
                                                    RCTL(KC_RIGHT), KC_6,       KC_7,   KC_8,     KC_9,             KC_0,                   KC_DELETE,
                                                    OSL(1),         KC_Y,       KC_U,   KC_I,     KC_O,             KC_P,                   KC_MINUS,
                                                                    SFT_T(KC_H),KC_J,   KC_K,     KC_L,             KC_SCOLON,              KC_DQUO,
                                                    RALT(KC_SPACE), KC_N,       KC_M,   KC_COMMA, KC_DOT,           KC_SLASH,               F(F_SFT_R), 
                                                                                KC_DOWN,KC_UP,    RSFT(KC_LGUI),    LGUI(LSFT(KC_SPACE)),   F(F_ALT_R),

                                                                    // right thumb cluster
                                                                    F(F_GUI_L), F(F_CTRL_R),
                                                                    KC_HOME,
                                                                    KC_END, KC_ESC, KC_ENTER
        ),

/* Keymap 1: Symbol Layer
 *
 * ,-----------------------------------------------------.           ,-----------------------------------------------------.
 * |           |  F1  |  F2  |  F3  |  F4  |  F5  |      |           |      |  F6  |  F7  |  F8  |  F9  |  F10 |    F11    |
 * |-----------+------+------+------+------+-------------|           |------+------+------+------+------+------+-----------|
 * |           |   !  |   @  |   {  |   }  |   |  |      |           |      |   *  |   7  |   8  |   9  |   &  |    F12    |
 * |-----------+------+------+------+------+------|      |           |      |------+------+------+------+------+-----------|
 * |           |   #  |   $  |   (  |   )  |   &  |------|           |------|   +  |   4  |   5  |   6  |   _  |           |
 * |-----------+------+------+------+------+------|      |           |      |------+------+------+------+------+-----------|
 * |           |   %  |   ^  |   [  |   ]  |   `  |      |           |      |   -  |   1  |   2  |   3  |   /  |           |
 * `-----------+------+------+------+------+-------------'           `-------------+------+------+------+------+-----------'
 *     |       |      |      |      |   \  |                                       |   =  |   0  |   .  |      |       |
 *     `-----------------------------------'                                       `-----------------------------------'
 *                                         ,-------------.           ,-------------.
 *                                         |      |      |           |      |      |
 *                                  ,------|------|------|           |------+------+------.
 *                                  |      |      |      |           |      |      |      |
 *                                  |      |      |------|           |------|      |      |
 *                                  |      |      |      |           |      |      |      |
{'fraction_non_alphanumeric': 0.2907002429865253, 'fraction_numerical': 0.008246815403873058, 'mean_word_length': 0.4317942230655703, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 135, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '447589', 'n_tokens_mistral': 4121, 'n_tokens_neox': 3852, 'n_words': 558}