diff options
author | Wilba <Jason.S.Williams@gmail.com> | 2019-07-21 21:46:22 +1000 |
---|---|---|
committer | Danny <nooges@users.noreply.github.com> | 2019-07-21 07:46:22 -0400 |
commit | bffbb4b42d3167125f54b5aeb7a30fef44ff5dbe (patch) | |
tree | 679ba294b68488b74e54300a435654057f09af81 /keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli | |
parent | d686c0ea43d6a9db7768da64ee54c3ba25c018f7 (diff) |
Refactoring wilba.tech PCBs, updating Rama Works U80-A (#6272)
* Added WT65-B, WT75-B, minor fixes
* Update keyboards/wilba_tech/wt65_b/config.h
Co-Authored-By: Drashna Jaelre <drashna@live.com>
* Update keyboards/wilba_tech/wt65_b/readme.md
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Update keyboards/wilba_tech/wt75_b/config.h
Co-Authored-By: Drashna Jaelre <drashna@live.com>
* Change DEBOUNCING_DELAY to DEBOUNCE
* Change DEBOUNCING_DELAY to DEBOUNCE
* Move Zeal60/Zeal65 files to keyboards/wilba_tech
* Change DEBOUNCING_DELAY to DEBOUNCE
* Refactoring zeal60 code to wilba_tech
* Moved Rama Works PCBs to wilba_tech
* Rename Rama Works files
* Cleanup info.json
* Cleanup readme.md
* Cleanup USB device strings
* U80-A RGB matrix, IS31FL3731 driver changes
* Fixed #include from keyboards/zeal60
Diffstat (limited to 'keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli')
-rw-r--r-- | keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli/README.md | 28 | ||||
-rw-r--r-- | keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli/keymap.c | 71 |
2 files changed, 99 insertions, 0 deletions
diff --git a/keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli/README.md b/keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli/README.md new file mode 100644 index 0000000000..7c1fa38fcb --- /dev/null +++ b/keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli/README.md @@ -0,0 +1,28 @@ +# krusli's RAMA M6-A Layout + +Personal keymap for the RAMA M6-A. + +Keymap was from my own port for the M6-A before official support was added, thus the backlighting code is not ported yet from the official default keymap. + +Top-right button acts as a "toggle between layers" button. Layer 0 -> Layer 1 -> Layer 2 -> Layer 0 -> ... + +* Layer 0: Git and Discord shortcuts +* Layer 1: Media playback and volume controls +* Layer 2: Osu! gamepad layer + +## Helpful alternative keymaps (WIP) + +### Arrow cluster + +Use [karabiner-elements](https://github.com/tekezo/Karabiner-Elements) on macOS so that the state of the modifiers (shift, caps lock) are synchronised between keyboards (for shift + arrow key text selection, for example). It's also a handy tool for customising keyboard behaviour on a Mac. + +On Windows/Linux modifier state should be shared between all keyboards by default. + +Installation: install [homebrew](https://brew.sh) and run `brew install Caskroom/cask/karabiner-elements`. + +```C +LAYOUT( + KC_ESC, KC_UP, TO(_LAYER0), + KC_LEFT, KC_DOWN, KC_RIGHT +) +``` diff --git a/keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli/keymap.c b/keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli/keymap.c new file mode 100644 index 0000000000..410229ae47 --- /dev/null +++ b/keyboards/wilba_tech/rama_works_m6_a/keymaps/krusli/keymap.c @@ -0,0 +1,71 @@ +#include QMK_KEYBOARD_H +#include "action_layer.h" +#include "eeconfig.h" + +extern keymap_config_t keymap_config; + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum layers +{ + _LAYER0, + _LAYER1, + _LAYER2 +}; + +enum custom_keycodes +{ + GIT_ADD = SAFE_RANGE, + GIT_COMMIT, + GIT_PUSH, + MUTE, + DEAFEN +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) +{ + if (record->event.pressed) + { + switch (keycode) + { + case GIT_ADD: + SEND_STRING("git add ." SS_TAP(X_ENTER)); + break; + case GIT_COMMIT: + SEND_STRING("git commit -m " SS_DOWN(X_LSHIFT) SS_TAP(X_QUOTE) SS_UP(X_LSHIFT)); + break; + case GIT_PUSH: + SEND_STRING("git push" SS_TAP(X_ENTER)); + break; + case MUTE: + SEND_STRING(SS_LGUI(SS_LSFT("M"))); + break; + case DEAFEN: + SEND_STRING(SS_LGUI(SS_LSFT("D"))); + break; + return false; + } + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_LAYER0] = LAYOUT( + MUTE, DEAFEN, TO(_LAYER1), + GIT_ADD, GIT_COMMIT, GIT_PUSH), + [_LAYER1] = LAYOUT( + KC_VOLD, KC_VOLU, TO(_LAYER2), + KC_MRWD, KC_MPLY, KC_MNXT), + [_LAYER2] = LAYOUT( + KC_ESC, KC_UP, TO(_LAYER0), + KC_Z, KC_X, KC_SPACE)}; + +void matrix_init_user(void) +{ +#ifdef BACKLIGHT_ENABLE + backlight_level(0); +#endif +} |