Template updates (#7221)

* Template updates

* Flesh out info.json & keymap.c, and turn double spaces section into a list

* Add enum to demonstrate layer naming

* Semicolon
This commit is contained in:
fauxpark 2019-11-02 13:06:03 +11:00 committed by Drashna Jaelre
parent 1f6cb53fb3
commit e6cc9cc78d
10 changed files with 69 additions and 85 deletions

View File

@ -4,9 +4,9 @@
A short description of the keyboard/project A short description of the keyboard/project
Keyboard Maintainer: [%YOUR_NAME%](https://github.com/yourusername) * Keyboard Maintainer: [%YOUR_NAME%](https://github.com/yourusername)
Hardware Supported: The PCBs, controllers supported * Hardware Supported: The PCBs, controllers supported
Hardware Availability: links to where you can find this hardware * Hardware Availability: Links to where you can find this hardware
Make example for this keyboard (after setting up your build environment): Make example for this keyboard (after setting up your build environment):

View File

@ -13,6 +13,7 @@ BOOTLOADER = atmel-dfu
# If you don't know the bootloader type, then you can specify the # If you don't know the bootloader type, then you can specify the
# Boot Section Size in *bytes* by uncommenting out the OPT_DEFS line # Boot Section Size in *bytes* by uncommenting out the OPT_DEFS line
# Otherwise, delete this section
# Teensy halfKay 512 # Teensy halfKay 512
# Teensy++ halfKay 1024 # Teensy++ halfKay 1024
# Atmel DFU loader 4096 # Atmel DFU loader 4096

View File

@ -0,0 +1,18 @@
{
"keyboard_name": "%KEYBOARD%",
"url": "",
"maintainer": "%YOUR_NAME%",
"width": 3,
"height": 2,
"layouts": {
"LAYOUT": {
"layout": [
{"label":"k00", "x":0, "y":0},
{"label":"k01", "x":1, "y":0},
{"label":"k02", "x":2, "y":0},
{"label":"k10", "x":0, "y":1, "w":1.5},
{"label":"k12", "x":1.5, "y":1, "w":1.5}
]
}
}
}

View File

@ -13,6 +13,7 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "%KEYBOARD%.h" #include "%KEYBOARD%.h"
// Optional override functions below. // Optional override functions below.
@ -20,32 +21,30 @@
// These are only required if you want to perform custom actions. // These are only required if you want to perform custom actions.
/* /*
void matrix_init_kb(void) { void matrix_init_kb(void) {
// put your keyboard start-up code here // put your keyboard start-up code here
// runs once when the firmware starts up // runs once when the firmware starts up
matrix_init_user(); matrix_init_user();
} }
void matrix_scan_kb(void) { void matrix_scan_kb(void) {
// put your looping keyboard code here // put your looping keyboard code here
// runs every cycle (a lot) // runs every cycle (a lot)
matrix_scan_user(); matrix_scan_user();
} }
bool process_record_kb(uint16_t keycode, keyrecord_t *record) { bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
// put your per-action keyboard code here // put your per-action keyboard code here
// runs for every action, just before processing by the firmware // runs for every action, just before processing by the firmware
return process_record_user(keycode, record); return process_record_user(keycode, record);
} }
void led_set_kb(uint8_t usb_led) { void led_set_kb(uint8_t usb_led) {
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
led_set_user(usb_led); led_set_user(usb_led);
} }
*/ */

View File

@ -13,11 +13,12 @@
* You should have received a copy of the GNU General Public License * You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#pragma once #pragma once
#include "quantum.h" #include "quantum.h"
/* This a shortcut to help you visually see your layout. /* This is a shortcut to help you visually see your layout.
* *
* The first section contains all of the arguments representing the physical * The first section contains all of the arguments representing the physical
* layout of the board and position of the keys. * layout of the board and position of the keys.
@ -27,9 +28,9 @@
*/ */
#define LAYOUT( \ #define LAYOUT( \
k00, k01, k02, \ k00, k01, k02, \
k10, k11 \ k10, k12 \
) \ ) \
{ \ { \
{ k00, k01, k02 }, \ { k00, k01, k02 }, \
{ k10, KC_NO, k11 }, \ { k10, KC_NO, k12 } \
} }

View File

@ -15,6 +15,12 @@
*/ */
#include QMK_KEYBOARD_H #include QMK_KEYBOARD_H
// Defines names for use in layer keycodes and the keymap
enum layer_names {
_BASE,
_FN
};
// Defines the keycodes used by our macros in process_record_user // Defines the keycodes used by our macros in process_record_user
enum custom_keycodes { enum custom_keycodes {
QMKBEST = SAFE_RANGE, QMKBEST = SAFE_RANGE,
@ -22,10 +28,15 @@ enum custom_keycodes {
}; };
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT( /* Base */ /* Base */
KC_A, KC_1, KC_H, [_BASE] = LAYOUT(
KC_TAB, KC_SPC KC_A, KC_1, MO(_FN),
KC_TAB, KC_SPC
), ),
[_FN] = LAYOUT(
QMKBEST, QMKURL, _______,
RESET, XXXXXXX
)
}; };
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
@ -50,6 +61,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return true; return true;
} }
/*
void matrix_init_user(void) { void matrix_init_user(void) {
} }
@ -61,3 +73,4 @@ void matrix_scan_user(void) {
void led_set_user(uint8_t usb_led) { void led_set_user(uint8_t usb_led) {
} }
*/

View File

@ -1,52 +0,0 @@
/* Copyright %YEAR% %YOUR_NAME%
*
* 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 "%KEYBOARD%.h"
// Optional override functions below.
// You can leave any or all of these undefined.
// These are only required if you want to perform custom actions.
/*
void matrix_init_kb(void) {
// put your keyboard start-up code here
// runs once when the firmware starts up
matrix_init_user();
}
void matrix_scan_kb(void) {
// put your looping keyboard code here
// runs every cycle (a lot)
matrix_scan_user();
}
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
// put your per-action keyboard code here
// runs for every action, just before processing by the firmware
return process_record_user(keycode, record);
}
void led_set_kb(uint8_t usb_led) {
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
led_set_user(usb_led);
}
*/

View File

@ -4,9 +4,9 @@
A short description of the keyboard/project A short description of the keyboard/project
Keyboard Maintainer: [%YOUR_NAME%](https://github.com/yourusername) * Keyboard Maintainer: [%YOUR_NAME%](https://github.com/yourusername)
Hardware Supported: The PCBs, controllers supported * Hardware Supported: The PCBs, controllers supported
Hardware Availability: links to where you can find this hardware * Hardware Availability: links to where you can find this hardware
Make example for this keyboard (after setting up your build environment): Make example for this keyboard (after setting up your build environment):

View File

@ -11,14 +11,16 @@ MCU = atmega32a
# ATmega328P USBasp # ATmega328P USBasp
BOOTLOADER = bootloadHID BOOTLOADER = bootloadHID
# build options # Build Options
BOOTMAGIC_ENABLE = no # change yes to no to disable
MOUSEKEY_ENABLE = no #
EXTRAKEY_ENABLE = yes BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
CONSOLE_ENABLE = yes MOUSEKEY_ENABLE = no # Mouse keys
COMMAND_ENABLE = yes EXTRAKEY_ENABLE = yes # Audio control and System control
BACKLIGHT_ENABLE = no CONSOLE_ENABLE = yes # Console for debug
RGBLIGHT_ENABLE = yes COMMAND_ENABLE = yes # Commands for debug and configuration
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
WS2812_DRIVER = i2c WS2812_DRIVER = i2c
OPT_DEFS = -DDEBUG_LEVEL=0 OPT_DEFS = -DDEBUG_LEVEL=0

View File

@ -86,6 +86,7 @@ replace_year_placeholders() {
replace_keyboard_placeholders() { replace_keyboard_placeholders() {
local replace_keyboard_filenames=( local replace_keyboard_filenames=(
"${keyboard_dir}/config.h" "${keyboard_dir}/config.h"
"${keyboard_dir}/info.json"
"${keyboard_dir}/readme.md" "${keyboard_dir}/readme.md"
"${keyboard_dir}/${keyboard_name}.c" "${keyboard_dir}/${keyboard_name}.c"
"${keyboard_dir}/keymaps/default/readme.md" "${keyboard_dir}/keymaps/default/readme.md"
@ -97,6 +98,7 @@ replace_keyboard_placeholders() {
replace_name_placeholders() { replace_name_placeholders() {
local replace_name_filenames=( local replace_name_filenames=(
"${keyboard_dir}/config.h" "${keyboard_dir}/config.h"
"${keyboard_dir}/info.json"
"${keyboard_dir}/readme.md" "${keyboard_dir}/readme.md"
"${keyboard_dir}/${keyboard_name}.c" "${keyboard_dir}/${keyboard_name}.c"
"${keyboard_dir}/${keyboard_name}.h" "${keyboard_dir}/${keyboard_name}.h"