ScriptEdit
Volume Number: 7
Issue Number: 3
Column Tag: Tools of the Trade
ScriptEdit and LifeGuard
By Dave Kelly, MacTutor Editorial Board
ScriptEdit for HyperCard 2.0
In case you were wondering what happened to ScriptEdit since the release
(finally) of HyperCard 2.0, here it is. As I’ve mentioned previously, ScriptEdit (1.0
and 1.1) was a welcome addition to the lame editor of HyperCard versions 1.0 through
1.2.5. The HyperCard 2.0 development team improved HyperCard by giving it a better
script editor. In addition, the team included ‘hooks’ that allow ScriptEdit 2.0 to
supersede the generic HyperCard script editor. ScriptEdit is still the most useful
extension to HyperCard available.
These are a few of the many new features and changes from previous versions of
ScriptEdit:
• Modeless operation - HyperCard 2.0 gives us the ability to have more than one
stack open at once. It would be senseless not to apply this capability to ScriptEdit.
Since you can have more than one window open while HyperCard is active, it is
much easier to cut, copy, or paste from other scripts. You can save time by
leaving scripts open that you are using repeatedly.
• Integrated debugger - The ScriptEdit debugger is a great way to debug your
HyperCard scripts. The debugger accessed by inserting a special character in
your script called a checkpoint. As many as 32 temporary checkpoints, with as
many as 16 in any one script, can be used. An unlimited number of permanent
checkpoints can be set in a script by inserting the words “debug checkpoint”. The
ScriptEdit Object Window cannot be used to open the scripts to add checkpoints.
You need to use one of the other methods of opening scripts. The manual mentions
several ways to open scripts, most of which are the same as for opening scripts
with the HyperCard 2.0 generic editor.
With the checkpoint set, you can step or trace the script.to pinpoint problems.
You can even monitor variables with the “Variable Watcher” window to monitor the
results of your script. Another window called the Message Watcher keeps track of the
messages that HyperCard sends between objects as the script is running.
The Start Recording command will begin saving script lines as they are executed
with the Step, Step Into, or Trace commands. The recording buffer can later be
examined to reveal a complete record of the handlers that were executed, which objects
they came from, and the order that they were executed. Clicking on any line in the
recording window will display and highlight the matching line in the original script
that the recorded line came from, opening an editing window for that script if
necessary.
• Multiple clipboards - ScriptEdit has five separate clipboards that can store up
to 32,000 lines of text.
• Handler/Function pop-up menus - If you hold down the command key and click
the mouse while displaying a script, a menu pops up listing all handlers or
functions in the current script. Selecting one of these automatically scrolls the
window and moves the insertion point to that handler or function’s definition.
• GREP wildcard searching - GREP stands for Global Regular Expression Print
(or any number of other things, depending on whom you ask). It is based on a
utility that is popular on many UNIX systems. GREP can be very useful once you
become familiar with it. GREP uses special text strings to search for patterns of
the text that is to be found. Although GREP can be useful, ScriptEdit lets you do
regular searching without GREP.
• Smart HyperTalk pop-up menus - Six pop-up menus list HyperTalk commands,
functions, globals, keywords, properties and constants. Selecting from these
menus automatically inserts the selected menu item into the current script. Four
of the six pop-up menus in the ScriptEdit Info Bar are ‘intelligent’; that is, they
enter required script parameters and other information when they are selected.
By redefining the resources that define these pop-up menus, you can change the
text that is inserted when you choose from the Info Bar menus.
• Automatic script formatting - ScriptEdit automatically takes care of indenting
the lines of script for you.
• Power-User auto save - This feature automatically saves changes to a script
each time the script window is deactivated. This could be dangerous if you don’t
understand what is happening.
• New ScriptEdit stack -The new version of ScriptEdit installer stack will allow
you to use the ScriptEdit XCMDs without copying them to another stack. The
installer will install scripts in your Home stack to open the XCMDs in the
installer stack. The XCMDs may be copied to other stacks if desired, but it makes
sense to keep them in the installer stack since you may want to keep the installer
around anyway. The installer will remove the scripts in case you ever want to
turn off ScriptEdit. Once the scripts are installed, ScriptEdit is activated
whenever you access a HyperCard script just as you would with the HyperCard
generic script editor.
• Time/Data stamp - The current date and time can be selected from a menu and
added to any script line (at the insertion point).
Super Scripting with Script Edit 2
In summary, ScriptEdit is a useful tool for all HyperCard stack
authors/developers. ScriptEdit retains the Object Window, Comment/Uncomment
commands, text file editing, script comparison and other features that made it popular
for users of HyperCard 1.2. The GREP searching function will take some time to learn,
but isn’t too difficult to figure out. The ScriptEdit Debugger is one of SciptEdit’s
strongest features. ScriptEdit 2.0 is very highly recommended from a company that
has provided a great product and support the previous version of ScriptEdit.
Also, Somak is offering special promotion on ScriptEdit 2.0. For a limited time,
you can order ScriptEdit 2.0 directly from Somak for only $59 + 4 p/h, and they’ll
include a free disk of HyperCard 2.0 XMCDs. Call them for details.
ScriptEdit 2.0 is available from:
Somak Software, Inc.
535 Encinitas Blvd., Suite 113
Encinitas, California 92024
619-942-2566
FAX: 619-632-9087
To order: 800 842-5020
Price: $99; upgrades from ScriptEdit 1.0 and 1.1: $25
Requires: Any Macintosh with HyperCard 2.0; 2 Meg RAM is recommended for
best performance.
No copy protection
LifeGuard™ is ON DUTY!
There has been considerable debate on the subject of VDT (Video Display
Terminal) damage to eyes, etc. Programmers should be concerned as much as anyone
about its effects. Eye strain, back pain, repetitive strain injuries (such as carpal
tunnel syndrome), headaches, and fatigue can take their toll on a programmer’s
productivity too. Many of you rely on computers for your living (you don’t program
just for fun) and without taking proper precautions, you could be a victim of
unnecessary injury.
Experts agree that the solution is to take breaks periodically, e specially when
you’re working intensively at the computer. You also should be sure to set up your
work environment to eliminate poor or uncomfortable posture and long reaches (use an
ergonomic workstation). In addition, you should seek proper medical treatment at the
first sign of repetitive strain injury or other computer-related health problems.
Many of you will agree that it is good to take a break. It’s hard to remember to
break away sometimes. How about setting an alarm to remind you? Sure, but resetting
it can really be a bother and some hours of work are less intense than others.
Now you can hire a lifeguard to watch the clock and how hard you work.
LifeGuard™ from Visionary Software is an INIT/DA which keeps watch for you. All you
do is drop the LifeGuard INIT into the system folder and install the LifeGuard DA. Open
the DA and you can set up the amount of time you wish to work and how much rest time
you want. After working for the set time, an audible and/or dialog reminder interrupts
your work to let you know it is time to rest. If you’re busy with something that won’t
quit, you can select the “snooze” function that you can set to give you another few
minutes to finish up your work before the LifeGuard informs you that time is up again.
The audible sounds can be selected from a list of sounds (type ‘snd ’ resources)
that are provided with LifeGuard or you can record your own. The dialog reminder also
will give you suggestions activities you can do for your “time off”. These suggestions
come from a list that you provide. You can do some exercises that are designed to
prevent injuries that could result from working without pause in an office
environment. It’s unfortunate that the exercises could not be programmed as part of
the suggested activities in the Dialog Reminder. When you want to try the exercises
you have to bring up the DA and look at the exercise page. You can perform these
exercises at any time or when LifeGuard tells you to take a break.
LifeGuard could truly be a life saver. It is not guaranteed to prevent all
injuries, but pr evention is often better than trying to cure a problem later. LifeGuard
is a great idea whose time has come.
LifeGuard™ is available from:
Visionary Software, Inc.
P. O. Box 69191
Portland, Oregon 97201
Telephone: 800-877-1832
AppleLink: Visionary
Price: $59.95