ANN: glx2 script editor 4.0

Mark Wieder ahsoftware at
Mon Apr 6 14:08:42 EDT 2020

I posted this to the web forum last night and figured I should put it in 
the list as well... so here's something to help with working in isolation.

Whew! It's been a long time since I've updated this.
I really thought I had made my peace with the built-in script editor, 
but I recently had to look at this thing again and make some long-needed 
Refactored it so much that it really needs a new major version to 
reflect all the changes.
So this is the official release of the glx2 script editor 4.0

new features:

Integration of the status bar with Fourth World's devolution
Refactored code folding
Status bar colors match LiveCode license version colors
Fixed block comment folding inside handlers
Refactored code folding yet again for speed
Renamed stack for ease of editing in Project Browser
Fixed "end try" tab formatting
Removed most dependence on stack naming convention
Some rework for compatibility with Refactor stack
Folding block comments.
Extended pattern matching to "()[]{}"
Line numbers. Yes, finally.
Pressing enter on a compiled script closes the tab ala the built-in 
editor. I never thought that was a thing.
control-tab and shift-control tab move among the open script editor tabs.
Click in line number field to toggle ghost breakpoints on and off.
Line numbering and ghost breakpoints adjust properly to cut/paste/edit.
There is now a proper license file. GLX2 has always been licensed under 
the MIT license, but there was no external notice of this, only a custom 
property (uRIP["EULA"]) of the mainstack.
The "red dot" breakpoints are now functional, with or without 
PowerDebug. This is a Big Deal, because the dot positions are 
recalculated when you compile so that the actual breakpoints stay in 
sync with the visual indicators. To toggle a breakpoint for a given 
line, right-click on the line and select the option from the pop-up 
menu. Note that the ghost breakpoints are not persistent, i.e., they 
only exist for the current session.
NOTE: If you use breakpoints without PowerDebug in the system, you will 
end up launching the IDE's script editor on hitting a breakpoint. The 
IDE's debugger is intimately intertwined with the IDE's script editor.
The default font size preference is now 12 point.

bugs fixed:

Ghost breakpoints coexist with code folding.
Compilation errors weren't highlighting the error line properly.
Right-clicking the handler panel was only selecting the folders popup.
Some code folding wasn't working properly. Reformatting could lose code 
if collapsed.
Removed lots of unused legacy custom properties (see note about deleting 
prefs file)
Command-w (control-w) closes the current tab.
OSX problem with toggling GLX2 on and off
Ghost breakpoints weren't correctly responding to cut/paste
Refactored for speed
Folding case statements inside switch contructs works properly now.
It was previously collapsing all the way down to the 'end switch' statement.
Line numbering could get out of sync on opening a new tab.
Reopening the script editor after closing wasn't properly noticing 
previously-open tabs.
Hacked around LC8.1 interaction with reloading/rewriting revTools.
Lots of little things I had time to fix up while waiting.
For one thing, the splitter bar between the handlers and script panels 
is more accessible now.
The properties were never included in clairvoyance completion
Fixed miscellaneous problems with glx2 plugin handler code
Preferences weren't being loaded properly
Multiple problems solved with handler folders
Several things that were previously working were fixed until they broke, 
then refactored until they worked again.
The cursor was being positioned improperly for new commands and functions
Two folding structures problems fixed
"else if" was folding in the middle
the combination of folding structures and block comments could lose text
Re-enabled live colorization
Bernd Niggeman contributed live colorization fixes
Fixed the cursor flickering problem
Broke and fixed clairvoyance
Frontscript was interfering with text/icons display in the IDE's dock

known issues:

Line wrapping doesn't change the line numbering. If you turn on line 
wrapping, the line numbers after a line wraps will be wrong. I don't 
currently know any way of telling when a line is being wrapped. I'd 
treat this as experimental and not enable it.
Still some problems recognizing that text inside a block comment is not 
Swapping back and forth between glx2 and the IDE's script editor can get 
a bit wonky.
Very little testing has been done on any Windows platform. If it works, 
it works.
Spuriously recognizes "the" as a library handler.

NOTE: the glx2Plugins.txt file should be placed in the same user plugins 
folder as glx2 itself. If you have an older "glx2 Plugins.txt" file you 
can get rid of it. I renamed the new file to eliminate the embedded 
space, and the older naming convention will just be ignored. Current 
plugin integrations are lcTaskList and PowerDebug.

Also, it's probably best practice to delete any existing "GLX2 Code 
Prefs.txt" preference file before installing the new version. Some 
preferences have changed and the discrepancy may cause some confusion.


  Mark Wieder
  ahsoftware at

More information about the use-livecode mailing list