You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
2.1 KiB

  1. {
  2. "$schema": "http://json-schema.org/draft-07/schema#",
  3. "$id": "qmk.keymap.v1",
  4. "title": "Keymap Information",
  5. "type": "object",
  6. "properties": {
  7. "author": {"type": "string"},
  8. "host_language": {"$ref": "qmk.definitions.v1#/text_identifier"},
  9. "keyboard": {"$ref": "qmk.definitions.v1#/text_identifier"},
  10. "keymap": {"$ref": "qmk.definitions.v1#/text_identifier"},
  11. "layout": {"$ref": "qmk.definitions.v1#/layout_macro"},
  12. "layers": {
  13. "type": "array",
  14. "items": {
  15. "type": "array",
  16. "items": {"type": "string"}
  17. }
  18. },
  19. "macros": {
  20. "type": "array",
  21. "items": {
  22. "type": "array",
  23. "items": {
  24. "oneOf": [
  25. {
  26. "type": "string"
  27. },
  28. {
  29. "type": "object",
  30. "additionalProperties": false,
  31. "properties": {
  32. "action": {
  33. "type": "string",
  34. "enum": ['beep', 'delay', 'down', 'tap', 'up']
  35. },
  36. "keycodes": {
  37. "type": "array",
  38. "items": {
  39. "$ref": "qmk.definitions.v1#/text_identifier"
  40. }
  41. },
  42. "duration": {
  43. "$ref": "qmk.definitions.v1#/unsigned_int"
  44. }
  45. }
  46. }
  47. ]
  48. }
  49. }
  50. },
  51. "config": {"$ref": "qmk.keyboard.v1"},
  52. "notes": {
  53. "type": "string",
  54. "description": "asdf"
  55. }
  56. },
  57. "required": [
  58. "keyboard",
  59. "layout",
  60. "layers"
  61. ]
  62. }