
GLE is an interactive  Graphics Language Editor.
      (for VAX installation see INSTALL.TXT)

GLE is NOT WYSIWYG, it shows you a close approximation to what you
will get, but fonts, line widths, colors may all be slightly incorrect. 

Please send reports of bugs (including the GLE file) to:
		        in%"srghcxp@grv.dsir.govt.nz"

The rest of this file contains version update notices, they are in
REVERSE chronological order.  (e.g. recent changes first)

NOTE: The command is CGLE, but the package is called GLE.

You might find a text only copy of the manual in a file 
called MANUAL.TXT

	Note: if you are ordering coppies of the gle manual please
	pay by bank draft in NZ $'s made out to Industrial Research Ltd.  
			
				Chris Pugmire.
GLE 3.3g (14-May-1994)
------------------------
	Ported to ALPHA OSF/1, some bugs still exist though.
	Merged changes made for gle32 and solaris and linux. 

GLE 3.3f (16-APRIL-1993)
------------------------
	fixed bug on sun's with axis labelling.  
	dviprint -dsx	Sixel graphics driver added to GLE DVIPRINT,
			thanks to:   Evan Wilson,   N Z Dairy Group

	Fixed RETURN statement so that it takes an optional parameter.
	(It always did, but why it used to work I don't know as the
	parameter wasn't optional)

	Added a yaxis option
		yaxis negate
	This is reversed the numbering on the y axis.  For use with
	measurements below ground, where you want zero at the top and 
	positive numbers below the zero.


GLE 3.3e (1-Jan-1993)
----------------------
	Fixed clipping of lines through a log axis.
	Fixed help display which was loosing two lines on multi page
	displays.

GLE3.3D
-------
	Problem with SMOOTH on SUN machines fixed.
	fixed bug with named objects on postscript driver.
	added -nops qalifier to dviprint.


GLE 3.3c (1-Apr-1992)
----------------------
	Fixed problems with large datasets in surface and contour
	Fixed problem with /kern/lower/movexy and other def's
	Fixed bug with   dviprint -depson -hires -nosquash
	Fixed bug with smoothing contours which made lines dissappear.
(20-Sep-1992)
	Fixed bug with UNTIL looping.
	Removed limit of number of 'saved' points.
(1-DEC-1992)
	Fixed tokenizer so "ab\"cdef" would accent the 'c' as expected.

GLE 3.3b (25-Mar-1992)
----------------------
	Bigfile now accepts variables in place of the file name, e.g.
		xxx$ = "test.dat,2,3"
		d1 bigfile xxx$
	Added AUTOSCALE option to bigfile e.g.:
		d1 bifile a.dat line autoscale
	This pre-reads the file to scale the axis, which is slow but
	sometimes required.
	Updated version of inittex.ini which was causing problems with
		/char /def /movexy
	UNIX: install.com now copies graph.idx into system area.
	VMS: dviprint symbol added to CGLE_LOGIN.COM

GLE 3.3a (27-Jan-1992)
----------------------
	Bug: lowercase xnames labels being mis-aligned is fixed.

	Gle now writes out   gletmp.t1 .t2 .t3 .t4 instead of .bak
	so you have four backup versions if something crashes.

	Fixed axis rounding errors for labels, e.g. .1 to .9 step .1
	might occasionally stop at .8
	
	Fixed filled boxes on DVIGLE driver, the filled region wasn't
	being translated if a scale or rotate was being used.

	Added commands:
		fopen, fclose, fread, freadln, fwrite, fwriteln
	E.G.:

	fopen "file.dat" inchan read
	fopen "file.out" outchan write
	until feof(inchan)
		fread inchan x y z
		aline x y
		rline x z
		fwriteln outchan x*2 "y =" y
	next
	fclose inchan
	fclose outchan

	The following accents now work.
		\` \' \v \u \= \^ \. \H \~ \"
	e.g.	
		text P\'e ter

GLE 3.2i (1-Jan-1992)
---------------------
	Improvements made to lstyle for dot matrix and laserjet drivers.
	It now works!, patterns which don't divide into 32 bits and 
	dashlen are both supported.		(Thanks to Frank Evans)

	HPGL driver modified, now supports sizes greater than a3.
	New symbols HPGL_ADDX, HPGL_ADDY add a margin to the plot.  
	These default to .9cm and 1.5cm

	Bug in 'E' format numbers, 5e+7 was interpreted as 5+7 = 12
	instead of 50,000,000  (5e7 was always interpreted correctly)

GLE 3.2g (1-Nov-1991)
---------------------
	All bitmap dot matrix drivers have been re-written:

		dvigle
		dvilj, dvilj300, dviepson, dviep24
	
	They now perform clipping and filling correctly, funny
	glitches in filled characters (texcmr) have been fixed.

	They also support a much wider range of fill styles

	Print the file DVIFILL.GLE to see the supported fill
	options.

	The command syntax has changed, the commands:
		dvilj, dvilj300, dviepson, dviep24
	
	Have been replaced by:
		dviprint -dlj 
		dviprint -dlj -hires		(was dvilj300) 
		dviprint -depson 	
		dviprint -depson -hires		(was dviep24)

	Support for HP-PaintJet printers
	has been added:
		dviprint -dpj

   Usage: dviprint [-depson | -dlj] [-old] [-hires] [-debug] [-output xx.prt]	
		-depson   To produce output for epson printers 
		-dwp      To add tiff image to wp .eps file 
		-dlj      To produce output for HP LaserJet printers 
		-dpj      To produce output for HP PaintJet printers 
		-dover    Overhead transparency mode for PaintJet
		-old	  For old HP Laser Jet printers (no compression)
	 	-hires	  Uses high resolution for that printer (slower)
	 	-wide     If your printer has a wide carriage 
	 	-noflip   Disable's auto flipping 
	 	-nosquash Tries to print it full size
	 	-compress Force internal bitmap compression (slow,saves memory) 
	 	-noff     No form feed
	 	-debug    Prints debug messages
	 	-out x.x  Prints output to file instead of printer port
	
...
	3d Bar graphs are now supported, the commands are:

	bar d1,d2  3d .5 .3  side red,green  notop
	bar d3,d4  3d .5 .3  side red,green top black,white 

	Take note of comma's.

3d  (xoffset yoffset)  
	Specifies the x and y vector used to draw the receding 
	lines, they are defined as fractions of the width of the
	bar.
	A negative xoffset will draw the 3d bar on the left side
	of the bar instead of the right hand side.

side (color list)
	The color of the side of each of the bars in the group.

top (color list)
	The color of the top part of the bar
notop
	Turns off the top part of the bar, use this if you have 
	a stacked bar graph so you only need sides on the lower parts
	of each stack.	

Note:	You won't see the color of the side or top on the pc screen.

GLE 3.2 (6-Mar-1991)
---------------------
      File type changed from STREAM_LF to normal vax format.
	
      SMOOTHM option added which is identical to SMOOTH but
      will allow multi-valued functions. (e.g. circles etc)
	
      TWIDTH("") and THEIGHT("") functions fixed again.

...V3.2b

      DEFINE MARKER myname subnamex
      MARKER myname
      Allows you to define a new marker as any subroutine.

      e.g. to define a character from the postscript ZapDingbats font
      as a marker you would use.

	sub subnamex size mdata
		gsave				! save font and x,y
		set just left font pszd hei size
		t$ = "\char{102}"
		rmove -twidth(t$)/2 -theight(t$)/2  ! Centers marker
		write t$
		grestore			! restores font and x,y
	end sub
		
	The second parameter can be supplied using the MDATA command
	when drawing a graph,  this gives the marker subroutine a 
	value from another dataset to use to draw the marker.  For 
	example the marker could vary in size, or angle, with every
	one plotted.
		d3 MARKER myname MDATA d4

	Encapsulated Postscript option modified so that WordPerfect
	won't clip the edge of the drawing.

	On a PC the /EPS qualifier will now create a file using 
	an extension of .EPS instead of .PS
	
	DEFMARKER mname fontname char_num scale dx dy 
	This command defines a new marker, from any font, it is 
	automatically centered but can be adjusted using dx,dy.
	e.g.
		defmarker hand pszd 43 1 0 0

	Bug in set color in PS devices which caused the 
	color to affect a previous line is fixed.

	Added built in function which returns a string describing 
	the device. e.g. DEVICE$() = "HARDCOPY, PS,"
	on the postscript driver.

	This can be used to use particular fonts etc on appropriate
	devices. E.g.:
		if pos(device$(),"PS,",1)>0 then
			set font psncsb
		end if 

	POS(src$,search$,start) string function fixed (surprise surprise)
	
	The editor now tolerates lines > 80 characters. 
	
	Fixed bug which caused incorrect characters to be drawn
	on pc screen occasionally.
...3.2c
	
	Pressing ESC repeatedly will now abort a redraw operation. (on PC)

	Load and Saveas will now default to .GLE 

	Bug with tex macro replacement fixed.

	Bug with mouse cursor not appearing on HERC screens is fixed.

	WPGLE.EXE added, this command will produce a special output
	file which contains EPS for PostScript printers and a 
	crude bitmap for WordPerfect to display on the screen.

...3.2e
	Fixed some colour mapping and added, purple, orange, pink, brown.

...3.2f
	Modified maximum size of dvilj,dvilj300,dviepson,dviep24 so that
	all can take graphs up to 19cm x 27cm

	Added command line switches

		/nod	(add ^D to ps file)
		/addd	(Don't add ^D to ps file)
		/nomaxpath (Don't choke on complex fill paths)
		/fill	(For dvibit, makes bar's filled instead of shaded)

	Added symbol for PC.
	
		GLE_NOCONTROLD TRUE
		 (Stops ^D being added to ps files)

	(this is the default for unix)
	
	The DCL symbol GLE_NOCONTROLD should be set to "TRUE" to kill the 
	^D on vms systems.

	If you set the DCL symbol GLE_EDITOR to TPU then you will get
	TPU instead of EDT when you press ^E

	You can now tell gle about postscript fonts that you have 
	downloaded into your own printer.

	Lets pretend we are adding a font called Greek-Bold

		1) Download the font into you laser printer
		2) Add a line to FONT.DAT
psgb 86 psgb.fmt plsr.fve psgb.fmt
a    b  c        d
		a = GLE's name for the font
		b = The next unused number in font.dat
		c = The font metric file, this can be created using
			makefmt from and adobe font metric file
			(.afm) which you should have been supplied
			with your font.
		d = The font vector file, this is just a font that
			that gle can use to draw your font on non
			postscript devices.
		3) Add a line to psfont.dat
psgb Greek-Bold
		This tells the postscript driver that this is a 
		font that the printer knows how to deal with.

-----------------------------------------------------------------------------
GLE 3.1e (1-Mar-1990)
----------------------

      Errbars will now work with the bigfile option.

      x2ticks now come back on again if you turn the xaxis off and x2axis on
      (The error bars distances cannot also be a bigfile)

      if you use a let d1 = exp from 1 to 10000 step 1
      with a log xaxis it doesn't produce a smooth line.  GLE now
      checks and if the xaxis is a LOG scale then it uses the
      step option as an approximate required number of intervals which
      it spreads along the xaxis in increasing steps.

      In the graph module, if you use '0' as a column for the x data
      of a bigfile GLE will generate xdata of 1,2,3,4 ...
      e.g.  d1 bigfile a.dat,0,2 

      Data separated with commas and no spaces was being read incorrectly
      The data reading routine has been re-written. (introducing new 
      and more interesting bugs in the process)


GLE 3.1d (19-FEB-1990)
-----------------------

      In the past  "TEXT a\delta b" would have produced a space
      between the delta character and the letter b,  this action
      was incorrect and had been fixed. 
      Use "TEXT a\delta\ b" to get a space.

      "TEXT a(\delta)b" also works now.


GLE 3.1c
---------

      Built in functions twidth("") and theight("") now work.

      Their is now a BIGFILE command for executing large gle files 
      that won't fit into memory using INCLUDE. (note this should
      not be confused with  the BIGFILE graph command).
      e.g.  BIGFILE NZMAP.GLE
      
      As bigfile compiles and executes the gle file one line at a 
      time you cannot use multi line structures (subs, if then else etc)
      but you can call subroutines if they are defined before the bigfile
      statement.

      Lines in bitmap drivers are now the right length (text looks better)

      There is currently a limitation on the size of text or tables that
      can be printed (this may be fixed at a later date)

      The xg() and yg() functions now work if the graph has log axes

      A bug which stopped the last line of a data file being
      read had been fixed.

      Correction to expression passing allows IF A$="ABC" THEN ... to work.

      Added shading styles RSHADE, RSHADE1, RSHADE2 ...(Lines at right angles)


GLE 3.1b
---------

      Fixed the circle fill command so it uses the right colour.
      
      Modified PostScript arrows with wide lines so they look nice.
      They are now filled triangles rather than two short lines.

      There is now an example in BOXR.GLE which shows you how to 
      define a subroutine to draw boxes with rounded corners.

      Horizontal error bars have been added, the commands are
            HERR, HERRLEFT, HERRRIGHT, HERRWIDTH 

      If you had the same subroutine defined twice in a gle
      file it would skip the intervening gle commands, this is fixed.

      Arcto fixed for line devices (hpgl)

      Stacked bargraphs should not contain missing values,  replace
      missing values with the value from the column on the left. e.g.
            1 22 * 45  becomes          1 22 22 45


GLE 3.1a
---------

      Bug with reading exponential format numbers fixed.

      Bigfile option added, so that you can extract particular 
      columns of data from a data file, e.g. 
            D1 LINE BIGFILE TEST.DAT,3,2
      Will use column 3 for x values and column 2 for y values.

      e.g.
'           data x.dat
            d3 line
      becomes
            d3 line bigfile x.dat,1,4
      As dataset three is made from columns 1 and 4.

      The space codes (\: \; \,) are now proportional to the
      current font size.

      text \rule{2}{3}  will draw a box, and \glass can be used
      to offset text.

 
GLE 3.1
--------

      Modified default DPOINTS setting so that if DTICKS is not a 
      whole number it will display one decimal point.
      e.g. (1.0,  1.5,  2.0) instead of (1   1.5   2)

      the  "graph data d2=c3,c1"  option now requires no spaces 
      within the "d1=c1,c2"

      Begin path wasn't issuing a newpath, so multiple paths 
      got added together.

      Gle files can now begin with a numeric character.

      Bug with bitmap drivers fixed (dviepson, dvilj300 etc) which 
      resulted in a stray horizontal line on the page.

      The editor doesn't display long lines correctly,  it does 
      store them though.

      On the PC  the PSGLE driver now writes output files 
      to INPUTFILE.PS instead of out.ps   e.g. bar.gle --> bar.ps

      Added \linegap{-1} tex primitive to stop odd spaces lines
      when using super/subscripts.
      vscale and hscale were not being reset after each graph.


      Some of the characters which were missing from the PLOTTER fonts
      have now been installed (e.g.  []{}<>% )

      You can no add lines and text to a drawing using the mouse or arrow
      keys on the PC version of gle. 

      There is now a graph command, FULLSIZE which sets 
      vscale,hscale to 1,  and turns the border off.


GLE 3.0h
---------

      Fixed bug with LSTYLE in PSGLE (on the pc only)

      You can change the size of the default key by setting the
      hei of text used to draw the key. e.g.
      begin graph
            ...
            key hei 1.2
      end graph

      If the value of an error bar length is a missing value then that 
      particular bar won't be drawn.

      If you escape out of the idiot graph creation menu it will now 
      correctly put an END GRAPH in your file.

      Line and Grid shading has been added to the postscript 
      device driver, the following colour names are now accepted.

      shade,shade1,shade2,shade3,shade4,shade5
      grid,grid1,grid2,grid3,grid4,grid5

      e.g. BAR 2 3 FILL GRID3

      Print the example file SHADE.GLE on a postscript printer 
      and stick it on the wall for reference.  ($ cgle shade /print)

      Bug with changing diskdrives on a PC is fixed.

      The fonts SSBI and SSI were reversed on the laser printer.

      There is now an axis qualifier SHIFT for shifting the labelling
      horizontally (when the label refers to the data between the 
      two ticks) e.g.
            xaxis shift .4

      In order to put a large space between two words you must 
      use these control sequences e.g.  TEXT  Hello \; world
            \,   =     .1cm
            \:   =     .2cm
            \;   =     .4cm

      Use \_ to get an underscore character inside text
      ("_" normally means subscript) 

      Fixed X2AXIS SIDE ON 

      HPGL Plotter pens 1=black, 2=red, 3=green, 4=blue, 5=magenta, 6=white

      Bug fixed in linestyles caused by the cap being set to ROUND which 
      merges the dashes together for wide lines on the laser printer.


GLE 3.0g
---------

      Fixed bug with smoothing more that 200 points
      Fixed bug with joining between saved objects.

When using the plotter fonts you may find some characters are missing,
      e.g.  %,[ and ]  (These have now been put into these fonts V3.1)
The following command will replace these characters with latex equivalents.
      size 24 18
      text \chardef{%}{{\setfont{texcmr}\char{37}}}
      text \chardef{[}{{\setfont{texcmr}\char{91}}}
      text \chardef{]}{{\setfont{texcmr}\char{93}}}
      ... rest of gle file


GLE 3.0e (17-Sep-1990)
-----------------------

Missing values are not used to calculate new dataset values during 
a let command (e.g.  "let d3 = sin(d2)")

Fixed bug in LOG data display.  (If you have used LOG axis prior to 
this release you SHOULD replot your graphs)

The bigfile option now works with markers as well as lines.
            (e.g.  "d3 bigfile "year.dat" lstyle 1 marker dot ")


GLE 3.0d (5-SEP-1990)
----------------------

The default labelling of axes is sometimes not ideal, for example
      0     0.333333   0.6666667        1.0
you can now adjust this with the command "XAXIS DPOINTS 3" which sets 
the decimal places for an axis.  e.g.
      0.000 0.3330.666   1.000

The MSCALE option now works.

Markers have been reduced in size, this will affect existing gle 
files, they are now approx 60% of there original size.

The bigfile option now works on postscript printers, there was a bug 
caused by sending an entire 10,000 point curve to the printer as one path
which it choked on if it was short of memory.

You will occasionally get an error message "PATH TOO COMPLEX" this means
that GLE decided to split up a line into shorter segments.  Normally
this WARNING can be ignored.

The default axis labelling of  1, 1.5, 2  has been changed to  1.0, 1.5, 2.0
Exponent axis labelling has been fixed 2.00000e4 becomes 2.0e4 

      *** NEW DEVICE DRIVERS ***

GLE now supports the EPSON 8PIN and 24Pin printers, and the 
HP deskjet/laserjet printers.  To support bitmap devices which require
a large amount of memory GLE first writes a device independent file
OUT.DVI, you then run the bitmap driver for your printer and that prints
directly to LPT1:  e.g.
      C:\GLE> dvigle myfile        (produces OUT.DVI)
      C:\GLE> dviepson       (creates bitmap and prints to lpt1)

The output options are:
      C:\GLE> DVIEPSON Standard epson printer
      C:\GLE> DVIEP24        24 Pin epson printers (180 dpi)
      C:\GLE> DVILJ          HP Laser jet, Desk jet (150 dpi)
      C:\GLE> DVILJ300 HP Laser jet, Desk jet (300 dpi)
The hi resolution drivers are significantly slower (2-3 times) than the 
low resolution drivers so would only be used for final copies.

By default the fonts (RM, RMB, SS, TT etc) will all map to PLSR (plotter 
simplex roman) on both bitmap drivers and the HPGL driver.
If you want this to happen on other drivers then put the
command "PLOTTER FONTS" right after your SIZE command in your gle file.

An lwidth of .00001 on a laser printer will give you 1 pixel width lines.
(and won't occasionally round to two pixels)

Using Postscript and HP drivers on the PC:
      C:\GLE\> PSGLE MYFILE.GLE    (Writes myfile.ps)
      C:\GLE\> HPGLE myfile.gle    (Writes out.hp)

Making a 360K distribution diskette from the 1.2M diskette.
(if a: = 1.2Meg disk,  b: = 360K disk)
      a:> copy a:install.exe b:
      a:> copy a:pkunzip.exe b:
      a:> copy a:gle1.zip    b:
      a:> copy a:gle2.zip   b:
      a:> copy a:gle3.zip   b:
      a:> copy a:gle4.zip   b:

To install GLE on a pc type:
      C:\> a:install 


GLE 3.0c
---------

Bug with LaTeX symbols in graph titles fixed. 

Extra graph dataset qualifiers "BIGFILE and NOMISS"
      NOMISS removes missing values from a dataset.  (so disjointed lines
      are re-connected)  (e.g.  "d3 colour red nomiss")
      BIGFILE allows a very large dataset to be drawn on a PC, it doesn't
      read the dataset into memory as usual.  (but must be in a file 
      with only one dataset, and no BARS or markers can be drawn.
      And axis ranges must be specified by hand.
      (e.g.  "d3 bigfile "year.dat" lstyle 1")

Fonts:      The LaTeX greek font is missing from the small distribution disk.
      It is now possible to copy on any missing font directly into the 
      c:\gle\font\ directory. Copy both the FMT and FVE files. 
      e.g. "texcmmi.fmt, texcmmi.fve"

      set join mitre | round | bevel
      set cap but | round | square

Fixed:
      Superscript, Subscript
      Symbols on Laser Printer after white fill.
      Individual dataset scaling fixed.
      
Notes on new Drivers:  HPGL, TEK4010, P79.
      HPGL: With this driver you can define the symbols
            hpgl_open, hpgl_close to be the escape
            sequences required for strange hp printers.
            also HPGL_WIDTH, and HPGL_HEIGHT for non A3 plotters
      
      TEK:  TEK_OPEN and TEK_CLOSE can be defined to allow
            non dec tektronix terminals, e.g. TEK_OPEN = "^[?38h"

      (this is normally done in CGLECMD.COM so that when you specify
      /DEV=V550, OR /DEV=HPA4 it defines the symbols for you.

      On the vax the following cgle dev qualifiers are valid:

            cgle myfile.gle /dev=vdisk,v550,hpgl,tek
      Plus any P79 supported device, your output file will be  MYFILE.HPGL


GLE 3.0b
---------

2) Currently supported devices:
      PC version:
            HERC, EGA, CGA, etc (any BGI supported display)
            PostScript
      VAX version:
            REGIS(VT125,VT240,VT340 etc)
            UIS  (Workstations running VWS software)
            PostScript
      (additions to this list lower down)
3) Fonts:
      The PC version comes on one 360K floppy, on this disk is a 
      subset of fonts, if you use a font that isn't on this disk
      it will use a replacement font, and replacement metrics so
      the size of the text may be misleading.
      If you have enough disk space (another 1Meg) then you can
      install the complete font set.

4) PostScript:
      The PSGLE driver is not on the 360K Floppy, you must install 
      it separately if you have enough disk space (another 400K)
      (or copy gle and data files to a VAX and use the vax
      PS driver)

5) Using GLE on a VT100/VT240
      If your keyboard doesn't have function keys (f9-f14) then you
      can use GOLD 1-4 (for 11-14) and GOLD 0 (for f10) and
      GOLD 9 (for F9)  GOLD 5 (show errors)

      If you run GLE on a vt100 it will work OK but not actually DRAW
      anything on the screen (as it thinks it's a vt240)

6) Other keyboard features:
      ^F will toggle between fast and slow (but nicer text) on some devices
      ^E will call VAX/EDT
      ^Z Exits from all menu's etc (like ESC on a PC)
      ALT-X Exits on a PC without asking you for confirmation.

7) There are currently no drivers for Plotters or DotMatrix Printers, 
these are planned for the next month or two   (see update notices below)

8) Additions:
      The command "SET FONTLWIDTH value"  has been added, this allows
the line width of stroked fonts to be changed.

