changelog shortlog graph tags branches changeset file revisions annotate raw help

Mercurial > infra > home / .config/kbd/moonlander/keymap.c

revision 3: f82cb9ded8cf
child 95: f69061a590da
     1.1--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2+++ b/.config/kbd/moonlander/keymap.c	Wed May 01 19:00:03 2024 -0400
     1.3@@ -0,0 +1,98 @@
     1.4+#include QMK_KEYBOARD_H
     1.5+#include "version.h"
     1.6+#include "keymap_french.h"
     1.7+#include "keymap_spanish.h"
     1.8+#include "keymap_hungarian.h"
     1.9+#include "keymap_swedish.h"
    1.10+// #include "keymap_br_abnt2.h"
    1.11+#include "keymap_canadian_multilingual.h"
    1.12+//#include "keymap_german_ch.h"
    1.13+//#include "keymap_jp.h"
    1.14+#include "keymap_korean.h"
    1.15+#include "keymap_bepo.h"
    1.16+#include "keymap_italian.h"
    1.17+#include "keymap_slovenian.h"
    1.18+#include "keymap_lithuanian_azerty.h"
    1.19+#include "keymap_danish.h"
    1.20+#include "keymap_norwegian.h"
    1.21+#include "keymap_portuguese.h"
    1.22+// #include "keymap_contributions.h"
    1.23+#include "keymap_czech.h"
    1.24+#include "keymap_romanian.h"
    1.25+#include "keymap_russian.h"
    1.26+#include "keymap_uk.h"
    1.27+//#include "keymap_estonian.h"
    1.28+//#include "keymap_belgian.h"
    1.29+#include "keymap_us_international.h"
    1.30+//#include "keymap_croatian.h"
    1.31+//#include "keymap_turkish_q.h"
    1.32+//#include "keymap_slovak.h"
    1.33+
    1.34+#define KC_MAC_UNDO LGUI(KC_Z)
    1.35+#define KC_MAC_CUT LGUI(KC_X)
    1.36+#define KC_MAC_COPY LGUI(KC_C)
    1.37+#define KC_MAC_PASTE LGUI(KC_V)
    1.38+#define KC_PC_UNDO LCTL(KC_Z)
    1.39+#define KC_PC_CUT LCTL(KC_X)
    1.40+#define KC_PC_COPY LCTL(KC_C)
    1.41+#define KC_PC_PASTE LCTL(KC_V)
    1.42+#define ES_LESS_MAC KC_GRAVE
    1.43+#define ES_GRTR_MAC LSFT(KC_GRAVE)
    1.44+#define ES_BSLS_MAC ALGR(KC_6)
    1.45+#define NO_PIPE_ALT KC_GRAVE
    1.46+#define NO_BSLS_ALT KC_EQUAL
    1.47+#define LSA_T(kc) MT(MOD_LSFT | MOD_LALT, kc)
    1.48+#define BP_NDSH_MAC ALGR(KC_8)
    1.49+#define SE_SECT_MAC ALGR(KC_6)
    1.50+#define MOON_LED_LEVEL LED_LEVEL
    1.51+
    1.52+enum layers {
    1.53+  MAIN,
    1.54+};
    1.55+
    1.56+enum custom_keycodes {
    1.57+  VRSN = SAFE_RANGE,
    1.58+  HSV_0_245_245,
    1.59+  HSV_74_255_206,
    1.60+  HSV_152_255_255,
    1.61+};
    1.62+
    1.63+
    1.64+
    1.65+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    1.66+  [MAIN] = LAYOUT_moonlander(
    1.67+    // 1			  
    1.68+    KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL,
    1.69+    KC_GRAVE, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS,
    1.70+    // 2
    1.71+    KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(1),   
    1.72+    TG(2), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
    1.73+    // 3
    1.74+    KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LALT,
    1.75+    KC_ENT, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOTE,
    1.76+    // 4
    1.77+    KC_LSFT, KC_Z ,KC_X, KC_C, KC_V, KC_B,  
    1.78+    KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, KC_BSPC,
    1.79+    // 5
    1.80+    KC_UP, KC_DOWN, KC_LBRC, KC_LPRN, KC_SPC, LCTL,
    1.81+    LALT, KC_SPC, KC_RPRN, KC_RBRC, KC_LEFT, KC_RIGHT,
    1.82+    // 6
    1.83+    A(KC_X), C(KC_C), KC_LGUI,
    1.84+    ALT_T(KC_PASTE), RGB_MODE_FORWARD, QK_LOCK
    1.85+  ),
    1.86+  // [MACRO]
    1.87+  // [LISP]
    1.88+  // [CTL]
    1.89+  // [CMD]
    1.90+};
    1.91+
    1.92+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
    1.93+    if (record->event.pressed) {
    1.94+        switch (keycode) {
    1.95+        case VRSN:
    1.96+            SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
    1.97+            return false;
    1.98+        }
    1.99+    }
   1.100+    return true;
   1.101+}