Rework the clueboard keymaps a bit.
This commit is contained in:
		
							parent
							
								
									49e72632d2
								
							
						
					
					
						commit
						cbef63d8fa
					
				
					 30 changed files with 752 additions and 257 deletions
				
			
		| 
						 | 
				
			
			@ -1,7 +1,8 @@
 | 
			
		|||
#include "clueboard.h"
 | 
			
		||||
 | 
			
		||||
// Used for SHIFT_ESC
 | 
			
		||||
#define MODS_CTRL_MASK  (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
 | 
			
		||||
// Helpful defines
 | 
			
		||||
#define GRAVE_MODS  (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
 | 
			
		||||
#define _______ KC_TRNS
 | 
			
		||||
 | 
			
		||||
// 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.
 | 
			
		||||
| 
						 | 
				
			
			@ -9,21 +10,10 @@
 | 
			
		|||
// entirely and just use numbers.
 | 
			
		||||
#define _BL 0
 | 
			
		||||
#define _FL 1
 | 
			
		||||
#define _RS 2
 | 
			
		||||
#define _CL 2
 | 
			
		||||
 | 
			
		||||
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|   -|   =|   \|  BS|  |PGUP|
 | 
			
		||||
   * |--------------------------------------------------------------------------|  |----|
 | 
			
		||||
   * |   Tab|   Q|   W|   E|   R|   T|   Y|   U|   I|   O|   P|   [|   ]|      \|  |PGDN|
 | 
			
		||||
   * |--------------------------------------------------------------------------|  `----'
 | 
			
		||||
   * |Capslck|   A|   S|   D|   F|   G|   H|   J|   K|   L|   ;|   '|   # |  Ent|
 | 
			
		||||
   * |-----------------------------------------------------------------------------.
 | 
			
		||||
   * |Shift|  BS|   Z|   X|   C|   V|   B|   N|   M|   ,|   .|   /|   BS|Shift|  UP|
 | 
			
		||||
   * |------------------------------------------------------------------------|----|----.
 | 
			
		||||
   * | Ctrl|  Gui|  Alt| MHen|    Space|    Space|  Hen|  Alt| Ctrl|  _FL|LEFT|DOWN|RGHT|
 | 
			
		||||
   * `----------------------------------------------------------------------------------'
 | 
			
		||||
  /* Keymap _BL: Base Layer (Default Layer)
 | 
			
		||||
   */
 | 
			
		||||
[_BL] = KEYMAP(
 | 
			
		||||
  F(0),    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_GRV,  KC_BSPC,          KC_PGUP, \
 | 
			
		||||
| 
						 | 
				
			
			@ -33,61 +23,44 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
  KC_LCTL, KC_LGUI, KC_LALT, KC_MHEN,          KC_SPC,KC_SPC,                        KC_HENK,  KC_RALT,  KC_RCTL,  MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT),
 | 
			
		||||
 | 
			
		||||
  /* Keymap _FL: Function Layer
 | 
			
		||||
   * ,--------------------------------------------------------------------------.  ,----.
 | 
			
		||||
   * |   `|  F1|  F2|  F3|  F4|  F5|  F6|  F7|  F8|  F9| F10| F11| F12|    | Del|  |BLIN|
 | 
			
		||||
   * |--------------------------------------------------------------------------|  |----|
 | 
			
		||||
   * |      |    |    |    |    |    |    |    |PScr|SLck|Paus|    |    |       |  |BLDE|
 | 
			
		||||
   * |--------------------------------------------------------------------------|  `----'
 | 
			
		||||
   * |       |    | _RS|    |    |    |    |    |    |    |    |    |     |     |
 | 
			
		||||
   * |-----------------------------------------------------------------------------.
 | 
			
		||||
   * |     |    |    |    |    |    |    |    |    |    |    |    |     |     |PGUP|
 | 
			
		||||
   * |------------------------------------------------------------------------|----|----.
 | 
			
		||||
   * |     |     |     |     |         |         |     |     |     |  _FL|HOME|PGDN| END|
 | 
			
		||||
   * `----------------------------------------------------------------------------------'
 | 
			
		||||
   */
 | 
			
		||||
[_FL] = KEYMAP(
 | 
			
		||||
  KC_GRV,  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_TRNS, KC_DEL,           BL_STEP, \
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_SLCK, KC_PAUS,  KC_TRNS,  KC_TRNS,  KC_TRNS,                   KC_TRNS, \
 | 
			
		||||
  KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,                           \
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,          KC_PGUP,         \
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,        KC_TRNS,KC_TRNS,                        KC_TRNS,  KC_TRNS,  KC_TRNS,  MO(_FL), KC_HOME, KC_PGDN, KC_END),
 | 
			
		||||
  KC_GRV,  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,           BL_STEP, \
 | 
			
		||||
  _______, _______, _______,_______,_______,_______,_______,_______,KC_PSCR,KC_SLCK, KC_PAUS,  _______,  _______,  _______,                   _______, \
 | 
			
		||||
  _______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______,  _______,  _______,  _______,                           \
 | 
			
		||||
  _______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______,  _______,  _______,  _______,          KC_PGUP,         \
 | 
			
		||||
  _______, _______, _______, _______,        _______,_______,                        _______,  _______,  _______,  MO(_FL), KC_HOME, KC_PGDN, KC_END),
 | 
			
		||||
 | 
			
		||||
  /* Keymap _RS: Reset layer
 | 
			
		||||
   * ,--------------------------------------------------------------------------.  ,----.
 | 
			
		||||
   * |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |  |    |
 | 
			
		||||
   * |--------------------------------------------------------------------------|  |----|
 | 
			
		||||
   * |      |    |    |    |RESET|   |    |    |    |    |    |    |    |       |  |    |
 | 
			
		||||
   * |--------------------------------------------------------------------------|  `----'
 | 
			
		||||
   * |       |    | _RS|    |    |    |    |    |    |    |    |    |     |     |
 | 
			
		||||
   * |-----------------------------------------------------------------------------.
 | 
			
		||||
   * |     |    |    |    |    |    |    |    |    |    |    |    |     |     |    |
 | 
			
		||||
   * |------------------------------------------------------------------------|----|----.
 | 
			
		||||
   * |     |     |     |     |         |         |     |     |     |  _FL|    |    |    |
 | 
			
		||||
   * `----------------------------------------------------------------------------------'
 | 
			
		||||
  /* Keymap _CL: Control layer
 | 
			
		||||
   */
 | 
			
		||||
[_RS] = KEYMAP(
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS, RGB_TOG,             RGB_VAI, \
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,RESET,  KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,                   RGB_VAD, \
 | 
			
		||||
  KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,                         \
 | 
			
		||||
  MO(_FL), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,  KC_TRNS,  KC_TRNS,  MO(_FL),          RGB_SAI,          \
 | 
			
		||||
  KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,        RGB_MOD,   RGB_MOD,                            KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS, RGB_HUD,    RGB_SAD,    RGB_HUI),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
enum function_id {
 | 
			
		||||
    SHIFT_ESC,
 | 
			
		||||
[_CL] = KEYMAP(
 | 
			
		||||
  _______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______,  _______,  _______,  _______, RGB_TOG,             RGB_VAI, \
 | 
			
		||||
  _______, _______, _______,_______,RESET,  _______,_______,_______,_______,_______, _______,  _______,  _______,  _______,                   RGB_VAD, \
 | 
			
		||||
  _______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______,  _______,  _______,  _______,                         \
 | 
			
		||||
  MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______,  _______,  _______,  MO(_FL),          RGB_SAI,          \
 | 
			
		||||
  _______, _______, _______,_______,        RGB_MOD,   RGB_MOD,                            _______,  _______,  _______,  _______, RGB_HUD,    RGB_SAD,    RGB_HUI),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* This is a list of user defined functions. F(N) corresponds to item N
 | 
			
		||||
   of this list.
 | 
			
		||||
 */
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
  [0]  = ACTION_FUNCTION(SHIFT_ESC),
 | 
			
		||||
  [0] = ACTION_FUNCTION(0),  // Calls action_function()
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  static uint8_t shift_esc_shift_mask;
 | 
			
		||||
  static uint8_t mods_pressed;
 | 
			
		||||
 | 
			
		||||
  switch (id) {
 | 
			
		||||
    case SHIFT_ESC:
 | 
			
		||||
      shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
 | 
			
		||||
    case 0:
 | 
			
		||||
      /* Handle the combined Grave/Esc key
 | 
			
		||||
       */
 | 
			
		||||
      mods_pressed = get_mods()&GRAVE_MODS; // Check to see what mods are pressed
 | 
			
		||||
 | 
			
		||||
      if (record->event.pressed) {
 | 
			
		||||
        if (shift_esc_shift_mask) {
 | 
			
		||||
        /* The key is being pressed.
 | 
			
		||||
         */
 | 
			
		||||
        if (mods_pressed) {
 | 
			
		||||
          add_key(KC_GRV);
 | 
			
		||||
          send_keyboard_report();
 | 
			
		||||
        } else {
 | 
			
		||||
| 
						 | 
				
			
			@ -95,7 +68,9 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		|||
          send_keyboard_report();
 | 
			
		||||
        }
 | 
			
		||||
      } else {
 | 
			
		||||
        if (shift_esc_shift_mask) {
 | 
			
		||||
        /* The key is being released.
 | 
			
		||||
         */
 | 
			
		||||
        if (mods_pressed) {
 | 
			
		||||
          del_key(KC_GRV);
 | 
			
		||||
          send_keyboard_report();
 | 
			
		||||
        } else {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										
											BIN
										
									
								
								keyboards/clueboard/keymaps/default/layout.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								keyboards/clueboard/keymaps/default/layout.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 110 KiB  | 
							
								
								
									
										17
									
								
								keyboards/clueboard/keymaps/default/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keyboards/clueboard/keymaps/default/readme.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,17 @@
 | 
			
		|||
```
 | 
			
		||||
 ___     _____ _            _                         _     __    __ _   __
 | 
			
		||||
|__ \   / ____| |          | |                       | |   / /   / /(_) / /
 | 
			
		||||
 ||) | | |    | |_   _  ___| |__   ___   __ _ _ __ __| |  / /_  / /_   / /
 | 
			
		||||
 |/ /  | |    | | | | |/ _ \ '_ \ / _ \ / _` | '__/ _` | | '_ \| '_ \ / /
 | 
			
		||||
 |_|   | |____| | |_| |  __/ |_) | (_) | (_| | | | (_| | | (_) | (_) / / _
 | 
			
		||||
 (_)    \_____|_|\__,_|\___|_.__/ \___/ \__,_|_|  \__,_|  \___/ \___/_/ (_)
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
# Default Clueboard Layout
 | 
			
		||||
 | 
			
		||||
This is the default layout that comes flashed on every Clueboard. For the most
 | 
			
		||||
part it's a straightforward and easy to follow layout. The only unusual key is 
 | 
			
		||||
the key in the upper left, which sends Escape normally, but Grave when any of
 | 
			
		||||
the Ctrl, Alt, or GUI modifiers are held down.
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue