From ed1bf3afa25d7e7674df7e8618dfaf243de3058b Mon Sep 17 00:00:00 2001 From: fauxpark Date: Thu, 10 Oct 2019 21:48:37 +1100 Subject: [PATCH] Prevent clang-format messing up placeholder tokens within keyboard templates (#6790) * Use .template file extension for keyboard template files * Filter out .template files completely before passing to clang-format * Undo file extension stuff; just ignore quantum/template dir --- quantum/template/avr/config.h | 10 ++++---- .../template/avr/{template.c => keyboard.c} | 0 .../template/base/{template.h => keyboard.h} | 10 ++++++-- .../template/base/keymaps/default/keymap.c | 23 ++++++++++++++----- .../template/base/keymaps/default/readme.md | 2 +- quantum/template/ps2avrgb/config.h | 11 ++++----- .../ps2avrgb/{template.c => keyboard.c} | 0 util/new_keyboard.sh | 4 ++-- util/travis_compiled_push.sh | 2 +- 9 files changed, 37 insertions(+), 25 deletions(-) rename quantum/template/avr/{template.c => keyboard.c} (100%) rename quantum/template/base/{template.h => keyboard.h} (89%) rename quantum/template/ps2avrgb/{template.c => keyboard.c} (100%) diff --git a/quantum/template/avr/config.h b/quantum/template/avr/config.h index 713d6be3a..304a54ae5 100644 --- a/quantum/template/avr/config.h +++ b/quantum/template/avr/config.h @@ -23,8 +23,8 @@ along with this program. If not, see . #define VENDOR_ID 0xFEED #define PRODUCT_ID 0x0000 #define DEVICE_VER 0x0001 -#define MANUFACTURER % YOUR_NAME % -#define PRODUCT % KEYBOARD % +#define MANUFACTURER %YOUR_NAME% +#define PRODUCT %KEYBOARD% #define DESCRIPTION A custom keyboard /* key matrix size */ @@ -41,10 +41,8 @@ along with this program. If not, see . * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) * */ -#define MATRIX_ROW_PINS \ - { D0, D5 } -#define MATRIX_COL_PINS \ - { F1, F0, B0 } +#define MATRIX_ROW_PINS { D0, D5 } +#define MATRIX_COL_PINS { F1, F0, B0 } #define UNUSED_PINS /* COL2ROW, ROW2COL*/ diff --git a/quantum/template/avr/template.c b/quantum/template/avr/keyboard.c similarity index 100% rename from quantum/template/avr/template.c rename to quantum/template/avr/keyboard.c diff --git a/quantum/template/base/template.h b/quantum/template/base/keyboard.h similarity index 89% rename from quantum/template/base/template.h rename to quantum/template/base/keyboard.h index 595da73c6..2e531b1fd 100644 --- a/quantum/template/base/template.h +++ b/quantum/template/base/keyboard.h @@ -25,5 +25,11 @@ * The second converts the arguments into a two-dimensional array which * represents the switch matrix. */ -#define LAYOUT(k00, k01, k02, k10, k11) \ - { {k00, k01, k02}, {k10, KC_NO, k11}, } +#define LAYOUT( \ + k00, k01, k02, \ + k10, k11 \ +) \ +{ \ + { k00, k01, k02 }, \ + { k10, KC_NO, k11 }, \ +} diff --git a/quantum/template/base/keymaps/default/keymap.c b/quantum/template/base/keymaps/default/keymap.c index 308cb92a7..3508055b7 100644 --- a/quantum/template/base/keymaps/default/keymap.c +++ b/quantum/template/base/keymaps/default/keymap.c @@ -16,11 +16,16 @@ #include QMK_KEYBOARD_H // Defines the keycodes used by our macros in process_record_user -enum custom_keycodes { QMKBEST = SAFE_RANGE, QMKURL }; +enum custom_keycodes { + QMKBEST = SAFE_RANGE, + QMKURL +}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT(/* Base */ - KC_A, KC_1, KC_H, KC_TAB, KC_SPC), + [0] = LAYOUT( /* Base */ + KC_A, KC_1, KC_H, + KC_TAB, KC_SPC + ), }; bool process_record_user(uint16_t keycode, keyrecord_t *record) { @@ -45,8 +50,14 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return true; } -void matrix_init_user(void) {} +void matrix_init_user(void) { -void matrix_scan_user(void) {} +} -void led_set_user(uint8_t usb_led) {} +void matrix_scan_user(void) { + +} + +void led_set_user(uint8_t usb_led) { + +} diff --git a/quantum/template/base/keymaps/default/readme.md b/quantum/template/base/keymaps/default/readme.md index 21aa663d5..e052ed80f 100644 --- a/quantum/template/base/keymaps/default/readme.md +++ b/quantum/template/base/keymaps/default/readme.md @@ -1 +1 @@ -# The default keymap for %KEYBOARD% \ No newline at end of file +# The default keymap for %KEYBOARD% diff --git a/quantum/template/ps2avrgb/config.h b/quantum/template/ps2avrgb/config.h index a780a10af..f6d7c25e0 100644 --- a/quantum/template/ps2avrgb/config.h +++ b/quantum/template/ps2avrgb/config.h @@ -23,7 +23,7 @@ along with this program. If not, see . #define PRODUCT_ID 0x422D #define DEVICE_VER 0x0001 #define MANUFACTURER You -#define PRODUCT % KEYBOARD % +#define PRODUCT %KEYBOARD% #define DESCRIPTION A custom keyboard #define RGBLED_NUM 16 @@ -31,13 +31,10 @@ along with this program. If not, see . #define MATRIX_ROWS 8 #define MATRIX_COLS 11 -#define MATRIX_ROW_PINS \ - { B0, B1, B2, B3, B4, B5, B6, B7 } -#define MATRIX_COL_PINS \ - { A0, A1, A2, A3, A4, A5, A6, A7, C7, C6, C5 } +#define MATRIX_ROW_PINS { B0, B1, B2, B3, B4, B5, B6, B7 } +#define MATRIX_COL_PINS { A0, A1, A2, A3, A4, A5, A6, A7, C7, C6, C5 } // #define MATRIX_COL_PINS { A0, A1, A2, A3, A4, A5, A6, A7, C7, C6, C5, C4, C3, C2, C1, C0, D7 } -#define UNUSED_PINS \ - {} +#define UNUSED_PINS {} #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 5 diff --git a/quantum/template/ps2avrgb/template.c b/quantum/template/ps2avrgb/keyboard.c similarity index 100% rename from quantum/template/ps2avrgb/template.c rename to quantum/template/ps2avrgb/keyboard.c diff --git a/util/new_keyboard.sh b/util/new_keyboard.sh index 35d89e402..fe7c1a829 100755 --- a/util/new_keyboard.sh +++ b/util/new_keyboard.sh @@ -41,8 +41,8 @@ copy_templates() { echo " done" echo -n "Renaming keyboard files..." - mv "${keyboard_dir}/template.c" "${keyboard_dir}/${keyboard_name}.c" - mv "${keyboard_dir}/template.h" "${keyboard_dir}/${keyboard_name}.h" + mv "${keyboard_dir}/keyboard.c" "${keyboard_dir}/${keyboard_name}.c" + mv "${keyboard_dir}/keyboard.h" "${keyboard_dir}/${keyboard_name}.h" echo " done" } diff --git a/util/travis_compiled_push.sh b/util/travis_compiled_push.sh index 4737d693b..8ca65f21a 100755 --- a/util/travis_compiled_push.sh +++ b/util/travis_compiled_push.sh @@ -12,7 +12,7 @@ if [[ "$TRAVIS_BRANCH" == "master" && "$TRAVIS_PULL_REQUEST" == "false" ]] ; the # fix formatting git checkout master git diff --diff-filter=AM --name-only -n 1 -z ${TRAVIS_COMMIT_RANGE} | xargs -0 dos2unix -git diff --diff-filter=AM --name-only -n 1 -z ${TRAVIS_COMMIT_RANGE} | grep -e '^drivers' -e '^quantum' -e '^tests' -e '^tmk_core' | xargs -0 clang-format +git diff --diff-filter=AM --name-only -n 1 -z ${TRAVIS_COMMIT_RANGE} | grep -e '^drivers' -e '^quantum' -e '^tests' -e '^tmk_core' | grep -v 'quantum/template' | xargs -0 clang-format git diff --diff-filter=AM --name-only -n 1 -z ${TRAVIS_COMMIT_RANGE} | xargs -0 git add git commit -m "format code according to conventions [skip ci]" && git push git@github.com:qmk/qmk_firmware.git master