aboutsummaryrefslogtreecommitdiff
path: root/lib/python/qmk/cli/compile.py
diff options
context:
space:
mode:
authorskullydazed <skullydazed@users.noreply.github.com>2019-09-22 13:25:33 -0700
committerGitHub <noreply@github.com>2019-09-22 13:25:33 -0700
commitd569f0877155efc752994f8a21f5cf001f9d6ae6 (patch)
treeeb58a3e3f916d6d938d8f05742d48919c053a579 /lib/python/qmk/cli/compile.py
parent2f49cae9bcbdd94431659727ef75cfd30f557da8 (diff)
downloadqmk_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-xlib/python/qmk/cli/compile.py10
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
14import qmk.path 14import 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.')
21def main(cli): 21def 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`.')