summaryrefslogtreecommitdiffstats
path: root/lib/python/qmk/cli
Commit message (Collapse)AuthorAgeFilesLines
* [CLI] Add a subcommand for getting information about a keyboard (#8666)Zach White2020-05-264-15/+155
| | | | | You can now use `qmk info` to get information about keyboards and keymaps. Co-authored-by: Erovia <Erovia@users.noreply.github.com>
* CLI: fix `json2c` subcommand and add/fix tests (#9206)Erovia2020-05-261-6/+6
| | | Co-authored-by: Zach White <skullydazed@users.noreply.github.com>
* CLI: Rework submodule checking (#9162)Erovia2020-05-211-11/+4
|
* Fix submodule check (#9155)Erovia2020-05-211-1/+4
|
* CLI: Tune doctor's udev rule checking to match #8750Erovia2020-05-151-9/+41
|
* kle2json: fix invocation errorKeenan Brock2020-04-261-1/+1
| | | | | | resolves an issue while finding the file path TypeError: unsupported operand type(s) for +: 'PosixPath' and 'str'
* Move everything to Python 3.6 (#8835)skullydazed2020-04-186-21/+20
|
* CLI: Fix doctor error when can't run `bin/qmk --version`. (#8796)Pete Johanson2020-04-141-1/+1
|
* Don't hide for devs...Erovia2020-04-083-3/+3
|
* Rebase on master, hide some other subcommandsErovia2020-04-083-3/+3
| | | | | | | | | | | The list of hidden subcommands were approved by @skullydazed ;) Currently hidden if 'user.developer' is not True: - cformat - docs - kle2json - pyformat - pytest
* CLI: Add development mode supportErovia2020-04-083-3/+3
| | | | | Hide development specific options and don't require dev modules unless `user.developer` is set to `True`.
* Doctor: Add avrdude/dfu-util/dfu-programmer version printing (#8678)Ryan2020-04-051-6/+31
| | | | | | | * Doctor: Add avrdude/dfu-util/dfu-programmer version printing * Extra newline * Iterate through version checking functions
* minor tweaksskullY2020-04-041-4/+2
|
* Fix saving output from avrdude and dfu-programmerRoss Baquir2020-04-041-3/+9
|
* Use version_arg in ESSENTIAL_BINARIES dictRoss Baquir2020-04-041-6/+4
|
* Fixes #8541 by getting version from -dumpversion then --version as fallbackRoss Baquir2020-04-041-7/+8
|
* CLI: More MSYS2 fixes (#8577)Erovia2020-03-291-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* CLI: Hide json-keymap subcommand, as it's been deprecated.Erovia2020-03-181-1/+1
|
* Add decorators for determining keyboard and keymap based on current ↵skullydazed2020-03-135-29/+66
| | | | | | | | | | | | | | | | | | | 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.
* use qmk.path.normpath to locate the output file.skullY2020-03-121-2/+1
|
* Rename qmk json-keymap to qmk json2c (#8372)skullydazed2020-03-103-43/+60
|
* Add gcc version detection to qmk doctor (#8338)skullydazed2020-03-081-3/+49
|
* Fixed OS detection such that OSX doesn't take over the world (#8248)Mikkel Jeppesen2020-02-261-1/+1
|
* New functionality for cformat (#7893)Akaash Suresh2020-02-221-23/+42
| | | | | | | | | | | | | Fixing complexity remove lambda PR review fixes #1 Removing unneccesary string substitution Handle -a and specified files Complexity rewrite, use pathlib
* Use pathlib everywhere we can (#7872)skullydazed2020-02-175-134/+57
| | | | | | | | | | | | | | | | | | | | | | * Use pathlib everywhere we can * Update lib/python/qmk/path.py Co-Authored-By: Erovia <Erovia@users.noreply.github.com> * Update lib/python/qmk/path.py Co-Authored-By: Erovia <Erovia@users.noreply.github.com> * 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() Co-authored-by: Erovia <Erovia@users.noreply.github.com>
* Fix os detection in OSX python 3.8 (#8187)Mikkel Jeppesen2020-02-171-1/+1
| | | | | | * Fix os detection in osx python 3.8 * oops
* Code cleanup, use pathlib, use pytest keyboardErovia2020-02-151-7/+3
| | | | | | | | Clean up checks and logics that are unnecessary due to MILC updates. Use pathlib instead of os.path for readability. Use the 'pytest' keyboard for the tests. Add community layout for 'handwired/onekey/pytest' so we can test community layouts.
* Fix commandline parsing and flake8 findings, rebaseErovia2020-02-151-1/+4
| | | | | Fixed commandline and config parsing. Thx @xplusplus. Rebased on master and fixed merge conflicts.
* Drop bs4 dependency, update docs, minor improvementsErovia2020-02-151-4/+7
|
* Another major refactoring, add documentationErovia2020-02-151-76/+8
| | | | | | Move all useful functions to the qmk module and use the cli subcommand as a wrapper around it. Add both inline comments and documentation.
* Fix output formatErovia2020-02-151-1/+1
|
* Try to figure out revision, drop -rv/--revision argumentErovia2020-02-151-32/+34
|
* Fix help message.Erovia2020-02-151-1/+1
|
* Get all buildable keymaps for each revisionErovia2020-02-151-27/+32
| | | | | | | The command now return all keymaps that's buildable for a keyboard/revision. If the base directory of a keyboard does not contain a 'rules.mk' file, nothing is returned. If the base directory contains a 'keymaps' directory, those keycaps will be returned for every revision.
* Major update to work better with revisionsErovia2020-02-151-24/+21
| | | | Find the community keymaps supported by each revision.
* CLI: add support for list_keymapsErovia2020-02-152-0/+85
| | | | List all the available keymaps for a given keyboard
* Update the flash cli command to use the user config (#8125)Erovia2020-02-081-2/+2
|
* Add QMK Compile Context Sensitivity (#6884)Cody Bender2020-02-071-3/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add context sensitive compile, without config check * Initial full working state. Plan to refactor * Refactor loop for simplicity, add comments * Update docs/cli.md with qmk compile examples * Simplify path for keyboard derivation * Update path to use path.join instead of concat * Refactor keyboard path, the skully way * Add in keymap folder support * Add /layouts compile support * Update docs/cli.md with empty compile in layouts * Add comments to compile.py * Update docs for clarity, and fix compile error typo * Fix config option compile * Fix layout compile and failure mode * Add rules.mk check * Fix variable names for global config * Add in_layout priority * Remove default fallback in favor of throw, update docs * Add keymap folder context * Fix formatting * Add os import * Convert to create_make_command * Fix Travis lint errors * Remove blank line with whitespace * Add blank lines for readability * Remove unnecessary config logic * Update Docs to add flash Co-Authored-By: skullydazed <skullydazed@users.noreply.github.com> * Shift config precedence to MILC Co-authored-by: skullydazed <skullydazed@users.noreply.github.com>
* Fix cformat processing files within ignore folders (#8063)Joel Challis2020-02-021-0/+1
|
* Qmk doctor os check to support newer msys2/w10 installations (#8031)Mikkel Jeppesen2020-01-281-4/+4
| | | | | | * Fixed OS detection on newer MSYS installations * made OS sting lower case
* Beef up how `qmk doctor` works. (#7375)skullydazed2020-01-241-63/+176
| | | | | | | | | | | | | | | | | | | | | | * Beef up how `qmk doctor` works. * improve the `git submodule status` parsing. h/t @erovia * Fix whitespace and imports * yapf * Add documentation for the new doctor functionality * Replace type_unchanged() with str() * remove unused modules * Update lib/python/qmk/cli/doctor.py Co-Authored-By: Erovia <Erovia@users.noreply.github.com> Co-authored-by: Erovia <Erovia@users.noreply.github.com>
* Align cformat rules with current CI implementation (#7936)Joel Challis2020-01-211-3/+4
| | | | | | * Align cformat rules with current CI implementation * Optimise file walking
* yapf and styleskullY2020-01-111-11/+10
|
* Make the udev rules easier to read and manageErovia2020-01-111-10/+19
|
* Fix Pro Micro's and its bootloader's nameErovia2020-01-111-3/+3
|
* CLI: Rework ModemManager check and add udev checkErovia2020-01-111-17/+38
|
* Also fix flashZach White2019-12-081-2/+3
|
* Fix compiling json filesZach White2019-12-081-1/+1
|
* Add pep8-naming to our python lintingskullY2019-12-011-1/+1
|
* Use os.chdir for `qmk docs` instead of a custom HTTP request handler (#7493)fauxpark2019-11-291-6/+4
|