The combination of inEnvir and a slight modification to the symbol extension for named controls solves this quite nicely for my purposes since I really only use functions and Ndef. The key thing was learning about inEnvir. Thanks.
+ Symbol {
kr { | val, lag, fixedLag = false, spec |
var name = "%%".format(this, ~num ?? {""});
^NamedControl.kr(name, val, lag, fixedLag, spec)
}
ar { | val, lag, spec |
var name = "%%".format(this, ~num ?? {""});
^NamedControl.ar(name, val, lag, spec)
}
...
}