Commit Graph
100 Commits
Author SHA1 Message Date
Zach WhiteandGitHub 588bcdc8ca Add support for tab completion (#12411)
* Add support for tab completion

* make flake8 happy

* Add documentation
2021-04-14 19:00:22 -07:00
Zach White 41f649c9a9 fix line endings 2021-04-03 08:27:46 -07:00
Zach WhiteandGitHub 5dc7951dc0 add utf-8 encoding to the open() call (#12388) 2021-03-27 08:55:47 -07:00
Zach WhiteandGitHub 3e60997edb Add a qmk format-json command that will format JSON files (#12372)
* Add a command to format json files

* change to work after rebase

* add test for qmk format-json

* add documentation for qmk format-json

* Update lib/python/qmk/cli/format/json.py
2021-03-25 22:38:10 +11:00
Zach WhiteandGitHub 299008be36 Add support for qmk_configurator style aliases (#11954)
* Add support for qmk_configurator style aliases

* add the keyboard aliases to the api data

* add support for a keyboard metadata file

* make flake8 happy
2021-03-24 09:26:38 -07:00
Zach WhiteandGitHub e1a7027fe8 use layout aliases when processing info.json (#12333) 2021-03-22 18:58:07 -07:00
Zach WhiteandZach White 6d8d20774f improve detection of community layout support 2021-03-09 08:04:07 -08:00
Zach White 86e6be342c minor change to trigger api update 2021-03-07 08:14:43 -08:00
Zach White 0763269ec5 fix CI job: api-data->api_data 2021-03-06 21:26:07 -08:00
Zach WhiteandZach White 08e512a273 upload api data to spaces 2021-03-06 21:17:55 -08:00
Zach WhiteandGitHub 1cbf1c681a Enforce minimum versions for jsonschema and MILC (#12141) 2021-03-06 15:56:45 -08:00
Zach WhiteandZach White 58e733b5a0 remove keyboard_folder from info.json 2021-02-27 16:17:12 -08:00
Zach WhiteandGitHub 0828d0f5c7 Fix compile errors (#12048)
* fix compile errors

* fix broken json files
2021-02-27 23:25:41 +00:00
Zach WhiteandGitHub 1581ea48dc Fix develop (#12039)
Fixes file encoding errors on Windows, and layouts not correctly merging into info.json.

* force utf8 encoding

* correctly merge layouts and layout aliases

* show what aliases point to
2021-02-27 12:00:50 -08:00
Zach WhiteandZach White 23ef327e11 make LAYOUT parsing more robust 2021-02-24 16:47:38 -08:00
Zach WhiteandGitHub cd336b2b54 bump to python 3.7 (#11408) 2021-02-13 10:26:45 -08:00
Zach WhiteandGitHub 448cc1acd5 remove deprecated qmk json-keymap (#11823) 2021-02-08 11:03:08 +00:00
Zach WhiteandGitHub ef6329af7c Create a system to map between info.json and config.h/rules.mk (#11548)
* generate rules.mk from a json mapping

* generate rules.mk from a json mapping

* support for config.h from json maps

* improve the mapping system

* document the mapping system

* move data/maps to data/mappings

* fix flake8 errors

* fixup LED_MATRIX_DRIVER

* remove product and description from the vision_division keymap level

* reduce the complexity of generate-rules-mk

* add tests for the generate commands

* fix qmk doctor when submodules are not clean
2021-01-31 12:46:00 -08:00
Zach White 3af97ef6a2 Merge remote-tracking branch 'origin/master' into develop 2021-01-30 13:15:13 -08:00
Zach WhiteandZach White 051c0774f8 undef TAPPING_TERM in users/hvp/hvp.h 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 424d59bc7e rename callum's custom keycode that conflicts with a LUFA define 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 2f79cf9247 add missing _MACRO to users/brandonschlack/brandonschlack.h 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 361a2cf8a5 check for BACKLIGHT_ENABLE so this works on all keyboards 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White c9b3619299 change LAYOUT_planck_grid to LAYOUT_ortho_4x12 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White e5ecdd5242 bring the bocaj keymap inline with LAYOUT_ortho_4x12 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 0171e67494 bring the xyverz keymap inline with LAYOUT_66_ansi 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White e0769ea71d strip fn_actions 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 5ba21060cb remove conflicting NKRO_ENABLE flag 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 1ed9c53816 add missing ADJUST key 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 04d6d25ec3 make the tetris keymap fit 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 404bcc961c fix clueboard/66:magicmonty to bring hue under the 255 limit 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White c8edd6ec9e fix chimera_ortho:gordon so it compiles 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 13e4bd31d7 enable bluetooth on atreus:clash to fix compile error 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White cd53947d86 enable LTO on atreus:ibnuda to bring it below the threshold 2021-01-30 13:11:33 -08:00
Zach WhiteandZach White 915d757eb2 fix atomic:pvc so it compiles 2021-01-30 13:11:33 -08:00
d02c4c5241 Add a <FEATURE>_SUPPORTED flag (#9058)
* Initial attempt at allowing keyboards to indicate what features they do not support

* try to use a for loop instead

* Update disable_features.mk

Co-authored-by: Drashna Jaelre <drashna@live.com>

* add a few more features

* remove my test fixture

* disable things that make all:all suggested"

Co-authored-by: Zach White <skullydazed@users.noreply.github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2021-01-30 13:08:58 -08:00
Zach WhiteandGitHub 111eb8990d Fix QMK_BUILDDATE (#11641) 2021-01-20 20:38:18 +00:00
Zach WhiteandGitHub da40242dbc Generate version.h when compiling json files (#11581)
* generate version.h when compiling json files

* make flake8 happy

* fix formatting and verbose

* quiet up the compile output
2021-01-17 17:33:29 +00:00
Zach White 5abe666749 Merge remote-tracking branch 'origin/master' into develop 2021-01-16 15:21:06 -08:00
Zach WhiteandGitHub d9785ec313 Improve the compile and flash subcommands (#11334)
* add support for --clean to compile and flash

* compile standalone JSON keymaps without polluting the tree

* Add support for passing environment vars to make

* make flake8 happy

* document changes to qmk compile and flash

* add -e support to json export compiling

* Fix python 3.6

* honor $MAKE

* add support for parallel builds
2021-01-16 15:13:04 -08:00
Zach WhiteandZach White f4cf0d2f28 remove duplicate manufacturer 2021-01-13 16:03:52 -08:00
Zach WhiteandZach White 3c8da5eba8 move the info.json rules above userspace 2021-01-13 16:01:21 -08:00
Zach WhiteandGitHub 6368a5697d Exclude more keyboards from CI (#11436)
* exclude all of handwired

* exclude more keyboards from CI
2021-01-13 08:12:28 -08:00
a15c9057a1 Document how to add data driven configurations (#11502)
* describe how data driven configuration works

* Apply suggestions from code review

Co-authored-by: ridingqwerty <george.g.koenig@gmail.com>
Co-authored-by: Erovia <Erovia@users.noreply.github.com>

Co-authored-by: ridingqwerty <george.g.koenig@gmail.com>
Co-authored-by: Erovia <Erovia@users.noreply.github.com>
2021-01-10 20:47:58 -08:00
Zach WhiteandGitHub eaa9106ec7 Add support for specifying BOARD in info.json (#11492)
* add support for specifying BOARD in info.json

* move BOARD from rules.mk to info.json for clueboard

* fix keyboards that do not require board

* remove out of compliance values
2021-01-09 20:18:47 -08:00
962bc8d9dd Use the schema to eliminate custom code (#11108)
* use the schema to eliminate custom code

* Update docs/reference_info_json.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* make flake8 happy

* bugfix

* do not overwrite make vars from json

Co-authored-by: Ryan <fauxpark@gmail.com>
2021-01-09 13:34:14 -08:00
Zach White 667161620a Merge remote-tracking branch 'origin/master' into develop 2021-01-08 11:21:27 -08:00
Zach White e2c7f89347 typo fix 2021-01-08 08:46:51 -08:00
Zach WhiteandZach White 58fcdf8c07 remove extraneous comment 2021-01-08 08:40:23 -08:00
Zach WhiteandZach White 959f566118 comment out a non-standard DIODE_DIRECTION 2021-01-08 08:40:23 -08:00
Zach WhiteandZach White 7e78699e79 use a custom name for custom pins 2021-01-08 08:40:23 -08:00
Zach WhiteandZach White 30331b383f fix bugs triggered by certain boards 2021-01-08 08:40:23 -08:00
Zach WhiteandZach White a828a82d59 remove the python dep update 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White a1007627e4 fix travis 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White 4394fc35ea change matrix/m20add to use non-standard names for non-standard pins 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White 82007aa03a Revert "loosen up the schema to allow any pin format"
This reverts commit e41762be64c170f42ab3f8aa6b7e3078e5895e92.
2021-01-07 21:21:12 -08:00
Zach WhiteandZach White e2e793c1c3 Revert "change invalid pin from error to warning"
This reverts commit 68da9cd19658071f0c2f22e97956303281703176.
2021-01-07 21:21:12 -08:00
Zach WhiteandZach White ed19198c78 loosen up the schema to allow any pin format 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White b44532aa3d change invalid pin from error to warning 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White 9a178f6826 fix rgblight properties 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White 56ef80216a make flake8 happy 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White 2a67ff690e clean up generate-api errors 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White b2c26f7cdd get qmk generate-api into a good state 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White 266a85eda0 add missing schemas 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White 0d3aca062e cleanup clueboard based on latest validation work 2021-01-07 21:21:12 -08:00
Zach WhiteandZach White ededff8556 validate keyboard data with jsonschema 2021-01-07 21:21:12 -08:00
Zach WhiteandGitHub f9269035fe Fix compiling treadstone32/rev1 (#11447)
* fix compiling treadstone32/rev1

* move most options back to top level rules.mk
2021-01-06 00:44:40 +00:00
Zach WhiteandZach White 5846445f48 Fix compiling squiggle/rev1 2021-01-05 13:18:09 -08:00
Zach WhiteandZach White 34513b4665 enable LTO to bring firmware size down 2021-01-05 13:13:47 -08:00
Zach White cf2f13fc77 Merge remote-tracking branch 'origin/master' into develop 2021-01-05 11:04:56 -08:00
Zach WhiteandZach White 6daa204363 fix keyboards with apostrophes in their names 2021-01-03 17:55:54 -08:00
Zach WhiteandZach White 5b2feecdf3 fix lizard_trick/tenkey_plusplus/info.json 2021-01-03 17:55:54 -08:00
Zach WhiteandZach White ac5a1ccffb fix clueboards 2021-01-03 17:55:54 -08:00
Zach WhiteandGitHub 11bd98f684 Fix broken keyboards (#11412)
* Fix a couple errors

* add a dependency for the generated headers
2021-01-03 13:08:17 +11:00
Zach WhiteandGitHub f27d8d9448 Fix compiling on develop (#11409) 2021-01-02 21:05:56 +01:00
Zach WhiteandGitHub c07543133a Return the make exit code for qmk compile and flash (#11402) 2021-01-02 17:27:35 +00:00
47b9b11009 Configure keyboard matrix from info.json (#10817)
* Make parameters from info.json available to the build system

* move all clueboard settings to info.json

* code formatting

* make flake8 happy

* make flake8 happy

* make qmk lint happy

* Add support for specifying led indicators in json

* move led indicators to the clueboard info.json

* Apply suggestions from code review

Co-authored-by: Erovia <Erovia@users.noreply.github.com>

* add missing docstring

Co-authored-by: Erovia <Erovia@users.noreply.github.com>
2020-12-30 10:27:37 -08:00
Zach WhiteandGitHub 5edfdeff50 remove some old and unused code from Makefile (#11336) 2020-12-29 19:42:09 +00:00
Zach WhiteandGitHub 55843480ff Fix compile issues from the error page (#11314)
* fix abacus so it works with configurator

* create the keymap path if it doesn't exist

* bpiphany/unloved_bastard: remove the nested macros, move default keymap to json

* readd the unloved_bastard default keymap

* fix clueboard/card

* fixup handwired/2x5keypad

* fixup hub16

* matrix/noah: remove the broken matrix print code to fix compilation

* reinstate matrix_print with the right include

* Revert "create the keymap path if it doesn't exist"

This reverts commit af732776a539e8c6e2edf2e54f4d7f5ffa65b3a2.
2020-12-28 20:06:07 -08:00
Zach WhiteandGitHub c0dcee96a8 Initial list of keyboards to exclude from CI (#11213) 2020-12-21 15:38:39 +01:00
Zach WhiteandGitHub 624cafbfd2 Change keyboard json format to bring it inline with the current api (#11231) 2020-12-19 19:46:30 +01:00
Zach WhiteandGitHub bded5f473c simplify qmk doctor to make room for #11208 (#11242) 2020-12-18 16:42:30 -08:00
Zach WhiteandGitHub 03cbee8637 Add the ability to exclude keyboards from travis builds (#11178)
* add the ability to exclude keyboards from travis builds

* add filtering to make all:

* only skip keyboards during make all:

* working implementation

* forego a CI_KEYBOARDS variable

* optimize the startup by only listing keyboards once

* add sort -u to all list_keyboard invocations

* move the if else if tree back to 1 level
2020-12-18 12:17:53 -08:00
Zach WhiteandGitHub 8724a70c4c Reduce travis load by replacing an exclusive grep with an inclusive grep (#10964)
* add -n to avoid compiling

* switch to an include rather than exclude strategy
2020-11-30 11:19:44 -08:00
Zach WhiteandZach White c731628946 identify the qmk-bot 2020-11-22 08:07:45 -08:00
Zach WhiteandGitHub 44d1b2e717 push the API data for develop as well (#10852) 2020-11-21 20:06:33 +00:00
Zach WhiteandGitHub 8ddbb19df1 Rebase develop after a master push (#10812)
* rebase develop after a master push

* limit this to qmk/qmk_firmware

* change to a merge strategy

* GITHUB_TOKEN isn't needed

* check for .locked in develop

* break up into more steps
2020-11-21 11:48:13 -08:00
Zach WhiteandGitHub 683ba8b8d4 Improve the QMK Lint workflow (#10909)
* properly set the exit_code

* handle the case where exit_code is greater than 255
2020-11-10 15:21:59 +00:00
Zach WhiteandGitHub bd1c048a76 Add qmk info -l to show the layouts too (#10882) 2020-11-07 19:36:47 +00:00
4d33d72975 New command: qmk lint (#10761)
* Basic qmk lint command

* check for keymap readme

* change the workflow from qmk info to qmk lint

* add a strict mode

* parsing -> parse

* document qmk lint

* small info logging cleanup

* Apply suggestions from code review

Co-authored-by: Ryan <fauxpark@gmail.com>

* honor --strict in more places

* change the job name to lint

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-11-07 09:56:08 -08:00
Zach WhiteandZach White 6b1ae7e6aa add rsync to the api update process 2020-10-27 10:48:55 -07:00
0c42f91f4c Generate api data on each push (#10609)
* add new qmk generate-api command, to generate a complete set of API data.

* Generate api data and push it to the keyboard repo

* fix typo

* Apply suggestions from code review

Co-authored-by: Joel Challis <git@zvecr.com>

* fixup api workflow

* remove file-changes-action

* use a more mainstream github action

* fix yaml error

* Apply suggestions from code review

Co-authored-by: Erovia <Erovia@users.noreply.github.com>

* more uniform date handling

* make flake8 happy

* Update lib/python/qmk/decorators.py

Co-authored-by: Erovia <Erovia@users.noreply.github.com>

Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Erovia <Erovia@users.noreply.github.com>
2020-10-25 14:48:44 -07:00
Zach WhiteandGitHub 445cd95d17 Improve ANSI support and --no-color (#10537)
* Improve ANSI support and --no-color

* tweak when levelname gets stripped of ansi

* sync with latest milc

* make questions work with both milc versions

* pyformat
2020-10-17 21:01:11 -07:00
Zach WhiteandJames Young bdd8d2679b Allow joysticks to be used without analog pins (#10169)
* Allow joysticks to be used without analog pins

* change how analog/digital joysticks are specified
2020-08-29 14:30:02 -07:00
skullYandZach White fcf150bd82 Streamline the macos install process 2020-05-18 22:46:33 -07:00
skullY 6f30b402a2 Revert "Fix conflicting types for 'tfp_printf' (#8269)"
This reverts commit e17b55e33a.
2020-05-04 09:25:44 -07:00
skullYandskullydazed b4ef72423e Correctly handle json keymaps with ANY() 2020-04-07 01:34:21 -07:00
skullYandskullydazed 2f15cb2126 minor tweaks 2020-04-04 12:43:13 -07:00
skullYandskullydazed 799acb2802 use qmk.path.normpath to locate the output file. 2020-03-12 13:48:17 -07:00
skullYandskullydazed 961477c791 make sure all our redirects are in order 2020-03-05 16:00:10 -08:00