diff --git a/keyboards/tada68/keymaps/unix/config.h b/keyboards/tada68/keymaps/unix/config.h new file mode 100644 index 00000000000..a580d8b2e19 --- /dev/null +++ b/keyboards/tada68/keymaps/unix/config.h @@ -0,0 +1,4 @@ +#include "../../config.h" + +#define DISABLE_SPACE_CADET_ROLLOVER +#define GRAVE_ESC_ALT_OVERRIDE \ No newline at end of file diff --git a/keyboards/tada68/keymaps/unix/keymap.c b/keyboards/tada68/keymaps/unix/keymap.c new file mode 100644 index 00000000000..554abd0243c --- /dev/null +++ b/keyboards/tada68/keymaps/unix/keymap.c @@ -0,0 +1,57 @@ +#include QMK_KEYBOARD_H + +// 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. +#define _BL 0 +#define _FL 1 + +#define _______ KC_TRNS + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: (Base Layer) Default Layer + * ,----------------------------------------------------------------. + * |Esc | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |~ ` | + * |----------------------------------------------------------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |Del | + * |----------------------------------------------------------------| + * |CAPS | A| S| D| F| G| H| J| K| L| ;| '|Return |PgUp| + * |----------------------------------------------------------------| + * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift | Up|PgDn| + * |----------------------------------------------------------------| + * |Ctrl|Win |Alt | Space |Alt| FN|Ctrl|Lef|Dow|Rig | + * `----------------------------------------------------------------' + * + * Note: Shift + Esc = ~ + * Win + Esc = ` + * Hold + RShift = ( + * Hold + LShift = ) + */ +[_BL] = LAYOUT_ansi( + KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,KC_GRV, \ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,KC_BSLS,KC_DEL, \ + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_ENT,KC_PGUP, \ + KC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSPC,KC_UP,KC_PGDN, \ + KC_LCTL, KC_LGUI,KC_LALT, LT(_FL, KC_SPC), KC_RALT,MO(_FL),KC_RCTRL, KC_LEFT,KC_DOWN,KC_RGHT), + + /* Keymap _FL: Function Layer + * ,----------------------------------------------------------------. + * | | F1|F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|Del | | + * |----------------------------------------------------------------| + * | | |Up | | | | | | | | | | | |Ins | + * |----------------------------------------------------------------| + * | |<- |Dn | ->| | |<- |Dn |Up | ->| | | |Hme | + * |----------------------------------------------------------------| + * | | | |Bl-|BL |BL+| | |VU-|VU+|MUT| | |End | + * |----------------------------------------------------------------| + * | | | | | | | | | | | + * `----------------------------------------------------------------' + */ +[_FL] = LAYOUT_ansi( + _______, KC_F1 ,KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, _______ , \ + _______,_______, KC_UP,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, _______,KC_INS, \ + _______,KC_LEFT,KC_DOWN,KC_RIGHT,_______,_______,KC_LEFT,KC_DOWN,KC_UP,KC_RGHT,_______,_______, _______,KC_HOME, \ + _______,_______,_______,BL_DEC, BL_TOGG,BL_INC, _______,_______,KC_VOLD,KC_VOLU,KC_MUTE,_______, _______, KC_END, \ + _______,_______,_______, _______, _______,_______,_______,_______,_______, _______), +}; diff --git a/keyboards/tada68/keymaps/unix/readme.md b/keyboards/tada68/keymaps/unix/readme.md new file mode 100644 index 00000000000..d1680a0ac91 --- /dev/null +++ b/keyboards/tada68/keymaps/unix/readme.md @@ -0,0 +1,49 @@ +# tracyde Unix layout + +This layout is friendlier to those that spend the majority of their time in the *nix commandline. + +``` + Base Layer +,----------------------------------------------------------------. +|Esc | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |~ ` | +|----------------------------------------------------------------| +|Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |Del | +|----------------------------------------------------------------| +|CAPS | A| S| D| F| G| H| J| K| L| ;| '|Return |PgUp| +|----------------------------------------------------------------| +|Shift | Z| X| C| V| B| N| M| ,| .| /|Shift | Up|PgDn| +|----------------------------------------------------------------| +|Ctrl|Win |Alt | Space |Alt| FN|Ctrl|Lef|Dow|Rig | +`----------------------------------------------------------------' +Note: Shift + Esc = ~ + Win + Esc = ` + Hold + RShift = ( + Hold + LShift = ) + + + Fn Layer +,----------------------------------------------------------------. +| | F1|F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|Del | | +|----------------------------------------------------------------| +| | |Up | | | | | | | | | | | |Ins | +|----------------------------------------------------------------| +| |<- |Dn | ->| | |<- |Dn |Up | ->| | | |Hme | +|----------------------------------------------------------------| +| | | |Bl-|BL |BL+| | |VU-|VU+|MUT| | |End | +|----------------------------------------------------------------| +| | | | | | | | | | | +`----------------------------------------------------------------' + +``` + +The changes that were applied over default layout: + +* Left and Right Shift when pressed alone emit `(` and `)` respectively. Press the opposite Shift to cancel. +* Leds go into breath animation when USB suspends (because why not). +* Holding down space activates the lower layer. +* Changed Home and End to `Fn+PgUpPgDn` +* Changed Insert to `Fn+Del` +* Removed mouse movement. +* Changed volume controls to `Fn+,./` (this makes volume controls make more sense `<` `>` act as you think they should) +* Added arrow cluster as Fn+hjkl (vim users rejoice) +* 'Grave-Escape' the escape key. This will allow the Esc key to function like Esc when pressed but act like the Grave key when pressed along with GUI or Shift keys. This allows you to use the Apple hotkey of CMD + ~ to switch between windows of the same app. In my config.h file I implemented the override 'GRAVE_ESC_ALT_OVERRIDE'. This will force ESC to be registered when hitting ALT. This preserves the Apple hotkey Cmd+Opt+Esc. \ No newline at end of file diff --git a/keyboards/tada68/keymaps/unix/rules.mk b/keyboards/tada68/keymaps/unix/rules.mk new file mode 100644 index 00000000000..46f0b65a9cb --- /dev/null +++ b/keyboards/tada68/keymaps/unix/rules.mk @@ -0,0 +1,21 @@ +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. +SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend + +ifndef QUANTUM_DIR + include ../../../../Makefile +endif