tehn / mlr

mlr (norns)
25 stars 18 forks source link

support for both grid 64 & 128 #35

Closed p3r7 closed 2 years ago

p3r7 commented 2 years ago

i have both a 64 and a 128, and i felt bad for having to use a not up-to-date fork for the 64.

this PR ports the layout from the fork (w/ recalls on the last row). the code could be refactored to have a cleaner shared code for the 2 layouts but hey i wanted to be the least intrusive as possible for this 1rst run.

i played w/ this fork on both grids and haven't spotted any regression but might not have used every feature.

tehn commented 2 years ago

thank you for the submission, i appreciate the care that went into this.

mlr is a complex script, and i'd like to keep it the code legible and not add another documentation burden: i'd prefer the 64 (and monobright) versions to continue to be maintained separately. i hope you understand.

your code does raise a good feature addition to the main norns codebase, however. grid mono-brightness should be detectable through the library, rather than having to match a device name. this would be best done through the C layer.

thanks again.

p3r7 commented 2 years ago

i kinda disagree regarding the doc burden (the differences from the user standpoint seem small enough) but completely understand as far as code maintainability goes.

a more maintainable version w/ support for both layout may be possible but it'd have to break away from the current code style of the script (procedural). and all in all this may not be a good idea.

plus having the nb of supported brightness levels accessible directly from g.device would be hella cool. i didn't know the library could be made to detect it.