On Apr 16, 7:57 am, "Edward K. Ream" <edream...@gmail.com> wrote:
[]
> My hunch is that these ideas are important, perhaps extremely
> important.
>
> The present situation reminds me of my first impression of e's
> dynaButtons.  I didn't really understand them at first, but the phrase
> "bring scripts to nodes" eventually lead to @button nodes and the
> mod_scripting plugin.
>
> At present, I am floundering around with these ideas.  But this is the
> kind of floundering I live for.  As I have said many times before, a
> prerequisite for creativity is the ability to live with confusion and
> uncertainty with calm excitement instead of fear.
>

actually, the quote was bring scripts to data.
which later coined the phrase your data your way.
and buttons were not at all a revolutionary idea outside Leo!
if you've used most any microsoft IDE or tool., macro buttons
could be programmed. some editors had the ability, though
most used and still only use menus. which the button is just
a special case of a more limited menu. the dyna button
you may recall uses the rightclick to choose between items.
the advance that Leo brings is the builtin data storage for
the script. although you still have the problem of having
buttons in more than one leo. we accept the small overhead.
the Library plugin was useful here, but still requires too much
fiddling.

so previously we had only thought of how to supply scripts with data
and the scripts lived on a menu and in the scripts directory.
and were probably hardly ever used. some machinery may have
been created to open scripts easily for editing and may have helped.

buttons are like the quote about decorators
they allow you to change the way you think about
how and where they can be used.
decorators after all, do nothing that can't be done in py2.2

the thing that jumps out at me about the decorator idea
is the assumption that it will be fine to execute them
at leo load time. does anyone else recall the angst over allowing
scripts to execute at load time? there are several settings
in mod_scripting to decide if buttons should execute & dissapear.
btw, near or late binding of the script is also an option.

pretty much, the defaults are all that are ever used
I'm not aware of any wiki or forum buttons that don't expect the
defaults.
but locally, it could make sense to have an executable leo.
plugins of course can change Leo, and many official pluggins do.
so in practice, a decorator, even without specific limits
on what kind of things it may do and to what is not too different.
IE, you should probably never execute any button, plugin
and now maybe ever load any Leo
especially concidereing that a leo may contain settings
that can virtually wipe out any specific safety setting you have.
maybe settings should have a level of security attached
that simply loading a leo cannot override.
ignorance is bliss. niche markets are immune to viri aren't they?
lets face it, we throw caution to the wind because it is
not easy to decide which if any plugins or buttons are safe.
should they be tested before and probably during each run?
we could try to limit scope and reject any we don't understand.
that is, any that whatever lint process doesn't understand
because if it isn't automatic, it probably won't happen ever.

I also think it would be sweet revenge that decorators become
the preferred way of defining directives.
maybe revenge isn't quite the word.
eventually IPython and Leo users absorbed the change in stride.
nobody at the time @ was being chosen could have imagined
@whatever() possibly allowing the data owner more control over
the interpretation of their nodes. what a concept.
we still have the problem of where or how to hide the script.
starting to sound more like a buttonless button that executes
to create the definition of a directive that accepts arguments.
beyond the wow factor (plenty of that to spare) of the next big
thing, what will they do?
how can they be made safer, should that be necessary.

<> insert the standard disclaimer about irrelevant tangents.
whatever happens will take a fair bit of coding, user education
doc changes that I probably won't be doing in any case.


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to leo-editor@googlegroups.com
To unsubscribe from this group, send email to 
leo-editor+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to