frondoc picture

What is Frontier?
News & Updates

Web Tutorial
Scripting Tutorial
BBEdit Scripting

Mailing Lists
Sample Scripts
Verb Set
Frontier Site Outline


User's Guide
1 2 3 4 5 6
7 8 9 10 11

Apple File Edit
Main Open Suites
Web Window

Menubar Outline
Script Table WP

frondoc picture

Frontier 4.1b5 Change Notes


1. fl = db.defined (f, path)

New verb. Does exactly what you'd expect.

2. fl = (f)

New verb. Creates a minimal database file. You must subsequently call to operate on the file.

3. Accessing open databases

Can now access a database file that is currently open in Frontier. It does not matter whether it's the active database or not.
Calling on a database that is open in Frontier activates Frontier's Save command on that file.
Calling db.close on a database that is open in Frontier only "closes" it from the point of view of the db verbs. It remains open in Frontier.

4. Invalid path parameters

Invalid path parameters to db verbs will no longer generate "syntax" errors. Now the error "Can't coerce the value to an address" is reported. The Go To button takes you to the offending call, not the first line of the script.

5. Agent conflicts on errors

When a db verb generates an error while running in the debugger, the context of the root being accessed is no longer confused with the current root's agent context.

6. Documentation

DocServer now has a page for each db verb. Also, the db verb glue table is now provided, so the parameter lists can be easily examined.


1. thread.sleep

New verb, allows you to put another thread to sleep. Unlike thread.sleepFor, which puts the current thread to sleep, this verb has no timeout.

2. thread.sleepFor

The timeout parameter is now defined as being in seconds. Note, however, that in 4.1b5 the implementation still treats the value as being in ticks (sixtieths of a second).
Fixed potential bug where a large timeout value might yield a short sleep.

3. thread.evaluate

thread.evaluate no longer leaves the menubar disabled.

4. thread.evaluateTo

New verb. Creates a wrapper around thread.evaluate to make it convenient to store the script's result in a specified database location.

5. Documentation

DocServer now has a page for each threading verb. Also, the thread verb glue table is now provided, so the parameter lists can be easily examined.


1. Agents sending Apple events

Fixed bug that would cause agent scripts to receive "Timeout" errors when sending Apple events. These errors would leads to a crash in "codedisposevisit" when recompiling the script.

2. string.processHtmlMacros

You can now have two glossary items in a row without a space between them.
You can now have two macro items in a row without a space between them.
The «, », ©, ® and non-breaking space characters are left untouched. This allows html.processMacros to pass them through the iso8859 filter.

3. string.urlEncode memory curruption

Fixed a bug in string.urlEncode that could lead to a crash. (Thanks to John Simms' and other Frontier-Talk bug reports.)

4. standardMacros.renderObject

Removed toys.cleanForExport call from That script has been superceeded by processing done in string.iso8859encode and elsewhere.

5. Opening multiple roots

When you open a new database file, or activate a window in another database, the new database's agents run.

6. Scripts with optional parameters

When evaluating a default parameter that is an address, tables at the root level are recognized. That is, a function declared "on doIt (adr = @suites.html)" will work when called without that parameter.

7. Memory corruption on quit

Fixed bug when quitting Frontier that could corrupt memory and possibly lead to a crash.

8. FinderMenu commands

When there is no selection, FinderMenu commands that operate on the selection no longer produce an arcane error message.

9. Running out of memory

Frontier's preferred size has been expanded to 2500K.

10. wp.go bug

Fixed calls to wp.go with a distance greater than 1. There is still a problem going left across a line break (an old bug).


1. Quitting Frontier without confirmation

The script at system.misc.closeWindow will now get called with the root window, before the Save Changes dialog appears. The dialog can be avoided by calling in the script.

2. Command- and Control-2clicking

"with" statements are now recognized; 2clicking on a name is that is only defined within the context of a with statement works. UserTalk keywords and constants are also recognized. (Thanks to Scott Lawton.)
It's worth mentioning here that Control-2clicking has a little-known feature: hold down the option key, and the syntax for calling the verb is inserted after the verb. (DocServer does not come to the front.)

3. Run Selection (cmd-/)

If the cursor is on a MacBird card object (binary[CARD]), cmd-/ runs the card.

4. Jump command

If you hold down the Shift key while typing cmd-J or selecting Jump to Cell from the menu, you will now jump to the last selected location, skipping the Jump dialog.

5. Dropping files onto Frontier

UCMDs and XCMDs, or resource files containing them, can now be dropped directly onto the Frontier icon in the Finder to have them loaded into the extensions table.

6. Eudora's Scripts menu

Added a "Subscribe" submenu. It provides commands to subscribe to Frontier-Talk and Frontier-Beginners.
Normally, these wouldn't be needed more than once. But we all know that these lists don't really work that way.

7. toys.scriptToOutline

We have good html rendering tools for outlines, that don't work with scripts. This script makes an outline that reflects the contents of a script, suitable for display.

8. toys.copyToLocal

This isn't a bug fix, or a goodie per se. The script was just updated to use Frontier's new direct asignment capability, so scripts that call it will perform better.

© Copyright 1996-97 UserLand Software. This page was last built on 5/7/97; 1:25:07 PM. It was originally posted on 10/5/96; 1:38:47 PM. Internet service provided by Conxion.