~ruther/qmk_firmware

9b9178919388fc8e10167794ae719be23901b2fc — Charles Pletcher 7 years ago d1dfefc
Add dilly/pletcher layout (#2880)

* Add pletcher keymap to dilly/keymaps

For the moment, this keymap just removes unneeded RGB keycodes, since
an iPad will cut the keyboard off if LEDs are turned on.

* Drop support for A_RSFT, add media and autoshift

* Lower USB_MAX_POWER_CONSUMPTION for dilly on iPad

* Document USB_MAX_POWER_CONSUMPTION

This config option is useful for limiting the requested power by, e.g.,
an iOS device. While the default value is 500, a much lower value--say,
50--can sufficiently power a small keyboard without LEDs.
M docs/config_options.md => docs/config_options.md +2 -0
@@ 89,6 89,8 @@ This is a C header file that is one of the first things included, and will persi
  * tries to keep switch state consistent with keyboard LED state
* `#define IS_COMMAND() ( keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) )`
  * key combination that allows the use of magic commands (useful for debugging)
* `#define USB_MAX_POWER_CONSUMPTION`
  * sets the maximum power (in mA) over USB for the device (default: 500)

## Features That Can Be Disabled


A keyboards/dilly/keymaps/pletcher/config.h => keyboards/dilly/keymaps/pletcher/config.h +11 -0
@@ 0,0 1,11 @@
#ifndef CONFIG_USER_H
#define CONFIG_USER_H

#include "../../config.h"

#define AUTO_SHIFT_TIMEOUT 150
#define NO_AUTO_SHIFT_SPECIAL
#define NO_AUTO_SHIFT_NUMERIC
#define USB_MAX_POWER_CONSUMPTION 50

#endif

A keyboards/dilly/keymaps/pletcher/keymap.c => keyboards/dilly/keymaps/pletcher/keymap.c +97 -0
@@ 0,0 1,97 @@
#include "dilly.h"
#include "action_layer.h"

extern keymap_config_t keymap_config;

#define _BASE 0
#define _FN1 1
#define _FN2 2
#define _FN3 3
#define _FN4 4
#define _FN5 5

#define KC_ KC_TRNS
#define _______ KC_TRNS

// Tap-Hold keys
#define KC_F_L3 LT(_FN3, KC_F)
#define KC_ZCTL MT(MOD_LCTL, KC_Z)
#define KC_XALT MT(MOD_LALT, KC_X)
#define KC_CGUI MT(MOD_LGUI, KC_C)
#define KC_V_L4 LT(_FN4, KC_V)
#define KC_SPL2 LT(_FN2, KC_SPC)
#define KC_B_L1 LT(_FN1, KC_B)
#define KC_N_L5 LT(_FN5, KC_N)
#define KC_MALT MT(MOD_RALT, KC_M)
#define KC_BSCT MT(MOD_RCTL, KC_BSPC)
#define KC_ENTS MT(MOD_RSFT, KC_ENT)
#define KC_ESCS MT(MOD_RSFT, KC_ESC)

#define KC_GUIC LGUI(KC_C)

#define KC_RST RESET
#define KC_DBUG DEBUG

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  [_BASE] = KC_KEYMAP(
  //,----+----+----+----+----+----+----+----+----+----.
      Q  , W  , E  , R  , T  , Y  , U  , I  , O  , P  ,
  //|----+----+----+----+----+----+----+----+----+----|
      A  , S  , D  ,F_L3, G  , H  , J  , K  , L  ,ESCS,
  //|----+----+----+----+----+----+----+----+----+----|
     ZCTL,XALT,CGUI,V_L4,SPL2,B_L1,N_L5,MALT,BSCT,ENTS
  //`----+----+----+----+----+----+----+----+----+----'
  ),

  [_FN1] = KC_KEYMAP(
  //,----+----+----+----+----+----+----+----+----+----.
      1  , 2  , 3  , 4  , 5  , 6  , 7  , 8  , 9  , 0  ,
  //|----+----+----+----+----+----+----+----+----+----|
      F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,
  //|----+----+----+----+----+----+----+----+----+----|
         ,    ,    ,    ,BSPC,    ,    ,    ,    ,
  //`----+----+----+----+----+----+----+----+----+----'
  ),

  [_FN2] = KC_KEYMAP(
  //,----+----+----+----+----+----+----+----+----+----.
     EXLM, AT ,HASH,DLR ,PERC,CIRC,AMPR,ASTR,LPRN,RPRN,
  //|----+----+----+----+----+----+----+----+----+----|
     F11 ,F12 ,    ,    ,    ,    ,    ,    ,    ,GRV ,
  //|----+----+----+----+----+----+----+----+----+----|
         ,    ,    ,    ,TAB , DEL,    ,    ,    ,
  //`----+----+----+----+----+----+----+----+----+----'
  ),

  [_FN3] = KC_KEYMAP(
  //,----+----+----+----+----+----+----+----+----+----.
         ,    ,    ,    ,    ,MINS,EQL ,LBRC,RBRC,BSLS,
  //|----+----+----+----+----+----+----+----+----+----|
     TAB ,    ,    ,    ,    ,COMM,DOT ,SLSH,SCLN,QUOT,
  //|----+----+----+----+----+----+----+----+----+----|
         ,    ,    ,    ,BSPC,    ,LEFT,DOWN, UP ,RGHT
  //`----+----+----+----+----+----+----+----+----+----'
  ),

  [_FN4] = KC_KEYMAP(
  //,----+----+----+----+----+----+----+----+----+----.
         ,    ,    ,    ,    ,UNDS,PLUS,LCBR,RCBR,PIPE,
  //|----+----+----+----+----+----+----+----+----+----|
     TAB ,    ,    ,    ,    , LT , GT ,QUES,COLN,DQUO,
  //|----+----+----+----+----+----+----+----+----+----|
         ,    ,GUIC,    ,BSPC,    ,HOME,PGDN,PGUP,END
  //`----+----+----+----+----+----+----+----+----+----'
  ),

  [_FN5] = KC_KEYMAP(
  //,----+----+----+----+----+----+----+----+----+----.
         ,    ,    ,RST ,    ,    ,MSTP,VOLD,VOLU,MPLY,
  //|----+----+----+----+----+----+----+----+----+----|
         ,    ,DBUG,    ,    ,    ,    ,ASDN,ASUP,ASRP,
  //|----+----+----+----+----+----+----+----+----+----|
         ,    ,GUIC,    ,    ,    ,    ,    ,    ,ASTG
  //`----+----+----+----+----+----+----+----+----+----'
  )

};

A keyboards/dilly/keymaps/pletcher/rules.mk => keyboards/dilly/keymaps/pletcher/rules.mk +2 -0
@@ 0,0 1,2 @@
AUTO_SHIFT_ENABLE = yes
RGBLIGHT_ENABLE = no