コード例 #1
0
ファイル: keymap.c プロジェクト: EnsuingRequiem/qmk_firmware
* ,-----------------------------------------------------------------------------------------.
* | Esc |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  8  |  9  |  0  |  -  |  =  |  \  |  ~  |
* |-----------------------------------------------------------------------------------------+
* | Tab   |  Q  |  W  |  E  |  R  |  T  |  Y  |  U  |  I  |  O  |  P  |  [  |  ]  | Bkspc   |
* |-----------------------------------------------------------------------------------------+
* | Ctrl    |  A  |  S  |  D  |  F  |  G  |  H  |  J  |  K  |  L  |  ;  |  '  |    Enter    |
* |-----------------------------------------------------------------------------------------+
* | Shift     |  Z  |  X  |  C  |  V  |  B  |  N  |  M  |  ,  |  .  |   /   |  Shift   | Fn |
* |-----------------------------------------------------------------------------------------+
* | Caps  |  GUI |  Alt |                    Space               |   Alt   |  GUI  |  Ctrl  |
* `-----------------------------------------------------------------------------------------'
*/

	LAYOUT(
		KC_ESC, 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_BSLS, 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_BSPC,
		KC_LCTL, 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_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
		KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_RALT, KC_RCTL),



 /* Layer 1
* ,-----------------------------------------------------------------------------------------.
* |     | F1  | F2  | F3  | F4  | F5  | F6  | F7  | F8  | F9  | F10 | F11 | F12 | INS | Del |
* |-----------------------------------------------------------------------------------------+
* |      | PGUP | UP | PGDN | HOME | &  |  ~  |     |     |     | Prnt | UP | Del |  Bkspc  |
* |-----------------------------------------------------------------------------------------+
* |        | LEFT | DWN | RGHT | END |  *  |    |    | PGUP | HOME | LEFT | RGHT |          |
* |-----------------------------------------------------------------------------------------+
* |           |  _  |  +  |  (  |  )  |  |  |     |     | PGDN | END |  DWN  |        |     |
* |-----------------------------------------------------------------------------------------+
コード例 #2
0
ファイル: lfk78.c プロジェクト: 20lives/qmk_firmware
#ifdef CAPSLOCK_LED
    if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
        activateLED(0, 3, 7, 255);
    }else{
        activateLED(0, 3, 7, 0);
    }
#endif // CAPSLOCK_LED
#endif // ISS_ENABLE
    led_set_user(usb_led);
}

// LFK lighting info
const uint8_t switch_matrices[] = {0, 1};
const uint8_t rgb_matrices[] = {6, 7};
const uint8_t rgb_sequence[] = {
    12, 11, 10, 9, 16, 32, 31, 30, 28, 25, 24, 22, 21,
    20, 19, 18, 17, 1, 2, 3, 4, 5, 6, 7, 8, 14, 13
};
// Maps switch LEDs from Row/Col to ISSI matrix.
// Value breakdown:
//     Bit     | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
//            /    \ ISSI Col  |    ISSI Row   |
//          matrix idx
const uint8_t switch_leds[MATRIX_ROWS][MATRIX_COLS] =
LAYOUT(
  0x19, 0x18,   0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x99, 0x98, 0x97, 0x96, 0x95, 0x94,   0x93,   0x92, 0x91,
  0x29, 0x28,    0x27,  0x26, 0x25, 0x24, 0x23, 0x22, 0x21, 0xA9, 0xA8, 0xA7, 0xA6, 0xA5, 0xA4, 0xA3,   0xA2, 0xA1,
  0x39, 0x38,      0x37,  0x36, 0x35, 0x34, 0x33, 0x32, 0x31, 0xB9, 0xB8, 0xB7, 0xB6, 0xB5,     0xB3,
  0x49, 0x48,    0x47,     0x45, 0x44, 0x43, 0x42, 0x41, 0xC9, 0xC8, 0xC7, 0xC6, 0xC5,          0xC4,   0xC2,
  0x59, 0x58,   0x57,  0x56,  0x55,             0x51,                   0xD6, 0xE5, 0xE4,         0xE3, 0xE2, 0xE1);
コード例 #3
0
ファイル: keymap.c プロジェクト: 0xdec/qmk_firmware
     * |---------------------------------------------------------------|
     * |`  |1  |2  |3  |4  |5  |6  |7  |8  |9  |0  |-  |=  |Del|Bsp|Hm |
     * |---------------------------------------------------------------|
     * |Tab  |Q  |W  |E  |R  |T  |Y  |U  |I  |O  |P  |[  |]  |\    |End|
     * |---------------------------------------------------------------|
     * |Caps  |A  |S  |D  |F  |G  |H  |J  |K  |L  |;  |'  |Enter   |PgU|
     * |---------------------------------------------------------------|
     * |Shft|\  |Z  |X  |C  |V  |B  |N  |M  |,  |.  |/  |Shift |Up |PgD|
     * |---------------------------------------------------------------|
     * |Ctrl|GUI |Alt |Space                   |Alt |Fn  |▓|Lt |Dn |Rt |
     * `---------------------------------------------------------------'
    */
    LAYOUT(
        KC_ESC,                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_GRV,  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_DEL,  KC_BSPC, KC_HOME,
        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_END,
        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_LSFT, LT(1, KC_NO), KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH,      KC_LSFT,          KC_UP,   KC_PGDN,
        KC_LCTL, KC_LGUI,      KC_LALT,                            KC_SPC,                             KC_LALT, LT(1, KC_NO),          KC_LEFT, KC_DOWN, KC_RGHT
        ),

    /*
     * ,---------------------------------------------------------------.
     * |RST|▓▓▓|   |   |   |   |▓|   |   |   |   |▓|   |   |   |   |▓▓▓|
     * |---------------------------------------------------------------|
     * |`  |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Tog|
     * |---------------------------------------------------------------|
     * |     |   |   |   |   |   |   |   |   |   |   |   |   |     |Stp|
     * |---------------------------------------------------------------|
     * |      |   |   |   |   |   |   |   |   |   |   |   |        |BL+|
     * |---------------------------------------------------------------|
     * |    |   |   |   |   |   |   |   |   |   |   |   |      |   |BL-|
コード例 #4
0
void lmt_compute_param_y(WYSIWYG *wn, int i, int32 *anchor_y, int32 *depth)
{
	int32 v, dr, top = 0, bottom = 0, y_center;
	
	LAYOUT(wn) dpo = lmt_off_to_abs(wn, Y_REF, DEPTH_OFFSET(i)); /* dep offst*/
	v =  lmt_off_to_abs(wn, Y_REF, Y_OFFSET(i)); /* vertical offset */
	dr = lmt_rel_to_abs(wn, 6, 6, &FRAME_DATA(i) rel_data);
	/* i6 depth relationship */
	switch(LOCKPOINT(i))		/* the lock point */
	{
	  case TL:					/* 'y' = top */
	  case TR:
	  case TC:
		v += lmt_rel_to_abs(wn, 0, 2, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		v += lmt_lock_lead(wn, i, v);
		top = v;      		/* top */
		if (dr)					/* bottom */
			bottom = dr + LAYOUT(wn) dpo;
		else
			bottom = v + LAYOUT(wn) dpo;
		*anchor_y = top;
		break;
	  case HL:					/* 'y' = Height */
	  case HR:
	  case HC:
		v += lmt_rel_to_abs(wn, 0, 2, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		if (TYPE_OF_FRAME(i) == PL_TEXT || TYPE_OF_FRAME(i) == PL_MISC	|| 
			TYPE_OF_FRAME(i) == PL_FLOW)
			v -= (int32)(((float)lmt_off_to_abs(wn, Y_REF, LEADING(i))
						  / (float)wn -> ldb - (float)CAP_HT(i)
						  * (float)lmt_off_to_abs(wn, X_REF, POINT_SIZE(i))
						  / (float)(wn -> msb * 100L)) * (float)wn -> ldb);
		v += lmt_lock_lead(wn, i, v);
		top = v;      		/* top */
		if (dr)
			bottom = dr + LAYOUT(wn) dpo;
		else
			bottom = top + LAYOUT(wn) dpo;
		*anchor_y = top;
		break;
	  case BL:					/* 'y' = bottom */
	  case BR:
	  case BC:
		v += lmt_rel_to_abs(wn, 1, 2, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		bottom = v;
		if (dr)
			top = dr + LAYOUT(wn) dpo + lmt_lock_lead(wn,i,dr+ LAYOUT(wn) dpo);
		else
		{
			v += lmt_lock_lead(wn, i, v - LAYOUT(wn) dpo);
			top = v - LAYOUT(wn) dpo;
			bottom = v;
		}
		*anchor_y = bottom;
		break;
	  case CL:					/* 'y' = center */
	  case CR:
	  case CC:
		{
			int32 a;
			
			v += lmt_rel_to_abs(wn, 2, 2, &FRAME_DATA(i) rel_data);
			/* offset + relationship */
			y_center = v;		/* y-center */
			if (dr)
			{
				LAYOUT(wn) dpo += dr;
				LAYOUT(wn) dpo -= v;
				(LAYOUT(wn) dpo < 0) ? (LAYOUT(wn) dpo *= -2) :
					(LAYOUT(wn) dpo *= 2);
			}
			a = lmt_lock_lead(wn, i, v - (LAYOUT(wn) dpo / 2));
			v += a;
			top = (v - (LAYOUT(wn) dpo / 2)); /* top */
			if (dr)
				v -= a;
			bottom = (v + (LAYOUT(wn) dpo / 2)); /* bottom */
			*anchor_y = y_center;
		}
		break;
	}
	*depth = bottom - top;
}
コード例 #5
0
void lmt_compute_y(WYSIWYG *wn, int i)
{
	int32 v, dr;
	
	v =  lmt_off_to_abs(wn, Y_REF, Y_OFFSET(i)); /* vertical offset */
	dr = lmt_rel_to_abs(wn, 6, 6, &FRAME_DATA(i) rel_data);
	/* i6 depth relationship */
	switch(LOCKPOINT(i))		/* the lock point */
	{
	  case TL:					/* 'y' = top */
	  case TR:
	  case TC:
		v += lmt_rel_to_abs(wn, 0, 2, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		v += lmt_lock_lead(wn, i, v);
		ELE_DATA(i) rot_rect_top = v; /* top */
		if (dr)					/* bottom */
			ELE_DATA(i) rot_rect_bottom = dr + LAYOUT(wn) dpo;
		else
			ELE_DATA(i) rot_rect_bottom = v + LAYOUT(wn) dpo;
		ELE_DATA(i) rot_rect_y_center =	/* y-center */
			(ELE_DATA(i) rot_rect_bottom + ELE_DATA(i) rot_rect_top) / 2 ;
		break;
	  case HL:					/* 'y' = Height */
	  case HR:
	  case HC:
		v += lmt_rel_to_abs(wn, 0, 2, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		if (TYPE_OF_FRAME(i) == PL_TEXT || 
			TYPE_OF_FRAME(i) == PL_MISC || 
			TYPE_OF_FRAME(i) == PL_FLOW)
			v -= (int32)(((float)lmt_off_to_abs(wn, Y_REF, LEADING(i))
						  / (float)wn -> ldb - (float)CAP_HT(i)
						  * (float)lmt_off_to_abs(wn, X_REF, POINT_SIZE(i))
						  / (float)(wn -> msb * 100L)) * (float)wn -> ldb);
		v += lmt_lock_lead(wn, i, v);
		ELE_DATA(i) rot_rect_top = v; /* top */
		if (dr)					/* bottom */
			ELE_DATA(i) rot_rect_bottom = dr + LAYOUT(wn) dpo;
		else
			ELE_DATA(i) rot_rect_bottom = ELE_DATA(i) rot_rect_top
				+ LAYOUT(wn) dpo;
		ELE_DATA(i) rot_rect_y_center =	/* y-center */
			(ELE_DATA(i) rot_rect_bottom + ELE_DATA(i) rot_rect_top) / 2 ;
		break;
	  case BL:					/* 'y' = bottom */
	  case BR:
	  case BC:
		v += lmt_rel_to_abs(wn, 1, 2, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		ELE_DATA(i) rot_rect_bottom = v; /* bottom */
		if (dr)					/* top */
			ELE_DATA(i) rot_rect_top = dr + LAYOUT(wn) dpo +
				lmt_lock_lead(wn, i, dr + LAYOUT(wn) dpo);
		else
		{
			v += lmt_lock_lead(wn, i, v - LAYOUT(wn) dpo);
			ELE_DATA(i) rot_rect_top = v - LAYOUT(wn) dpo;
			ELE_DATA(i) rot_rect_bottom = v; /* bottom */
		}
		ELE_DATA(i) rot_rect_y_center =	/* y-center */
			(v + ELE_DATA(i) rot_rect_top) / 2 ;
		break;
	  case CL:					/* 'y' = center */
	  case CR:
	  case CC:
		{
			int32 a;
			
			v += lmt_rel_to_abs(wn, 2, 2, &FRAME_DATA(i) rel_data);
			/* offset + relationship */
			ELE_DATA(i) rot_rect_y_center = v; /* y-center */
			if (dr)
			{
				LAYOUT(wn) dpo += dr;
				LAYOUT(wn) dpo -= v;
				(LAYOUT(wn) dpo < 0) ? (LAYOUT(wn) dpo *= -2) :
					(LAYOUT(wn) dpo *= 2);
			}
			a = lmt_lock_lead(wn, i, v - (LAYOUT(wn) dpo / 2));
			v += a;
			ELE_DATA(i) rot_rect_top = (v - (LAYOUT(wn) dpo / 2)); /* top */
			if (dr)
				v -= a;
			ELE_DATA(i) rot_rect_bottom = (v + (LAYOUT(wn) dpo / 2)); /* bot */
		}
		break;
	}
}
コード例 #6
0
ファイル: keymap.c プロジェクト: EnsuingRequiem/qmk_firmware
|   CAPS LOCK  |   A    |   S    |   D    |   F    |   G    |   H    |   J    |   K    |   L    |   :    |   "    |       ENTER        |   4    |   5    |   6    |   +    |
|______________|________|________|________|________|________|________|________|________|________|________|________|____________________|________|________|________|________|
|         |        |        |        |        |        |        |        |        |   ,    |    .   |   /    |                |        |        |        |        |        |
|  SHIFT  |  NUBS  |   Z    |   X    |   C    |   V    |   B    |   N    |   M    |   <    |    >   |   ?    |       SHIFT    |   UP   |   1    |   2    |   3    | ENTER  |
|_________|________|________|________|________|________|________|________|________|________|________|________|________________|________|________|________|________|________|
|          |          |          |                                                        |        |   MO   |   MO   |        |        |        |        |        |        |
| CTRL     |   LGUI   | L ALT    |                      SPACE                             | R ALT  |  _FN   |  _FN   |  LEFT  |  DOWN  | RIGHT  |   0    |   .    | ENTER  |
|__________|__________|__________|________________________________________________________|________|________|________|________|________|________|________|________|________|
*/



	LAYOUT(
    KC_ESC,  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_PSCR, KC_HOME, KC_END,  KC_PGUP, KC_PGDN, KC_DEL,
    KC_GRV,  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_BSLS, KC_BSPC, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
    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_P7,   KC_P8,   KC_P9,   KC_PMNS,
    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_P4,   KC_P5,   KC_P6,   KC_PPLS,
    KC_LSFT, KC_NUBS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT,          KC_UP,   KC_P1,   KC_P2,   KC_P3,   KC_PENT,
    KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC,                             KC_RALT, MO(1),   MO(1),   KC_LEFT, KC_DOWN, KC_RGHT, KC_P0,   KC_PDOT, KC_PENT),



  /* Layer 1, function layer
____________________________________________________________________________________________________________________________________________________________________________
|        |        |        |        |        |        |        |        |        |        |        |        |        |        |  VOL   |  VOL   |        |        |        |
| RESET  |        |        |        |        |        |        |        |        |        |        |        |        | MUTE   |  DOWN  |   UP   |        |        |        |
|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|
|        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |
|        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |        |
|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|
|            |  RGB   |        |  RGB   |  HUE   |  HUE   | SATUR. | SATUR. | VALUE  | VALUE  |        |        |        |             |        |        |        |        |
コード例 #7
0
ファイル: keymap.c プロジェクト: Talljoe/qmk_firmware
   /* Keymap: (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|  [|  ]|  \  |
   * |-----------------------------------------------------------|
   * |CAPS/MO|  A|  S|  D|  F|  G|  H|  J|  K|  L|  ;|  '|Return |
   * |-----------------------------------------------------------|
   * |Shift   |  Z|  X|  C|  V|  B|  N|  M|  ,|  .|  /|Shift     |
   * |-----------------------------------------------------------|
   * |Ctrl|Gui |Alt |      Space            |Alt |Gui |MO  |Ctrl |
   * `-----------------------------------------------------------'
   */
    LAYOUT(
        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 , XXXXXXX, KC_BSPC,
        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,
        LT(MO(1), 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_LSFT, XXXXXXX, KC_Z   , KC_X   , KC_C   , KC_V   , KC_B   , KC_N   , KC_M   , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT,          XXXXXXX,
        KC_LCTL,          KC_LGUI, KC_LALT, KC_SPC ,          KC_SPC ,          KC_SPC , KC_RALT, KC_RGUI, XXXXXXX, MO(2)  ,          KC_RCTL),

    /* Keymap : Second Layer (WASD and Media)
   * ,-----------------------------------------------------------.
   * |ESC| F1| F2| F3  |   |   |   |   |   |   |   |   |   | DEL   |
   * |-----------------------------------------------------------|
   * |     |   |   |   |   |   |   |   |   |   |   |   |   |     |
   * |-----------------------------------------------------------|
   * |      |   |   |   |   |   |   |   |   |   |   |   |        |
   * |-----------------------------------------------------------|
   * |        |   |   |   |   |   |   |   |   |   |   |          |
   * |-----------------------------------------------------------|
   * |    |    |    |                        |    |    |    |    |
   * `-----------------------------------------------------------'
コード例 #8
0
ファイル: keymap.c プロジェクト: EnsuingRequiem/qmk_firmware
#include QMK_KEYBOARD_H

#define MODS_CTRL_MASK  (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))

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

	LAYOUT(
		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_NO, KC_BSPC,
		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_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_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO,
		KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RALT, KC_RALT, KC_LGUI, KC_RCTL),

	LAYOUT(
		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,
		KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
		KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS,
		KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_LEFT, KC_DOWN, KC_RIGHT),

	LAYOUT(
		KC_TRNS, M(1), M(2), M(3), M(4), M(5), M(6), M(7), M(8), M(9), M(10), M(11), M(12), 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_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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
};

enum function_id {
    SHIFT_ESC,
};
コード例 #9
0
ファイル: keymap.c プロジェクト: joshru/qmk_firmware
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│ TAB │  Q  │  W  │  E  │  R  │  T  │  Y  │  U  │  I  │  O  │  P  │  [  │  ]  │  \  │█████│
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│CAPSL│  A  │  S  │  D  │  F  │  G  │  H  │  J  │  K  │  L  │  ;  │  '  │▒▒▒▒▒│ENTER│█████│
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│LSHFT│▒▒▒▒▒│  Z  │  X  │  C  │  V  │  B  │  N  │  M  │  ,  │  .  │  /  │▒▒▒▒▒│RSHFT│▒▒▒▒▒│
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│LCTRL│L_GUI│L_ALT│█████│█████│█████│ SPC │█████│█████│█████│R_ALT│ FN0 │ APP │RCTRL│█████│
└─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘
*/

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    /* 0: ANSI qwerty */
    LAYOUT(KC_ESC,   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_NO,   KC_BSPC, \
          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_CAPS,   KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,  KC_NO,   KC_ENT ,       \
          KC_LSFT,   KC_NO,   KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH,  KC_NO,   KC_RSFT, KC_NO, \
          KC_LCTL,   KC_LGUI, KC_LALT,                   KC_SPC,                    KC_RALT, KC_FN0,  KC_APP,  KC_RCTL),

/* 1: Fn layer
UG = Underglow = RGB Backlighting
BL = Backlighting = In-Switch LED
┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐
│GRAVE│ F1  │ F2  │ F3  │ F4  │ F5  │ F6  │ F7  │ F8  │ F9  │ F10 │ F11 │ F12 │▒▒▒▒▒│     │
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│     │     │ Up  │     │     │     │     │     │PGUP │PGDWN│PRTSC│SCLCK│PAUSE│     │█████│
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│     │Left │Down │Right│     │     │     │     │     │     │     │     │▒▒▒▒▒│     │█████│
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
│     │     │UGTOG│UGMOD│UGHUI│UGHUD│UGSAI│UGSAD│     │BLDEC│BLTOG│BLINC│▒▒▒▒▒│     │▒▒▒▒▒│
├─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
コード例 #10
0
ファイル: keymap.c プロジェクト: 0xdec/qmk_firmware
#include QMK_KEYBOARD_H

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

  LAYOUT(
    KC_ESC,           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_PSCR, KC_SLCK, KC_PAUS,     KC_MPLY, KC_MPRV, KC_MNXT, KC_MUTE, \
    KC_GRV,  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_BSPC,     KC_INS,  KC_HOME, KC_PGUP,     KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, \
    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_END,  KC_PGDN,     KC_P7,   KC_P8,   KC_P9,   KC_PPLS, \
    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_P4,   KC_P5,   KC_P6,   KC_PPLS, \
    KC_LSFT, KC_NUBS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_RSFT,                       KC_UP,                KC_P1,   KC_P2,   KC_P3,   KC_PENT, \
    KC_LCTL, KC_LGUI, KC_LALT, KC_SPC,           KC_SPC,  KC_SPC,  KC_SPC,                    KC_RALT, KC_RGUI, KC_APP,  KC_RCTL,              KC_LEFT, KC_DOWN, KC_RGHT,     KC_P0,   KC_PCMM, KC_PDOT, KC_PENT  \
  )
};

void led_set_user(uint8_t usb_led) {

    if (usb_led & (1 << USB_LED_NUM_LOCK)) {
        DDRB |= (1 << 5); PORTB &= ~(1 << 5);
    } else {
        DDRB &= ~(1 << 5); PORTB &= ~(1 << 5);
    }

    if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
        DDRB |= (1 << 6); PORTB &= ~(1 << 6);
    } else {
        DDRB &= ~(1 << 6); PORTB &= ~(1 << 6);
    }

    if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
        DDRB |= (1 << 7); PORTB &= ~(1 << 7);
    } else {
コード例 #11
0
ファイル: mathtest.cpp プロジェクト: TemanS/mathtest
void MathTest::initDisplay()
{
    int index;

    // Set the starting coordinates in pixels for the objects that will be
    // laid out.
    //
    const int tests_x = 20;     // x coord of left side of groups
    const int tests_y = 50;     // y coord of top of groups
    const int text_w = 80;      // Width of all text
    const int text_h = 14;      // Height of all text
    const int box_w = 60;       // Width of Edit Boxes and Labels
    const int box_h = 30;       // Height of all controls
    const int vs = 36;          // Vertical Span
    const int hs = 36;          // Horizontal span

    // Instantiate the Layout parameters.
    // See layout.h
    //
    LAYOUT_INIT()

    // Layout the Tests Checkboxes
    //
    LAYOUT(tests_x, tests_y, 0, vs)
    Twidget *tw = new Twidget;
    tw->objName = "Tests";
    tw->objText << "Add" << "Subtract" << "Multiply" << "Divide";
    tw->sizes   << QSize(text_w+10, box_h);
    tw->layout  << CELL(0,0) << CELL(0,1) << CELL(0,2) << CELL(0,3);
    tw->connect = false;
    //
    // Layout the Labels for number of Problems, time in Seconds, and Grade
    // Level.
    // These labels will "belong" to the pTests control group.
    //
    int label_x  = tests_x + text_w + hs;
    int label_y  = 14;
    int label_hs = box_w + hs;
    LAYOUT(label_x, label_y, label_hs, text_h)
    tw->labelText   << "Number of" << "Problems"
                    << "Time in" << "Seconds"
                    << "Grade" << "Level";
    tw->labelSizes  << QSize(text_w, text_h);
    tw->labelLayout << CELL(0,0) << CELL(0,1)
                    << CELL(1,0) << CELL(1,1)
                    << CELL(2,0) << CELL(2,1);
    pTests = new TButtonGroup <QCheckBox>(tw, this);

    // Layout the "Problems" QLineEdit boxes
    //
    tw = new Twidget;
    int prob_x = label_x;
    int prob_y = tests_y;
    LAYOUT(prob_x, prob_y, 0, vs)
    tw->objName = "Problems";
    tw->objText << "5" << "5" << "5" << "5";
    tw->sizes   << QSize(box_w, box_h);
    tw->layout  << CELL(0,0) << CELL(0,1) << CELL(0,2) << CELL (0,3);
    tw->connect = true;
    pProblems   = new TEditGroup <QLineEdit>(tw, this);
    for(index = 0; index < pProblems->widgetList.size(); index++)
        pProblems->widgetList[index]->setInputMask("00");

    // Layout the "Seconds" QLineEdit boxes
    //
    tw = new Twidget;
    int time_x = label_x + box_w + hs;
    int time_y = prob_y;
    LAYOUT(time_x, time_y, 0, vs);
    tw->layout  << CELL(0,0) << CELL(0,1) << CELL(0,2) << CELL(0,3);
    tw->objName = "Seconds";
    tw->objText << "10" << "10" << "25" << "30";
    tw->sizes   << QSize(box_w, box_h);
    tw->connect = false;
    pTimes      = new TEditGroup <QLineEdit>(tw, this);
    for(index = 0; index < pTimes->widgetList.size(); index++)
        pTimes->widgetList[index]->setInputMask("00");

    // Layout the Grade Level radiobuttons.
    //
    tw = new Twidget;
    int gl_x = time_x + box_w + hs - 10;
    int gl_y = time_y;
    LAYOUT(gl_x, gl_y, 0, vs);
    tw->layout << CELL(0,0) << CELL(0,1) << CELL(0,2) << CELL(0,3);
    tw->sizes << QSize(box_w - 10, box_h);
    tw->objText << "1" << "2" << "3" <<"4";
    tw->connect = true;
    tw->grouped = true;
    pGradeLevel = new TButtonGroup <QRadioButton>(tw, this);
    pGradeLevel->widgetList[gl_3]->setChecked(true);
    connect(pGradeLevel->buttonGroup, SIGNAL(buttonClicked(int)),
            this, SLOT(onGradeLevel(int)));

    // Layout the UserName box and its label
    //
    int userName_x = tests_x;
    int userName_y = tests_y + text_h + (4 * vs);
    int userNameEd_x = userName_x + text_w;
    int userNameEd_w = 250;
    userNameLabel = new QLabel(this);
    userNameLabel->setGeometry(userName_x, userName_y, text_w, text_h);
    userNameLabel->setText("Your Name:");
    userNameEdit = new QLineEdit(this);
    userNameEdit->setGeometry(userNameEd_x, userName_y, userNameEd_w, box_h);
    userNameEdit->setText("");
    userNameEdit->setCursorPosition(0);
    connect(userNameEdit, SIGNAL(returnPressed()), this, SLOT(onUserName()));

    // Create and connect the Start button.
    // Because this pushbutton's parent is QDialog, it will have its
    // autoDefault property set when instantiated. This can cause some very
    // confusing behavior if you don't know this. See "autoDefault" in the
    // QPushButton class reference. We will explicitly set this property
    // to FALSE for this button, and also set its "default" property to
    // FALSE.
    //
    const int pbw = 100;
    const int pbhs = 110;
    int goButton_x = tests_x+10;
    int goButton_y = userName_y + vs + 6;
    goButton = new QPushButton("Start", this);
    goButton->setGeometry(goButton_x, goButton_y, pbw, box_h);
    goButton->setAutoDefault(false);
    goButton->setDefault(false);
    connect(goButton, SIGNAL(clicked()), this, SLOT(onGo()));

    // Create and connect the stop button.
    //
    int stopButton_x = goButton_x + pbhs;
    int stopButton_y = goButton_y;
    stopButton = new QPushButton("Stop", this);
    stopButton->setGeometry(stopButton_x, stopButton_y, pbw, box_h);
    stopButton->setAutoDefault(false);
    stopButton->setDefault(false);
    connect(stopButton, SIGNAL(clicked()), this, SLOT(onStop()));

    // Create and connect the Default button.
    //
    int defaultButton_x = stopButton_x + pbhs;
    int defaultButton_y = goButton_y;
    defaultButton = new QPushButton("Defaults", this);
    defaultButton->setGeometry(defaultButton_x, defaultButton_y, pbw, box_h);
    defaultButton->setAutoDefault(false);
    defaultButton->setDefault(false);
    connect(defaultButton, SIGNAL(clicked()), this, SLOT(onDefault()));

    // Layout the Quiz and Answer Boxes and their labels
    //
    tw = new Twidget;
    int quiz_x = tests_x + 20;
    int quiz_y = goButton_y + vs;
    LAYOUT(quiz_x, quiz_y, hs + box_w+10, text_h)
    tw->labelLayout << CELL(0,0) << CELL(1,0) << CELL(2,0)
                    << CELL(0,1) << CELL(1,1) << CELL(2,1);
    tw->labelText   << "Problem" << "The" << "Your"
                    << "Number" << "Problem" << "Answer";
    tw->labelSizes  << QSize(text_w, text_h);
    LAYOUT(quiz_x, quiz_y+(2*text_h)+2, hs + box_w+10, 0)
    tw->objName = "Quiz";
    tw->objText << "";
    tw->sizes   << QSize(box_w, box_h)
                << QSize(box_w+30, box_h)
                << QSize(box_w+10, box_h);
    tw->hOffset << 20 << -5 << 0 << 20 << -5 << 0;
    tw->layout  << CELL(0,0) << CELL(1,0) << CELL(2,0);
    pQuiz = new TEditGroup <QLineEdit>(tw, this);
    //
    // Set the Quiz Box to ReadOnly and connect the returnPressed
    // signal from the Answer Box.
    //
    pQuiz->widgetList[qz_number]->setReadOnly(true);
    pQuiz->widgetList[qz_number]->setAlignment(Qt::AlignRight);
    pQuiz->widgetList[qz_quiz]->setReadOnly(true);
    pQuiz->widgetList[qz_answer]->setEnabled(true);
    pQuiz->widgetList[qz_answer]->setInputMask("0000");
    pQuiz->widgetList[qz_answer]->setCursor(Qt::IBeamCursor);
    pQuiz->widgetList[qz_answer]->setCursorPosition(0);
    QLineEdit *tempLineEdit = pQuiz->widgetList[qz_answer];
    connect (tempLineEdit, SIGNAL(returnPressed()),
        this, SLOT(onAnswer()));

    // Create the Message Box
    //
    int msg_x = tests_x;
    int msg_y = quiz_y + vs + (3 * text_h);
    int msg_w = 340;
    int msg_h = 180;
    QTextEdit* messages = new QTextEdit(this);
    messages->setGeometry(msg_x, msg_y, msg_w, msg_h);
    messages->setReadOnly(true);
    messages->setFocusPolicy(Qt::ClickFocus);
    messages->setUpdatesEnabled(true);
    pMsg = new Msg(messages);
}
コード例 #12
0
ファイル: keymap.c プロジェクト: Talljoe/qmk_firmware
#include QMK_KEYBOARD_H

extern keymap_config_t keymap_config;

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

  LAYOUT(
    KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
    KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
    KC_LCTL, KC_LGUI, KC_LALT, TG(4), MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_RGHT, KC_UP, KC_DOWN),

  LAYOUT(
    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_PAUS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR,
    KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_INS, KC_HOME, KC_PGUP,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_PGDN),

  LAYOUT(
    KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
    KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
    KC_MINS, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_PIPE,
    KC_UNDS, KC_PLUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCBR, KC_RCBR, KC_BSLS,
    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),

  LAYOUT(
    LALT(KC_F4), LSFT(KC_EXLM), LSFT(KC_AT), LSFT(KC_HASH), LSFT(KC_DLR), LSFT(KC_PERC), LSFT(KC_CIRC), LSFT(KC_AMPR), LSFT(KC_ASTR), LSFT(KC_LPRN), LSFT(KC_RPRN), LSFT(KC_DEL),
    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, LSFT(KC_COLN), LSFT(KC_DQUO),
コード例 #13
0
ファイル: keymap.c プロジェクト: 0xdec/qmk_firmware
#include QMK_KEYBOARD_H

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    /* 0: Winkey */
    LAYOUT(
        KC_ESC,          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_PSCR,KC_SLCK,KC_PAUS,\
        KC_GRV,   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_INS,KC_HOME,KC_PGUP,\
        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_END,KC_PGDN,\
       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_NUHS, KC_ENT,                             \
       KC_LSFT,KC_NUBS,   KC_Z,   KC_X,   KC_C,   KC_V,   KC_B,   KC_N,   KC_M,KC_COMM, KC_DOT,KC_SLSH,KC_RSFT,  MO(2),               KC_UP,        \
       KC_LCTL,KC_LGUI,KC_LALT,                         KC_SPC,                        KC_RALT,KC_RGUI, KC_APP,KC_RCTL,     KC_LEFT,KC_DOWN,KC_RGHT \
	   ),
    /* 1: Winkeyless */
    LAYOUT(
        KC_ESC,          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_PSCR,KC_SLCK,KC_PAUS,\
        KC_GRV,   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_INS,KC_HOME,KC_PGUP,\
        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_END,KC_PGDN,\
       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_NUHS, KC_ENT,                             \
       KC_LSFT,KC_NUBS,   KC_Z,   KC_X,   KC_C,   KC_V,   KC_B,   KC_N,   KC_M,KC_COMM, KC_DOT,KC_SLSH,KC_RSFT,  MO(2),               KC_UP,        \
       KC_LCTL,KC_LGUI,KC_LALT,                         KC_SPC,                          KC_NO,KC_RALT,KC_RGUI,KC_RCTL,     KC_LEFT,KC_DOWN,KC_RGHT \
	   ),
    /* 2: Fn */
    LAYOUT(
       KC_TRNS,          BL_ON, BL_OFF,BL_STEP,BL_BRTG,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_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_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_TRNS,KC_TRNS,                        KC_TRNS,                        KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,     KC_TRNS,KC_TRNS,KC_TRNS \
	   ),
};
コード例 #14
0
ファイル: keymap.c プロジェクト: kleinmann/qmk_firmware
  _LAYER0,
  _LAYER1,
  _LAYER2,
  _LAYER3
};


const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] PROGMEM = {
    /* Keymap 0
     * ,-----------.
     * |   |Up |Fn0|
     * |---+---+---|
     * |Lef|Dow|Rig|
     * `-----------'
     */
    LAYOUT( KC_UP,  TO(_LAYER1), KC_LEFT,KC_DOWN,KC_RIGHT ),
    /* Keymap 1
     * ,-----------.
     * |   |PgU|Fn1|
     * |---+---+---|
     * |Hom|PgD|End|
     * `-----------'
     */
    LAYOUT( KC_PGUP,TO(_LAYER2), KC_HOME,KC_PGDN,KC_END  ),
    /* Keymap 2
     * ,-----------.
     * |   |Sel|Fn2|
     * |---+---+---|
     * |Pre|Pla|Nex|
     * `-----------'
     */
コード例 #15
0
ファイル: keymap.c プロジェクト: 0xdec/qmk_firmware
  #include "protocol/serial.h"
#endif

#define LT3_TAB LT(3, KC_TAB)
#define MT_RSFT_ENT MT(MOD_RSFT, KC_ENT)

enum custom_keycodes {
    LED_TOG = SAFE_RANGE,
    LED_CHG
};

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

LAYOUT(
  KC_ESC,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC,
  LT3_TAB, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,
  KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, MT_RSFT_ENT,
  KC_LCTL, KC_LALT, KC_LGUI, KC_APP,  MO(2),      KC_SPC,        MO(1),  KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT
),

LAYOUT(
  KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_DELETE,
  _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS,
  _______, KC_F11,  KC_F12,  KC_F13,  KC_F14,  KC_F15,  KC_F16,  KC_F17,  KC_F18,  KC_F19,  KC_F20,  _______,
  _______, _______, _______, KC_CAPS, _______,     _______,      _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
),

LAYOUT(
  KC_FN6,  KC_FN7,  KC_FN8,  KC_FN9,  KC_FN10, KC_FN11, KC_FN12, KC_FN13, KC_FN14, KC_FN15, KC_FN16, KC_DELETE,
  _______, _______, _______, _______, _______, _______, _______, KC_FN17, KC_FN18, KC_FN19, KC_FN20, KC_FN21,
  _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  _______,
  _______, _______, _______, KC_CAPS, _______,     _______,      _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
コード例 #16
0
void lmt_compute_x(WYSIWYG *wn, int i)
{
	int32 h, wr;
	
	h =  lmt_off_to_abs(wn, X_REF, X_OFFSET(i)); /* horizontal offset */
	wr = lmt_rel_to_abs(wn, 7, 4, &FRAME_DATA(i) rel_data);
	/* i4 width relationship */
	switch(LOCKPOINT(i))		/* the lock point */
	{
	  case TL:					/* 'x' = left */
	  case BL:
	  case CL:
	  case HL:
		h += lmt_rel_to_abs(wn, 3, 0, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		ELE_DATA(i) rot_rect_left = h; /* left */
		if (wr)					/* right */
			ELE_DATA(i) rot_rect_right = wr + LAYOUT(wn) wo;
		else
			ELE_DATA(i) rot_rect_right = h + LAYOUT(wn) wo;
		ELE_DATA(i) rot_rect_x_center =	/* x-center */
			(ELE_DATA(i) rot_rect_right + h) / 2;
		break;
	  case TR:					/* 'x' = right */
	  case BR:
	  case CR:
	  case HR:
		h += lmt_rel_to_abs(wn, 4, 0, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		ELE_DATA(i) rot_rect_right = h;	/* right */
		if (wr)					/* left */
			ELE_DATA(i) rot_rect_left = wr + LAYOUT(wn) wo;
		else
			ELE_DATA(i) rot_rect_left = h - LAYOUT(wn) wo;
		ELE_DATA(i) rot_rect_x_center =	/* x-center */
			(h + ELE_DATA(i) rot_rect_left) / 2;
		break;
	  case TC:					/* 'x' = center */
	  case BC:
	  case CC:
	  case HC:
		h += lmt_rel_to_abs(wn, 5, 0, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		ELE_DATA(i) rot_rect_x_center = h; /* x-center */
		if (wr)
		{
			LAYOUT(wn) wo += wr;
			LAYOUT(wn) wo -= h;
			(LAYOUT(wn) wo < 0) ? (LAYOUT(wn) wo *= -2) : (LAYOUT(wn) wo *= 2);
		}
		ELE_DATA(i) rot_rect_left = (h - (LAYOUT(wn) wo / 2)); /* left */
		ELE_DATA(i) rot_rect_right = (h + (LAYOUT(wn) wo / 2));	/* right */
		break;
	}
}
コード例 #17
0
ファイル: keymap.c プロジェクト: 0xdec/qmk_firmware
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

#include QMK_KEYBOARD_H

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

LAYOUT(
    KC_HOME, KC_PGUP,
    KC_END, KC_PGDN),


};


bool initialized = 0;

const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
  return MACRO_NONE ;
}

void matrix_init_user(void) {
  if (!initialized){
      dprintf("Initializing in matrix_scan_user");
コード例 #18
0
void lmt_compute_param_x(WYSIWYG *wn, int i, int32 *anchor_x, int32 *width)
{
	int32 h, wr, left = 0, right = 0, x_center;
	
	LAYOUT(wn) wo =  lmt_off_to_abs(wn, X_REF, WIDTH_OFFSET(i)); /*wid offst */
	h =  lmt_off_to_abs(wn, X_REF, X_OFFSET(i)); /* horizontal offset */
	wr = lmt_rel_to_abs(wn, 7, 4, &FRAME_DATA(i) rel_data);
	/* i4 width relationship */
	switch(LOCKPOINT(i))		/* the lock point */
	{
	  case TL:					/* 'x' = left */
	  case BL:
	  case CL:
	  case HL:
		h += lmt_rel_to_abs(wn, 3, 0, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		left = h;
		if (wr)
			right = wr + LAYOUT(wn) wo;
		else
			right = h + LAYOUT(wn) wo;
		*anchor_x = left;
		break;
	  case TR:					/* 'x' = right */
	  case BR:
	  case CR:
	  case HR:
		h += lmt_rel_to_abs(wn, 4, 0, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		right = h;
		if (wr)
			left = wr + LAYOUT(wn) wo;
		else
			left = h - LAYOUT(wn) wo;
		*anchor_x = right;
		break;
	  case TC:					/* 'x' = center */
	  case BC:
	  case CC:
	  case HC:
		h += lmt_rel_to_abs(wn, 5, 0, &FRAME_DATA(i) rel_data);
		/* offset + relationship */
		x_center = h;			/* x-center */
		if (wr)
		{
			LAYOUT(wn) wo += wr;
			LAYOUT(wn) wo -= h;
			(LAYOUT(wn) wo < 0) ? (LAYOUT(wn) wo *= -2) : (LAYOUT(wn) wo *= 2);
		}
		left = (h - (LAYOUT(wn) wo / 2)); /* left */
		right = (h + (LAYOUT(wn) wo / 2)); /* right */
		*anchor_x = x_center;
		break;
	}
	*width = right - left;
}
コード例 #19
0
ファイル: keymap.c プロジェクト: 20lives/qmk_firmware
* ,-----------------------------------------------------------------------------------------.
* | Esc |  1  |  2  |  3  |  4  |  5  |  6  |  7  |  8  |  9  |  0  |  ß  |  ´  |   BSPC    |
* |-----------------------------------------------------------------------------------------+
* | Tab    |  Q  |  W  |  E  |  R  |  T  |  Z  |  U  |  I  |  O  |  P  |  P  |  Ü  | *  |   |
* |-------------------------------------------------------------------------------------|   +
* | Layer_1    |  A  |  S  |  D  |  F  |  G  |  H  |  J  |  K  |  L  |  Ö  |  Ä |  # |Enter |
* |-----------------------------------------------------------------------------------------+
* | Shift|  < |  Y  |  X  |  C  |  V  |  B  |  N  |  M  |  ,  |  .  |  .  |  -  |  RShift   |
* |-----------------------------------------------------------------------------------------+
* | LCtrl |  LGUI  |  LAlt  |               Space                | RAlt  | Layer_2 |  RCtrl |
* `-----------------------------------------------------------------------------------------'
*/

	LAYOUT(
		KC_ESC,   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_NO, 	KC_BSPC,
		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,
		MO(1),    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_LSFT,  KC_NUBS,    KC_Z,     KC_X,     KC_C,     KC_V,     KC_B,     KC_N, 	KC_M, 		KC_COMM, 	KC_DOT, 	KC_SLSH, KC_RSFT,
    	KC_LCTL,  KC_LCTL,    KC_LGUI,  KC_LALT,  KC_SPC,   KC_SPC,   KC_SPC,   KC_NO,	KC_RALT, 	KC_NO, 		MO(2), 		KC_RCTL),


	LAYOUT(
		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_NO, KC_DEL,
		KC_NO, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
		KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
		KC_PGUP, KC_NO, KC_NO, KC_NO, BL_DEC, BL_TOGG, BL_INC, BL_STEP, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
		KC_PGDOWN, KC_LGUI, KC_LGUI, KC_NO, KC_NO, KC_NO, KC_RALT, KC_RGUI, KC_NO, KC_NO, KC_RCTL),

	LAYOUT(
		KC_GRV,  KC_MPRV,   KC_MPLY,  KC_MNXT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL,
		KC_NO, KC_NO, KC_UP, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
		KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
コード例 #20
0
ファイル: keymap.c プロジェクト: Talljoe/qmk_firmware
#include QMK_KEYBOARD_H
#include "action_layer.h"

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

  // 0: Base Layer
  LAYOUT(
      KC_ESC,  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_NO,    \
      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_CAPS, KC_A,    KC_S,    KC_D,    KC_F,   KC_G,   KC_H,   KC_J,   KC_K,   KC_L,    KC_SCLN, KC_QUOT,  KC_NO,             KC_ENT,    \
      KC_LSFT, KC_NO,   KC_Z,    KC_X,    KC_C,   KC_V,   KC_B,   KC_N,   KC_M,   KC_COMM, KC_DOT,  KC_NO,  KC_RSFT  ,KC_UP,    KC_DEL,      \
      KC_LCTL, KC_LGUI, KC_LALT,                          KC_SPC,                          KC_RGUI, MO(1),    KC_LEFT, KC_DOWN,  KC_RIGHT),

  // 1: Function Layer
  LAYOUT(
      RESET,   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_NO,   KC_NO,    \
      KC_NO,   KC_WH_U, KC_UP,   KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO,  KC_INS, KC_NO,   KC_PSCR, KC_SLCK,  KC_PAUS,           KC_DEL,    \
      KC_NO,   KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO,  KC_NO,  KC_NO,   KC_HOME, KC_PGUP,  KC_NO,             KC_ENT,    \
      KC_LSFT, KC_NO,   KC_NO,   KC_APP,  BL_STEP,KC_NO,  KC_NO,  KC_VOLD,KC_VOLU,KC_MUTE, KC_END,  KC_RSFT,  KC_NO  ,KC_PGUP,  KC_INS,      \
      KC_LCTL, KC_LGUI, KC_LALT,                          KC_SPC,                          KC_RGUI, MO(1),    KC_HOME, KC_PGDOWN,KC_END),

};

// Macros
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {

  // MACRODOWN only works in this function
  switch(id) {
    case 0:
      if (record->event.pressed) { register_code(KC_RSFT); }
      else { unregister_code(KC_RSFT); }