Chapters:
1: Introduction
2: Simple example
3: Invocation
4: Finer Control
5: X-Y Plots
6: Contour Plots
7: Image Plots
8: Examples
9: Gri Commands
10: Programming
11: Environment
12: Emacs Mode
13: History
14: Installation
15: Gri Bugs
16: Test Suite
17: Gri in Press
18: Acknowledgments
19: License
Indices:
Concepts
Commands
Variables

## 14.2: Archiving Old Versions

Gri, like other complex programs, sometimes changes in such a way as to break old scripts. This is less so of changes since about 1998 or so, since the syntax became pretty firm about that time.

Still, disk costs are so cheap that you would be well-advised to keep a backup version of Gri, whenever you update. This is pretty simple; you need to keep a copy of the executable and the library file, and you need to write a tiny shellscript that calls this particular executable with this particular library file. For example, you might do the following

    mkdir -m 755 -p           /usr/local/share/gri/2.12.1
    cp /usr/bin/gri           /usr/local/share/gri/2.12.1
    cp /usr/share/gri/gri.cmd /usr/local/share/gri/2.12.1

and then create a shellscript called ``/usr/local/bin/gri-2.12.1`' containing

    #!/usr/bin/sh
    /usr/local/share/gri/2.12.1/gri \
        -directory /usr/local/share/gri/2.12.1 \
        "$@"

to invoke this version of Gri.

To be able to access this old version of gri from within the Emacs gri-mode, you would reset the Emacs variable ``gri*directory-tree`' like so in the file ``~/.emacs`' (see Step 2 in see Installing gri-mode.el)

    (setq gri*directory-tree
        '("/usr/local/share/gri/" "/usr/share/gri/"))