On Thu, Dec 10, 1998 at 01:01:41PM +0100, Asger Alstrup Nielsen wrote:
>
> The "only" serious problem is to decide whether Python should be mandatory
> or optional. (We have to solve this problem for any scripting language
> which can't be included in the distribution.)
>
I don't *really* think there's anything wrong with having features that you
need another package for. For example, you need Perl to use reLyX. I guess
there is a danger of people writing too many things for scripting, which
others then won't be able to use, but (1) LyX can already do plenty by itself,
and (2) that will just convince people to download the new thing.
I can say, however, that each new package you need to download and install is
one more annoyance which can keep people from bothering to use LyX.
> The potential for an optional scripting language is still large, and I
> think this should probably be the way we go. For instance, one can imagine
> a syntax highlighting feature in the LyXCode environment, and a "make"
> command that extracted the code in these environments into a file and
> compiled it. I.e. a literate programming extensions.
These sound really cool.
Again, this stuff is over my head, but I hope you're taking Richard's &
Jean-Marc's suggestion seriously. If it's possible to, say, have a Python,
Perl, etc. template for starting the lyxserver, such that people could just
use those and modify them to their desired functionality, plus perhaps some
gui support to run them from within lyx... then you wouldn't have the whole
library problem, or the picking just one language problem.
Don't worry, I'll probably learn Python anyway. After I'm done with C++ :)
> Also, there is an issue of whether we should aim for 1.0, or for 1.2.
> Doing it for 1.0 would be relatively easy, so it would not postpone it
> much, but on the other hand, it's not something we really need.
>
> Also, there is a risk that the API we define for the scripting language
> to access the internal document structure will change, and this would
> break any scripts for 1.0 when it comes to 1.2.
It might be easy to add to 1.0, and a working graphical tutorial that came in
the distribution w/out adding 1.5 MB would be killer, but I really think we
should get 1.0 OUT there. We can always put it in 1.0.1. Even if it wouldn't
postpone it much, it would still postpone it. I've been telling people "1.0 is
coming out RSN" for way too long. And if we wait for this, some new easy to
add useful feature will come up. That plus the API issue (which is a good
point, since this is a relatively new idea) seem pretty convincing reasons to
postpone this until after the release.
Instead, Asger, you can work on the Python port of reLyX, OK?
> > And the only
> > comparable "scripting" that I've seen is the command language in xmgr (aka
> > grace). It has a very simple syntax, so that the whole language can fit on
> > one (long) html page in the docs.
>
> Do you have a link?
The grace web site is (used to be?)
http://plasma-gate.weizmann.ac.il/Grace
However, I'm unable to reach it either from my bookmark or from the results in
the search engine at weizmann.ac.il. I think their server must be down or
something.
An old version of the command syntax is here:
http://voth.chem.utah.edu/~karger/xmgrdoc/commands.html
Basically, the command syntax is the same as the parameter format with which
they save their graphs. So you can embed commands into a graph and vice versa.
Pretty neat. But very simple. Grace comes with an example shell script that
just executes grace with a bunch of grace scripts. I.e., it runs grace a bunch
of times, and each time displays a graph with some interesting features,
strings or legends or multiple graphs, etc. But as I've said, that sort of
thing may be too simple for what you want the lyx scripter to do.
-Amir