|
From: Mojca M. <moj...@gm...> - 2006-06-14 03:15:59
|
Hello,
last time when Ethan mentioned the 4.2 release again, I submitted the
code for the ConTeXt terminal to the patches, but as I supposed it's
not that obvious how to test it since one has to install ConTeXt first
(and hope for proper system settings and no bugs in my code or ConTeXt
itself).
If you freeze the code next week, I can't fix everything properly, but
if you plan to release it in a month or so, I can try to finish it by
then if you are ready to take the terminal into account for the
release.
The whole point is that the terminal is pretty independent of Gnuplot
itself (i.e. rendering of graphics is done outside of gnuplot, the
terminal only "[de]optimizes" the code). For example, the linetype
only outputs
gp_set_linetype($linetype);
the point only outputs
gp_point($x,$y,$pointtype);
and the rest is taken care of outside of gnuplot and can be modified
rather quickly if a bug is spotted (serious bugs might be such as the
problem with unproperly free-d "header" when I copied the code from
epslatex, or some complex feature like "3D"; other bugs are not
exluded either, but most probably most bugs lie outside of C source
itself)
Many bugs have been fixed in ConTeXt after I complained about
non-working gnuplot module and quite some things are being improved
constantly in both ConTeXt and pdfTeX which will hopefully speed up
everything. (TeX was not made with graphics in mind, so compiling the
output from ConTeXt terminal is currently pretty slow and often runs
out of TeX memmory.) But just today I got a fix from the developer
that speeds up compilation time for approximately 4 times.
I'm not so good in programming, but I tried to do thing as flexible as
possible, so that the terminal depends on the gnuplot binary as little
as possible. Further development and finetuning might be added any
time in ConTeXt itself then.
What I'm ready to do in the pretty near future (ie. things without
which the terminal may not be added to the repository):
- finish implementation of palettes
- [not critical] do some simple "set term context size Xcm,Ycm", most
probably using Ethan's parse_size
- [important, not much work] complete the help and clean the source
- [thinking, not really implementation problem] change the beginning
and end of files, so that I can assure backward-compatibility later
- [important] sligthly patch text labels
- parsing font size for determining HCHAR, VCHAR
Something rather important is also an option to split labels from
graphics for efficiency, but I'll sacrifice that if I run out of time.
Things to be left for later:
- "with image" (I have to wait for a new pdftex primitive or do some
postprocessing if I want to implement it efficiently)
- more robust guessing of label widths and heights
- do something similar as LaTeX+PostScript merge and add option to use
MetaPost or PostScript as background image where only ConTeXt labels
and/or would be used
- ...
Lots of things and improvements are still to be done outside the
binary, but I can do that any time later.
Is adding that terminal stil doable for the 4.2 release?
Thanks a lot,
Mojca
|