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

## 12.1: About Gri Mode

Gri mode has all the wonderful things you've come to expect from Emacs modes. Here's a brief overview of the features:

- It can complete partially typed commands, builtin variables and synonyms (``gri-complete`', ``M-Tab`') and help you edit the syntax that was thus inserted for you (``gri-option-select`', ``C-c C-o`'; ``gri-option-kill`', ``C-c C-k`').
- It can provide a short help synopsis concerning the command on the current line (``gri-help-this-command`', ``C-c C-h`'), or load the info manual for that command (``gri-info-this-command`', ``C-c C-i`'). It knows the list of all Gri commands, and can provide help or info regarding any of them (``gri-help`', ``C-c M-h`'; ``gri-info`', ``C-c M-i`') using command name completion at the prompt (``Tab`').
- All Gri commands are listed in a pull-down menu from the menubar, which you can use to either enter the text of the selected command, or obtain help or info about it.
- It can help you find an unknown command by listing all containing a given word (``gri-apropos`', ``C-c C-a`').
- It fontifies your Gri code using colour coding.
- It indents if statements, loops, and so on (``gri-indent-line`', ``Tab`').
- It can let you run Gri and view its output without leaving the editor (``gri-run`', ``C-c C-r`'). If an error is encountered, Emacs will rearrange the buffer so the cursor is on the bad line of the Gri command-file.
- If you've already run Gri, and therefore have a PostScript output file, the mode will let you view that file (``gri-view`', ``C-c C-v`') even if that file is compressed.

Thus one never has to leave Emacs; type ``C-c C-r`' to run Gri, and if there is no error, the graph comes up automatically. If there was an error, gri-mode will move editing point to the line with the error and display the error message. Given that the mode can complete partially typed commands, this means a substantial saving in development time.

Inside gri-mode, type ``C-h m`' for help on the mode, including a list of all commands and key definitions.