Gri Mode: editing completed syntax

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.4.5: Editing the syntax output by gri-complete You might wonder what to do with all the bracketed code left behind by ``gri-complete`'. It certainly won't go through the gri parser without error, so you have to edit it out. The tools provided in gri-mode are ``gri-option-select`' (``C-C C-o`') and ``gri-kill-option`' (``C-C C-k`') to narrow in on a particular gri command, given a syntax description left on the line by ``gri-complete`'. The cursor location is used to decide which gri command(s) to narrow to. For example, if ``gri-complete`' is used on the line `dr x a', the result will be a line like
    draw x axis [at bottom|top|{.y. [cm]} [lower|upper]]
This is the gri way of describing many commands at once. The above syntax description is a shortcut formulation for all of:
    draw x axis
    draw x axis at bottom
    draw x axis at bottom top
    draw x axis at bottom bottom
    draw x axis at top
    draw x axis at top top
    draw x axis at top bottom
    draw x axis at .y. cm
    draw x axis at .y. cm lower
    draw x axis at .y. cm upper
The ``gri-option-select`' (``C-C C-o`') command provides easy navigation to select one of these commands. The narrowing process is governed by the cursor position. For example, to get the command narrowed down to
    draw x axis at bottom [lower|upper]
place the cursor somewhere in the word `bottom' and invoke ``gri-option-select`'. To complete the narrowing process, selecting
    draw x axis at bottom lower
move the cursor to some place in the word `lower' and invoke ``gri-option-select again`'. On the other hand, to get
    draw x axis at bottom
you would have put the cursor over either the word `lower' or `upper', and invoke ``gri-kill-option`' (``C-C C-k`') instead. You might want to practice using this example to learn how to do it. If you make a mistake, note that the normal Emacs undo works.