[========================================================================] [========= List of things to be done. Plans, ideas, whatever... ========] [========================================================================] COMMANDS: ========= DOCUMENTATION: ============== Recently I've moved importants things from README.os2 into gnuplot.doc and INSTALL; those other README.{win, xli, nex} should be dispersed similarly. Who can do it? -- docs/old/README.3d -- docs/old/README.fit These should be be edited and pasted into gnuplot.doc and then removed. TERMINALS: ========== Amiga: -- update its docs from docs/old/README.ami, then delete this file Emx: -- update its docs from docs/old/README.emx, then delete this file (g)pic: -- update its docs from docs/old/README.pic, then delete this file Metafont: -- update its docs from docs/old/README.mf, then delete this file NeXTstep: -- update its docs from docs/old/README.nex, then delete this file Pstricks: -- Patch 559611 color + variable pointsize in pstricks Can somebody comment on this? Windows: -- update its docs from docs/old/README.win, then delete this file -- windows driver does not report font size to windows.trm, thus character widht and height are quite useless numbers -- update wgnuplot menus -- repair the linetype bug in wgraph.c --- crash for set style fill solid border plot [-2.5:4.5] 100/(1.0+x*x) with boxes lt -1 or set style fill solid noborder plot [-2.5:4.5] 100/(1.0+x*x) with boxes lt -1 or set style fill empty plot [-2.5:4.5] 100/(1.0+x*x) with boxes lt -1 -- windows "Pause -1": it works very strange if you press <enter> while having the mouse cursor out of the graph window. Mainly users running demos complain about this. This bug is associated to BUG 561418 "(MS Windows) 100% CPU Usage during pause", and to HBB 20001217's note about WaitMessage(); in wpause.c. TERMINALS, GENERAL COMMENTS: ============================ -- verify that terminals don't reset options (I've checked a lot, but should be tested again) -- verify that color and pointtype sequence is unified, alias similar line and point type sequences for the main terminal drivers GNUPLOT TOOLS LIBRARY: ====================== Make a library (e.g. usr/local/gnuplot/scripts/, .../gnuplot/bin) of (a) gnuplot scripts, and (b) shell scripts relevant for gnuplot: -- enclose script "gpsavediff" that diff's output of gnuplot's "save" command and default setup after "reset" -- move pm3d/contrib/* files into the proposed gnuplot library, then remove pm3d/contrib and pm3d/ from cvs I.e., the last point is the main question: where to put pm3d/contrib/* files? Or put them to gnuplot web page? INSTALLATION --- LINUX: ======================= -- add .spec file and a 'make' target to create RPM file? [HBB: no.] INSTALLATION --- VMS: ===================== -- bring configure.vms in sync with current configure.in [========================================================================] [========================================================================] [========================================================================] Note: use www.sourceforge.net/projects/gnuplot => "Feature request" for feature requests. Projects, in no particular order: - revise border command to use keywords - put minor tics into demo file longer term - break it into four layers: : low level graphics (some of term.c) : plotting code, reading the setshow.h global variables : parsing code - read a string, and parse and execute it : front end, interact with terminal / gui basically, gplotlib is layer 2, and the traditional gnuplot is layer 4, which is little more than a small client of layer 3. Terminal option lines are table driven, so that even though the options are defined by layer 1, the actual parsing is implemented in level 3 Lars' list - provide library of replacement functions instead of stdfn.c - fully switch to automake [docs left to do, won't do lisp] - completely rewrite the parser. Use yacc/bison if possible. - maybe rewrite the scanner in lex? The benefits are not so obvious, because the current scanner is extremely simple. This is probably only worthwhile if the parser is rewritten at the same time. - maybe use PD hash code for table-lookup (SNIPPETS code). Tables for builtin and user functions, variables, commands. What else? aliases - standardise float/double comparisons around the suggestion in the comp.lang.c FAQ (What's a good way to check for "close enough" floating-point equality?) and symbolic constants from standard header files. LOADS of errors throughout the code, especially in graphics.c - autogenerate term.h from config file in text format and/or configure? - general expansion of user defined and environment vars in labels? - write or organise a portable version of snprintf(3) with a copyright compatible with the gnuplot copyright (ie. no GPL) (Apache?) - add more maintainer checks (eg. file permissions) - better lisp/ files integration (Makefile target to import Bruce's latest version). How to handle duplicates? - better documentation format; get rid of the doc2xxx utils [SGML. SGML. SGML] - tilde and variable expansion to be done by gp_fopen() - to be implemented - fix bug which prints "DI,1DI,0" in the upper left corner of the plot when in pcl5 mode and printing to an HP Laserjet 4+ (J. Breeding, bug-gnuplot) [HBB: reason known, but proper workaround path unclear] HBB: [Optional:] See if 16-bit compilations can be made to work again. Ethan's List (2009): - separate out the handling of junk, NaN, Inf, and missing data entries - you should be able to set a default style for arrows and labels - isosurfaces (3D contour of 4D data) - fix emf text handling to match other terminals (vertical centering, enhanced) - javascript mousing support integrated with svg output (low priority now that the canvas terminal supports mousing). - pdflatex driver - user-configuration options, e.g. permanently redefine line and point properties and sequence - allow the user to assign arbitrary coordinate transforms to the axes - more demos and more comprehensible descriptions in the user manual - update the FAQ!