my apologies for being rude, Lemur is a fantastic product, but working with the code editor is a pain in the a** (Windows 7 64 bit). I do appreciate having editors for Mac, Windwos and InApp, I know that must have been a lot of work, but at the same time I must ask, would you Lemur developers want to have to work with the Lemur code editor to develop Lemur ?
So here's my code editor wishlist:
- Home and End keys should move to start/end of line, not end of text (which usually are ctrl+home/ctrol+end)
- if anything is wrong the complete code is rendered red - modern code editors (of interpreted languages) show decent lines under the exact place of the error along with an error hint.
- Having to use "e" to interact with a template often leads to invalid code cause it's typed in there. So first I have to click in the template to use "e", which makes the editor loose its content => make the editor tabbed so I can edit multiple code blocks in different editors, make them sticky so they don't loose code when clicking into the template and add a modifier key like alt+e for running a script.
- a list of items where a variable/script is referenced or a goto next/previous script error to find scripts easily which don't work cause I renamed a variable for example
- code completion
- unicode
And some script language features I miss:
- string functions and operators, I'd like to be able to write "decl chordname = 'C' + ' maj' + ' 1. Inv'".
- object pointers/references as script parameters
- a more object oriented approach, having three different assignment methods (=, setattribute, setexpression) seems a little weird to me. I'd prefer a consistent "Object.attributename = value" syntax.
InApp editor:
- where can I manage custom MIDI-messages?
Thank you!
Code editor and scripting language
Re: Code editor and scripting language
Lack of string operators and functions buffled me too...
The first time I tried an i iteration loop I was wondering why I couldnt just set a bunch of objects expression (Knob1, Knob2....Knob20) by going
for (i=1, i<21, i++)
Knob' i '.x=0.5;
or
decl obj='Knob'+' i ';
setexpression(obj,'x',0.5);
or something in that fashion anyways......
The first time I tried an i iteration loop I was wondering why I couldnt just set a bunch of objects expression (Knob1, Knob2....Knob20) by going
for (i=1, i<21, i++)
Knob' i '.x=0.5;
or
decl obj='Knob'+' i ';
setexpression(obj,'x',0.5);
or something in that fashion anyways......
Re: Code editor and scripting language
That also speaks volumes to the inability to store object references in variables...Softcore wrote:Lack of string operators and functions buffled me too...
The first time I tried an i iteration loop I was wondering why I couldnt just set a bunch of objects expression (Knob1, Knob2....Knob20) by going
for (i=1, i<21, i++)
Knob' i '.x=0.5;
or
decl obj='Knob'+' i ';
setexpression(obj,'x',0.5);
or something in that fashion anyways......
I think we can all agree that the lack of string support is a royal pain in the ass.
how about
Code: Select all
decl labels;
labels[65] = "A";
labels[109] = "m";
It would also be nice to be able to parse the object name, ie a string replace in php...
Code: Select all
//where object name = knob065...
decl asciiCode = stringreplace(getobject(getname()), 'knob');
asciiCode = int(asciiCode); //converts string '065' into integer 65 for use in keyout() or any other int related functions
Re: Code editor and scripting language
Ayup, pointers would be very handy indeed.
IIRC there's a section in the manual that hints at such functionality - but it's never expanded upon. I actually thought it referred to the ability to pass a pointer to an object (as a var) . . . but it seems from what you guys are saying I either misunderstood the manual, or the manual refers to unfinished functionality in the application / lang.
IIRC there's a section in the manual that hints at such functionality - but it's never expanded upon. I actually thought it referred to the ability to pass a pointer to an object (as a var) . . . but it seems from what you guys are saying I either misunderstood the manual, or the manual refers to unfinished functionality in the application / lang.
Re: Code editor and scripting language
I remember seeing some pointer notation in the manual too. Along with with pointers it would be nice to have typecasts in order to make setattribute() and setexpression() obsolete.Joe Soap wrote:Ayup, pointers would be very handy indeed.
IIRC there's a section in the manual that hints at such functionality - but it's never expanded upon. I actually thought it referred to the ability to pass a pointer to an object (as a var) . . . but it seems from what you guys are saying I either misunderstood the manual, or the manual refers to unfinished functionality in the application / lang.