1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- #include "ninjonas.h"
- __attribute__((weak))
- bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; }
- __attribute__((weak))
- bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { return true; }
- bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- if (record->event.pressed) {
- #ifdef SSD1306OLED
- set_keylog(keycode, record);
- #endif
- }
- switch (keycode) {
- // Sends pyenv to activate 'jira' environment
- case M_PYNV:
- if (record->event.pressed) {
- SEND_STRING("pyenv activate jira" SS_TAP(X_ENTER));
- }
- break;
- // Sends + alt + shift to a keycode to activate shiftit. See: https://github.com/fikovnik/ShiftIt
- case M_SHFT:
- if (record->event.pressed) {
- register_code(KC_LGUI);
- register_code(KC_LALT);
- register_code(KC_LCTL);
- } else {
- unregister_code(KC_LGUI);
- unregister_code(KC_LALT);
- unregister_code(KC_LCTL);
- }
- break;
- // Sends QMK make command to compile keyboard
- case M_MAKE:
- if (record->event.pressed) {
- SEND_STRING("rm -f *.hex && rm -rf .build/ && make " QMK_KEYBOARD ":" QMK_KEYMAP SS_TAP(X_ENTER));
- }
- break;
- // Sends QMK make command with the correct bootloader
- case M_FLSH:
- if (!record->event.pressed) {
- SEND_STRING("rm -f *.hex && rm -rf .build/ && make " QMK_KEYBOARD ":" QMK_KEYMAP
- #if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU))
- ":dfu "
- #elif defined(BOOTLOADER_CATERINA)
- ":avrdude "
- #endif
- SS_TAP(X_ENTER)
- );
- // Send reset_keyboard command instead of pressing reset button
- #if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU))
- reset_keyboard();
- #endif
- }
- break;
- // Sends QMK version
- case M_VRSN:
- if (record->event.pressed) {
- SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION ", Built on: " QMK_BUILDDATE);
- }
- break;
- // Opens Visual Studio Code on current directory
- case M_CODE:
- if (record->event.pressed) {
- SEND_STRING("code ." SS_TAP(X_ENTER));
- }
- break;
- // BEGIN: Layer macros
- case QWERTY:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_QWERTY);
- }
- break;
- case DVORAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_DVORAK);
- }
- break;
- case COLEMAK:
- if (record->event.pressed) {
- set_single_persistent_default_layer(_COLEMAK);
- }
- break;
- // END: Layer macros
- }
- return process_record_keymap(keycode, record) && process_record_secrets(keycode, record);
- }
|