summaryrefslogtreecommitdiff
path: root/lib/python/qmk/cli
AgeCommit message (Collapse)Author
2020-11-16CLI: Udev related fixes and improvements (#10736)Erovia
2020-11-10CI: Add docs build and deploy workflow (#7448)Joel Challis
* Add docs build and deploy workflow * Remove old travis docs workflow * update to cli command * Tidy up for review * formatting * Update to pass style checks * Update lib/python/qmk/cli/docs.py Co-Authored-By: skullydazed <skullydazed@users.noreply.github.com> * Review comments - build->generate, use of verbose * Add docs * Update to match recent actions * Run within base_container * Convert cli to generate-docs * Convert cli to generate-docs - restore old file * Convert cli to generate-docs * Update docs Co-authored-by: skullydazed <skullydazed@users.noreply.github.com>
2020-11-07New command: qmk lint (#10761)Zach White
* 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-04CLI: Add `qmk clean` (#10785)Ryan
2020-11-02`qmk info`: Add `--ascii` flag (#10793)Ryan
* `qmk info`: Add `--ascii` flag * Fix typo * Force ASCII for Windows/MSYS2 * Make it gooder * Remove redundant windows check * ...And this too * Make pytest work on Windows
2020-10-25Generate api data on each push (#10609)Zach White
* 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-20Fix CLI warning for Massdrop udev rule (#10691)Ryan
2020-10-17Improve ANSI support and --no-color (#10537)Zach White
* 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-06[CLI] Add c2json (#8817)Erovia
* Basic keymap parsing finally works * Add 'keymap.json' creation to the qmk.keymap module * Add tests and fix formatting * Fix/exclude flake8 errors * Convert keymap.c to valid keymap.json * Fix some errors * Add tests * Finalize keymap.json creation, add json template * Add docs * Move pygments to the standard requirements * Add support for nameless layers, fix tests * Fix things after rebase * Add missing 'keymap' value. * Fix missing layer numbers from advanced keycodes Buckwich noticed that if the advanced keycode / layer toggling key contains a number, it goes missing. Now we properly handle them. Thx for noticing! * Apply suggestions from code review * fixup tests Co-authored-by: Zach White <skullydazed@drpepper.org> Co-authored-by: skullY <skullydazed@gmail.com>
2020-10-06CLI: update subcommands to use return instead of exit() (#10323)Ryan
2020-09-27Consolidate udev rules into a single file (#9693)Ryan
* Consolidate udev rules into a single file * Update rules in doctor.py * Simplify doctor rule checking * Fix errors * Add TMK "FEED" VID to list of deprecated udev rules * A comma would be nice * Split rules back up into bootloaders * Link to docs page in "missing" case * Add Pololu VID * Be more specific about Caterina devices, and add LilyPad PID
2020-09-24CLI/Doctor: Print QMK_HOME (#10398)Ryan
2020-09-19Be more specific about Caterina devices, and add LilyPad PIDfauxpark
2020-09-19Add Pololu VIDfauxpark
2020-09-19Link to docs page in "missing" casefauxpark
2020-09-19Split rules back up into bootloadersfauxpark
2020-09-19A comma would be nicefauxpark
2020-09-19Add TMK "FEED" VID to list of deprecated udev rulesfauxpark
2020-09-19Fix errorsfauxpark
2020-09-19Simplify doctor rule checkingfauxpark
2020-09-19Update rules in doctor.pyfauxpark
2020-08-29Add `st-flash` flash target (#9964)Sergey Vlasov
* Add `st-flash` flash target Add support for flashing the firmware via the `st-flash` utility from the STLink Tools package (https://github.com/stlink-org/stlink). * Add `st-flash` to the `qmk flash -b` output
2020-08-29Initial work for consolidation of ChibiOS platform files (#8327)Nick Brassel
* Initial work for consolidation of board files and default ChibiOS configs. * Migrate F401/F411 black pills for testing. * Add early init bootloader jump flag. * Add support for I2C in order to use i2c_scanner keymap. * Add F401/F411 HSE bypass to get things booting. * Exempt "hooked" ChibiOS conf files from updater script. * Fix up ordering for bootloader_defs file check. * Match previous $(KEYBOARD_PATHS) value for Proton-C, updated for all board configs.
2020-06-18Parse version better in `qmk doctor` GCC version checks (#9324)Ryan
2020-05-27Fix running qmk info without any arguments (#9218)Zach White
2020-05-26Fix the path for generated keymaps (#9213)Zach White
2020-05-26[CLI] Add a subcommand for getting information about a keyboard (#8666)Zach White
You can now use `qmk info` to get information about keyboards and keymaps. Co-authored-by: Erovia <Erovia@users.noreply.github.com>
2020-05-26CLI: fix `json2c` subcommand and add/fix tests (#9206)Erovia
Co-authored-by: Zach White <skullydazed@users.noreply.github.com>
2020-05-21CLI: Rework submodule checking (#9162)Erovia
2020-05-21Fix submodule check (#9155)Erovia
2020-05-15CLI: Tune doctor's udev rule checking to match #8750Erovia
2020-04-26kle2json: fix invocation errorKeenan Brock
resolves an issue while finding the file path TypeError: unsupported operand type(s) for +: 'PosixPath' and 'str'
2020-04-18Move everything to Python 3.6 (#8835)skullydazed
2020-04-14CLI: Fix doctor error when can't run `bin/qmk --version`. (#8796)Pete Johanson
2020-04-08Don't hide for devs...Erovia
2020-04-08Rebase on master, hide some other subcommandsErovia
The list of hidden subcommands were approved by @skullydazed ;) Currently hidden if 'user.developer' is not True: - cformat - docs - kle2json - pyformat - pytest
2020-04-08CLI: Add development mode supportErovia
Hide development specific options and don't require dev modules unless `user.developer` is set to `True`.
2020-04-05Doctor: Add avrdude/dfu-util/dfu-programmer version printing (#8678)Ryan
* Doctor: Add avrdude/dfu-util/dfu-programmer version printing * Extra newline * Iterate through version checking functions
2020-04-04minor tweaksskullY
2020-04-04Fix saving output from avrdude and dfu-programmerRoss Baquir
2020-04-04Use version_arg in ESSENTIAL_BINARIES dictRoss Baquir
2020-04-04Fixes #8541 by getting version from -dumpversion then --version as fallbackRoss Baquir
2020-03-29CLI: More MSYS2 fixes (#8577)Erovia
* CLI: More MSYS2 fixes Now I can fully setup and work with qmk_firmware on an MSYS2 installation without any errors or exceptions. * Apply suggestions from code review Co-Authored-By: skullydazed <skullydazed@users.noreply.github.com> * Some improvements * Remove unnecessary import * Remove slow, unused code Getting the version from GIT was slow on both Windows and Docker. Until we find a better, faster way, this is removed. * remove unused imports * Implement @vomindoraan's suggestions * refine how we pick the shell to use * Apply @fauxpark's suggestions fauxpark investigated the topic of shells in MSYS2 a bit and we come to the conclusion that the safest bet was to just use the user's shell. Anything more just opens up more edge-cases than it solves. Co-Authored-By: Ryan <fauxpark@gmail.com> * Use `platform_id` in doctor This will bring it in line with the new code. Co-authored-by: skullydazed <skullydazed@users.noreply.github.com> Co-authored-by: skullY <skullydazed@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2020-03-18CLI: Hide json-keymap subcommand, as it's been deprecated.Erovia
2020-03-13Add decorators for determining keyboard and keymap based on current ↵skullydazed
directory (#8191) * Use pathlib everywhere we can * Improvements based on @erovia's feedback * rework qmk compile and qmk flash to use pathlib * style * Remove the subcommand_name argument from find_keyboard_keymap() * add experimental decorators * Create decorators for finding keyboard and keymap based on current directory. Decorators were inspired by @Erovia's brilliant work on the proof of concept.
2020-03-12use qmk.path.normpath to locate the output file.skullY
2020-03-10Rename qmk json-keymap to qmk json2c (#8372)skullydazed
2020-03-08Add gcc version detection to qmk doctor (#8338)skullydazed
2020-02-26Fixed OS detection such that OSX doesn't take over the world (#8248)Mikkel Jeppesen
2020-02-22New functionality for cformat (#7893)Akaash Suresh
Fixing complexity remove lambda PR review fixes #1 Removing unneccesary string substitution Handle -a and specified files Complexity rewrite, use pathlib