I would have a suggestion, which in my opinion could make Mobius more accessible for people with no programming experience. For me personally it would not make much of a difference because I have a CS background, but it would be interesting how other people feel about it.
One of the main reasons for using scripts is to assign multiple, different, functions to one button. E.g. single press is focusLock, double press is Mute, long press Overdub. At the moment, everybody who wants to achieve something like this, has to learn about the MSL syntax, learn how and where to create scripts, learn about positional arguments and functions and then test it, all for something fairly easy and standard like:
#sustain 350
#repeat 500
function OnRepeat(){ Mute}
function OnSustain(x y){ if x==1 and y > 350 {Overdub}}
function OnRelease(){FocusLock}
What I would suggest is to allow users to create "Buttons", similar to creating a button in the UI. The user can choose in a drop-down menu which functions he wants to have assigned on release (X), double click (Y) and sustain (Z) of this "button". The user then can create a midi-binding (or just show it in the UI). I would imagine, a possible way to solve this would be to create a script replacing X,Y,Z with the chosen functions (and arguments passed to the function) and store it in the scripts folder - so it could be edited afterwards.
#name XYZ
#sustain 350
#repeat 500
function OnRepeat(){Y}
function OnSustain(x y){ if x==1 and y > 350 {Z}}
function OnRelease(){X}
I know, that this would not solve everything and that it would fall short when creating more complex scripts, e.g. when making the behavior of the script react to the current mode. But creating even a very basic script would facilitate the process for new users, because the backbone of the function is already created, part of the syntax is self-explanatory, the most complicated and intimidating part of the syntax is already there and the rest could probably be solved using chatgpt and the documentation.
But I don't want to add anything to your probably already very long todo-list! Thank you for everything you do with mobius, it is bringing joy to my life every day I jam with it, which is almost every day.