Script Editor future (was Open Source Kickstarter Report Card)

RunRevPlanet feed at
Sun Aug 23 03:01:09 CEST 2015

Mike Kerner said:

 > effort should instead be spent on a
 > BBEdit/TextWrangler plugin or some
 > method for leveraging someone else's
 > text editor.

the problem with this approach is that you need to find a single editor that
runs on Linux, OS X Windows. Without using a single editor/IDE on all platforms,
the developer experience and ease of use will rapidly diminish.

Malte Brill said:

 > +1, just eclipse

I have no idea how difficult that would be, but it sounds like the sledgehammer
cracking the walnut. From the smiley I don't know whether to take that
suggestions seriously?

 > Still the IDE will have to come with a script
 > editor that works out of the box.

There is no need to throw away what exists, hitch LiveCode to another editor,
when it only needs improving with a few more features and some care and
attention to boost the ease of use.

I would be surprised if the amount of work making a plugin for another system
would be less than just fixing what currently exists.

As a couple of concrete examples, that are mentioned elsewhere, but are repeated
again in more detail, because this is a new thread.

* And remember the reason these features exists in other tools is not because
Scott likes them, but because programmers find them powerful and time saving.

Suppose I am doing some work on a handler and want to change the name of all
instances of a variable in it. (I am a big believer in using meaningful variable
names to make code self documenting, but sometimes a good name is not apparent
until after it has been used a few times in that function.)

So I want to rename all instances without risking affecting other handlers in
the same pane of the script editor. Currently I have to:

1. Have a button on the stack for the purpose of having an extra "scratch pad"
script editor pane.

2. Copy and paste the handler to my ad hoc "scratch pad editor pane" and
replacing all text (if any) currently there from my previous editing.

3. Do the Find and replace.

4. Copy and paste the text back from the scratch pane over the original script.

I could avoid doing this and instead put the text cursor at the start of the
handler and carefully repeatedly do a replace until I get to the end of the
relevant code. But then close attention is needed and in a long handler it
actually takes more clicks and keyboard presses than the method above and I have
to concentrate harder and am more likely to make a mistake.

All the while, every coding editor I have ever used (except LiveCode) has an
option to restrict the Find and Replace to selected text. So much quicker and
less error prone.

Then then there are bookmarks which are missing. The problem with the handler
list pane of the current editor is that with a stack or card with many handlers
there is a constant need to scroll up and down that if the two handlers I am
working on have names widely separated in the alphabet.

Sure, I could move handlers around in my code so they are adjacent. But there
there will then be two different handlers that my current work is concentrating
on and I have to make sure that they are now adjacent so I can work efficiently.
(Moving code to work around the short-comings of the IDE feels like madness.)

Again, every coding editor I have ever used (except LiveCode) has an option to
set and jump to bookmarks using keyboard shortcuts.

Once a programmer is used to and expects such features (and remember this is
basic stuff that has existed elsewhere for literally decades), working in
LiveCode can quickly feel frustrating and inefficient.

Programmers coming from other tools to try LiveCode notice these problems, and
while the absence will not affect people starting their coding adventures in
LiveCode, to capitalise on going Open Source you still need to attract (and
keep!) more experienced coders too.

So the sooner the editor experience is improved the better.
Scott McDonald
"Components, Controls, Tools and Resources for LiveCode"

More information about the use-livecode mailing list