Closed SethMilliken closed 8 months ago
I think the crux of the issue is that the DTS parser doesn't do anything with node overrides like &node_ref {...};
. That would certainly be implementable within keymap_drawer/parse/dts.py
, if you want to give it a shot.
Sounds good. That file is where I had been looking. I wrote this issue up as a way of forcing myself to clearly articulate exactly what it was I hoped to accomplish. And to make sure it still seemed reasonable after doing so. 😅
Hey @SethMilliken, have you done any work on this yet? If not, I can have a look pretty soon.
Hey @SethMilliken, have you done any work on this yet? If not, I can have a look pretty soon.
I have not. Currently shaving yaks grazing in a completely different field.
Thank you for doing this! Worked flawlessly with my Planck override setup that prompted my opening this issue in the first place.
I have a shared
.dtsi
file that defines most of the ZMK behaviors I use across multiple boards. But some boards require different values for specific properties in some of these behaviors, predominantlykey-positions
in combos. I accomplish this for ZMK by using a second local#include
of an.overlay
file which uses node label references to override the necessary property values. But this does not currently work forkeymap-drawer
, which appears to use only the original node definitions. I would like to add support for this kind of devicetree overlay tokeymap-drawer
.Example:
For boards that mostly have this layout:
here is a sample
shared.dtsi
:And for a board having more columns, with a layout like this:
here is a sample
wider.overlay
:So at the top of
wider.keymap
there would be:which would result in a modified
combo_delete
node with only thekey-positions
property value changed.