Plugins folder

Sarah Reichelt sarah.reichelt at gmail.com
Mon Dec 14 20:02:30 EST 2009


> Yes, being 'invisible' seems to place it in a special, possibly superior
> place in the *message path* - where does it live in the hierarchy? Since the
> plug stack exists in a different folder what is the file address path it
> need to use? Absolute only? Plugin folder POV?    Plugins seem to be able to
> do some things better than just a loaded stack in the IDE.
>
> These are the main holes in my knowledge about this.
>
> I know that these stacks are almost impossible to edit *in invisible mode.*


Plugins really do not have any more powers than a normal stack, it's
just a convenient place to put utility stacks that you use often.

They are not magical in any way, but they are often used to contain
backScripts & frontScripts which inserts their scripts into the
hierarchy e.g. I have one that uses a frontScript to trap function
keys, and if there is a script snippet attached to a particular key,
it executes that snippet, before passing the function key on to the
other stacks & to the engine.

In the Plugins Settings dialog, you can choose which system messages
get sent to your plugin as well as when it opens and in what mode.

If you need to know the path to the Plugins folder, there are 2
unsupported functions for this:
    revEnvironmentUserPluginsPath()
    revEnvironmentPluginsPath()

You can edit stacks whose names start with "rev", if you select
"Revolution UI Elements in Lists" from the View menu, or in tRev,
shift-click the tab name of a browser tab to toggle between showing
all stacks and showing only non-Rev ones. The problem is debugging as
Rev does not allow the debugger to step into rev stacks as far as I am
aware. However again, if you are using tRev (which I think you are),
then you can do any debugging using it's Decoder instead.

There is a revExample plugin in my Plugins folder. If you have a look
at that one, you might get some more ideas about how it all works.

HTH,
Sarah



More information about the Use-livecode mailing list