qmk/qmk_configurator

[Feature Request] Add the support of Macros

Jefferycheng opened this issue · 6 comments

Description

Now, if I add the macros in the keymap.json, upload it to the configurator, and compile it, it doesn't work for my keyboard.

As #1250 mentioned, we wish to pass the macros object to compile as the first step.

And the next step, the web UI could set macros like https://keyboardlab.club. (Note: Jefferycheng is not associated with this site, and is just provided as an example of what the feature could look like.)

Thanks a lot!

Wow, nice to see forks of qmk code with no attribution...

tzarc commented

Yeah, and they're in breach of GPL by using QMK under the hood and not providing sources.

Good point, the authors seem to have closed the business, the keybooards are no longer available

  • but I found multiple YouTube review videos showing the unattributed fork and people commenting about how cool and useful it is - IMO this just shows spreading awareness of free software rights is more than needed...

In the topic of the feature request, I'm more than eager to help with the implementation, and I can start at once - the question is what do You mainteiners think about this particular approach?

  • defining macros as another key-value pair in keymap.json
  • defining macros similarily to keymaps or encoder_map

shall we? 👯‍♂️

what do You mainteiners think about this particular approach?

Redundant, as its not a keyboard feature so should not change info.json and we already have https://docs.qmk.fm/#/feature_macros?id=using-macros-in-json-keymaps.

Redundant, as its not a keyboard feature so should not change info.json and we already have

ofc, I meant keymap.json - can we skip the keymap.c compatibility then?

Then it is mainly about implementing the sheer functionality, using the defined macros - which should rather be a PR to qmk_firmware - if I'm correct, can You add it and make a reference here?

As for the UI, are You working on anything particular @Jefferycheng ? If not, then I will develop to our fork https://github.com/arrowmechanics/qmk_configurator and we'll see what we can get

which should rather be a PR to qmk_firmware - if I'm correct, can You add it and make a reference here?

Theres no changes to make to the qmk_firmware repo. The functionality that needs to be implemented is purely client side and isolated to only this repo.