diff options
author | skullydazed <skullydazed@users.noreply.github.com> | 2019-09-22 13:25:33 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-22 13:25:33 -0700 |
commit | d569f0877155efc752994f8a21f5cf001f9d6ae6 (patch) | |
tree | eb58a3e3f916d6d938d8f05742d48919c053a579 /lib/python/qmk/cli/compile.py | |
parent | 2f49cae9bcbdd94431659727ef75cfd30f557da8 (diff) | |
download | qmk_firmware-d569f0877155efc752994f8a21f5cf001f9d6ae6.tar.gz qmk_firmware-d569f0877155efc752994f8a21f5cf001f9d6ae6.zip |
Configuration system for CLI (#6708)
* Rework how bin/qmk handles subcommands
* qmk config wip
* Code to show all configs
* Fully working `qmk config` command
* Mark some CLI arguments so they don't pollute the config file
* Fleshed out config support, nicer subcommand support
* sync with installable cli
* pyformat
* Add a test for subcommand_modules
* Documentation for the `qmk config` command
* split config_token on space so qmk config is more predictable
* Rework how subcommands are imported
* Document `arg_only`
* Document deleting from CLI
* Document how multiple operations work
* Add cli config to the doc index
* Add tests for the cli commands
* Make running the tests more reliable
* Be more selective about building all default keymaps
* Update new-keymap to fit the new subcommand style
* Add documentation about writing CLI scripts
* Document new-keyboard
* Update docs/cli_configuration.md
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Update docs/cli_development.md
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Update docs/cli_development.md
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Update docs/cli_development.md
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Address yan's comments.
* Apply suggestions from code review
suggestions from @noahfrederick
Co-Authored-By: Noah Frederick <code@noahfrederick.com>
* Apply suggestions from code review
Co-Authored-By: Noah Frederick <code@noahfrederick.com>
* Remove pip3 from the test runner
Diffstat (limited to 'lib/python/qmk/cli/compile.py')
-rwxr-xr-x | lib/python/qmk/cli/compile.py | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/python/qmk/cli/compile.py b/lib/python/qmk/cli/compile.py index 7e14ad8fb..6646891b3 100755 --- a/lib/python/qmk/cli/compile.py +++ b/lib/python/qmk/cli/compile.py | |||
@@ -14,11 +14,11 @@ import qmk.keymap | |||
14 | import qmk.path | 14 | import qmk.path |
15 | 15 | ||
16 | 16 | ||
17 | @cli.argument('filename', nargs='?', type=FileType('r'), help='The configurator export to compile') | 17 | @cli.argument('filename', nargs='?', arg_only=True, type=FileType('r'), help='The configurator export to compile') |
18 | @cli.argument('-kb', '--keyboard', help='The keyboard to build a firmware for. Ignored when a configurator export is supplied.') | 18 | @cli.argument('-kb', '--keyboard', help='The keyboard to build a firmware for. Ignored when a configurator export is supplied.') |
19 | @cli.argument('-km', '--keymap', help='The keymap to build a firmware for. Ignored when a configurator export is supplied.') | 19 | @cli.argument('-km', '--keymap', help='The keymap to build a firmware for. Ignored when a configurator export is supplied.') |
20 | @cli.entrypoint('Compile a QMK Firmware.') | 20 | @cli.subcommand('Compile a QMK Firmware.') |
21 | def main(cli): | 21 | def compile(cli): |
22 | """Compile a QMK Firmware. | 22 | """Compile a QMK Firmware. |
23 | 23 | ||
24 | If a Configurator export is supplied this command will create a new keymap, overwriting an existing keymap if one exists. | 24 | If a Configurator export is supplied this command will create a new keymap, overwriting an existing keymap if one exists. |
@@ -41,9 +41,9 @@ def main(cli): | |||
41 | # Compile the keymap | 41 | # Compile the keymap |
42 | command = ['make', ':'.join((user_keymap['keyboard'], user_keymap['keymap']))] | 42 | command = ['make', ':'.join((user_keymap['keyboard'], user_keymap['keymap']))] |
43 | 43 | ||
44 | elif cli.config.general.keyboard and cli.config.general.keymap: | 44 | elif cli.config.compile.keyboard and cli.config.compile.keymap: |
45 | # Generate the make command for a specific keyboard/keymap. | 45 | # Generate the make command for a specific keyboard/keymap. |
46 | command = ['make', ':'.join((cli.config.general.keyboard, cli.config.general.keymap))] | 46 | command = ['make', ':'.join((cli.config.compile.keyboard, cli.config.compile.keymap))] |
47 | 47 | ||
48 | else: | 48 | else: |
49 | cli.log.error('You must supply a configurator export or both `--keyboard` and `--keymap`.') | 49 | cli.log.error('You must supply a configurator export or both `--keyboard` and `--keymap`.') |