keymaps.py 916 B

12345678910111213141516171819202122
  1. """List the keymaps for a specific keyboard
  2. """
  3. from milc import cli
  4. import qmk.keymap
  5. from qmk.errors import NoSuchKeyboardError
  6. @cli.argument("-kb", "--keyboard", help="Specify keyboard name. Example: 1upkeyboards/1up60hse")
  7. @cli.subcommand("List the keymaps for a specific keyboard")
  8. def list_keymaps(cli):
  9. """List the keymaps for a specific keyboard
  10. """
  11. try:
  12. for name in qmk.keymap.list_keymaps(cli.config.list_keymaps.keyboard):
  13. # We echo instead of cli.log.info to allow easier piping of this output
  14. cli.echo('%s', name)
  15. except NoSuchKeyboardError as e:
  16. cli.echo("{fg_red}%s: %s", cli.config.list_keymaps.keyboard, e.message)
  17. except (FileNotFoundError, PermissionError) as e:
  18. cli.echo("{fg_red}%s: %s", cli.config.list_keymaps.keyboard, e)
  19. except TypeError:
  20. cli.echo("{fg_red}Something went wrong. Did you specify a keyboard?")