Ben Rubinstein wrote:

> Do you (does anyone) know where script-only stacks are actually
> documented? I can't find it in the User Guide - I see references
> in the release notes to changes relating, I'm vaguely aware from
> mailing lists of conversations about them; but I can't find anything
> for a new person to discover that these exist,
> how they are used, what are the constraints, etc.
> For example, do they really have the same suffix as traditional stack
> files?
> That seems pretty odd.

It's even more odd (or simple, depending on how one looks at it) than that: LiveCode has always been able to open any valid stack file regardless of the file name extension.

The benefit of using the established ".livecode" convention is that on Windows and Mac it allows you to double-click the file to open it in the IDE (Linux offers a mechanism for that too but it hasn't yet been implemented in LC). But you can use any file name extension you like with the "open" command, or with the IDE's File->Open menu item.

Whether .livecode, .rev, .mc, .foo, .bar, or anything else (even .anythingelse), they'll all work.

This is by design, allowing us to use stack files for documents if we want, and of course we want our own documents to have their own file name extension.

As for script-only stacks, the conversation around them has been far more complicated than the subject itself.

There is only one thing to know about script-only stacks:

  When saved to disk they contain only the stack script.

That's it.  And it's built into the name so we can remember it easily. :)

In all other respects a stack is a stack. You can do anything with any stack that you'd do with any other - adding objects, properties, whatever you like.

It's just that the file format of a script-only stack consists only of the script, so nothing else will be saved with it.

There may be other places where this is outlined (such as the Release Notes you mentioned), but if you search the Dictionary for scriptOnly you'll find this note in the entry for that property:

    A scriptOnly stack will save just the script with a single header
    line declaring the stack name. Any other objects or properties of
    the stack will not be written to disk.

    The scriptOnly property has been added to enable scripts to detect
    and set the file format of the stack. Without this property it is
    not possible to detect the file format the stack is being saved in
    without examining the file itself.

    Warning: scriptOnly stacks only save the stack name and script. Any
    property changes and objects created while the stack is open will
    not exist the next time the stack is opened.

 Richard Gaskin
 Fourth World Systems
 Software Design and Development for the Desktop, Mobile, and the Web

use-livecode mailing list
Please visit this url to subscribe, unsubscribe and manage your subscription 

Reply via email to