ソースを参照

[Keyboard] Add abnt2 layout to gh60 (#7371)

* [keymap] Add abnt2 format to gh60

* Fix typing errors

* Change key names to capitals

* Fix layout define

* Apply suggestions from code review

* Fix layout define again I used a k

* Remove layer variable

* Update keyboards/dz60/keymaps/default_abnt2/readme.md

* Make changes from noroadsleft
Luiz Correia 5 年 前
コミット
e58dd1a09a

ファイルの差分が大きいため隠しています
+ 1 - 68
keyboards/gh60/revc/info.json


+ 83 - 0
keyboards/gh60/revc/keymaps/default_abnt2/keymap.c

@@ -0,0 +1,83 @@
+/* Copyright 2019 Luiz Correia
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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
+#include "keymap_br_abnt2.h"
+
+enum layer_names {
+    _BL,
+    _FL,
+    _CL,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+  /* Layer 0 (BR ABNT2 Layout shown)
+   * ,-----------------------------------------------------------.
+   * |Esc|1 !|2 @|3 #|4 $|5 %|6 ¨|7 &|8 *|9 (|0 )|- _|= +| Bksp  |
+   * |-----------------------------------------------------------|
+   * | Tab | Q | W | E | R | T | Y | U | I | O | P |' `|{ [|Enter|
+   * |------------------------------------------------------.    |
+   * | Fn1  | A | S | D | F | G | H | J | K | L | Ç |^ ~|} ]|    |
+   * |-----------------------------------------------------------|
+   * |Sft |\ || Z | X | C | V | B | N | M |, <|. >|; :|/ ?|Shift |
+   * |-----------------------------------------------------------|
+   * |Ctrl |GUI|Alt  |         Space         |Alt  |GUI|Fn2|Ctrl |
+   * `-----------------------------------------------------------'
+   */
+  [_BL] = LAYOUT_60_abnt2(
+    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_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    BR_ACUT, BR_LBRC,
+    KC_CAPS,   KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,  BR_CCDL,  BR_TILD, BR_RBRC, KC_ENT,
+    KC_LSFT, BR_BSLS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT, BR_SCLN, BR_SLSH, KC_RSFT,
+    KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC,                             KC_RALT, KC_RGUI, MO(_FL),   KC_RCTL),
+
+
+  [_FL] = LAYOUT_60_abnt2(
+    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,
+    XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+    _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+    KC_LSFT, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC,  BL_TOGG, BL_INC,  BL_STEP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+    KC_LCTL, KC_LGUI, KC_LGUI,                            XXXXXXX,                            KC_RALT, KC_RGUI, _______, KC_RCTL),
+
+  [_CL] = LAYOUT_60_abnt2(
+    KC_GRV,  KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL,
+    XXXXXXX, XXXXXXX, KC_UP,   XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+    _______, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+    KC_LSFT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
+    KC_LCTL, KC_LGUI, KC_LALT,                            XXXXXXX,                            XXXXXXX, XXXXXXX, _______, XXXXXXX),
+
+};
+
+void matrix_scan_user(void) {
+
+    if (layer_state_is(_FL)) {
+        gh60_wasd_leds_on();
+        gh60_fn_led_on();
+    } else {
+        gh60_wasd_leds_off();
+        gh60_fn_led_off();
+    }
+
+    if (layer_state_is(_CL)) {
+        gh60_poker_leds_on();
+        gh60_esc_led_on();
+    } else {
+        gh60_poker_leds_off();
+        gh60_esc_led_off();
+    }
+
+};

+ 15 - 0
keyboards/gh60/revc/keymaps/default_abnt2/readme.md

@@ -0,0 +1,15 @@
+# BR ABNT2 layout
+
+This is a Brazilian ABNT2 keymap for the GH60 in a standard layout.
+
+The top-left sends Escape normally, but becomes a quote key when
+tapped whilst either Fn or GUI are held down.
+
+## Layout Image
+
+![Layout Image](http://s2.glbimg.com/hlQMZ_E87B3DB_96rVuO_pY2Yy8=/695x0/s.glbimg.com/po/tt2/f/original/2016/06/21/900px-kb_portuguese_brazilsvg_.png)
+
+----
+### References
+
+1. [Grave Escape - QMK Firmware Documentation](https://docs.qmk.fm/#/feature_grave_esc)

+ 27 - 0
keyboards/gh60/revc/revc.h

@@ -115,3 +115,30 @@ inline void gh60_wasd_leds_off(void)    { setPinInput(F7); writePinLow(F7); }
     { K30, KC_NO, K32, K33,   K34,   K35, K36,   K37,   K38,   K39,   K3A, K3B, K3C,   K3D }, \
     { K40, K41,   K42, KC_NO, KC_NO, K45, KC_NO, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C,   K4D }  \
 }
+
+/* LAYOUT_60_abnt2
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
+ * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d     │
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
+ * │10   │11 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │     │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐2d  │
+ * │20    │21 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │    │
+ * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┤
+ * │30  │31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3c │  3d  │
+ * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬──┴─┬────┤
+ * │40  │41  │42  │45                      │4a  │4b  │4c  │4d  │
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+*/
+#define LAYOUT_60_abnt2( \
+    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
+    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C,      \
+    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, \
+    K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
+    K40, K41, K42,            K45,                K4A, K4B,K4C, K4D       \
+) { \
+    { K00, K01, K02, K03,   K04,   K05, K06,   K07,   K08,   K09,   K0A, K0B, K0C,   K0D   }, \
+    { K10, K11, K12, K13,   K14,   K15, K16,   K17,   K18,   K19,   K1A, K1B, K1C,   KC_NO }, \
+    { K20, K21, K22, K23,   K24,   K25, K26,   K27,   K28,   K29,   K2A, K2B, K2C,   K2D   }, \
+    { K30, K31, K32, K33,   K34,   K35, K36,   K37,   K38,   K39,   K3A, K3B, K3C,   K3D   }, \
+    { K40, K41, K42, KC_NO, KC_NO, K45, KC_NO, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C,   K4D   }  \
+}

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません