Contrib screen editing commands

The following commands are useful for interactive examination and editing of the contents of Dervish objects and chains. You should be using a VT100 compatible terminal for these commands to work properly. An xterm is OK, but I sometimes find that it helps to type "setenv TERM vt100" (before firing up dervish) anyway. When editing an object, the following keys are active:

  • All arrow keys
  • <CR> Return to beginning of line. If already at the beginning, go to the next line.
  • <CTRL-Z> Exit from screen and return to previous screen (if any)
  • <CTRL-K> Clear line
  • <CTRL-L> Follow a pointer. A new screen is displayed with the contents of the pointed-to object.
  • <CTRL-C> Abort the screen editing
  • <CTRL-R> Refresh screen
  • <CTRL-X> Update contents of the object.
  • <CTRL-A> Align field - shift the display so that column 1 of the current field is at the left edge of the screen
  • <CTRL-F> Cycle to the next field in the display
  • <CTRL-N> When editing chains, go to the next element on the chain
  • <CTRL_D> Page down (for long objects)
  • <CTRL_U> Page up (for long objects)
  • screenEdit The basic command for displaying and editing on a VT100 screen (not normally called directly by a user)

    The following are TCL procedures that are normally called by a user:

  • structsEdit
  • chainPage
  • chainEdit
  • schemaEdit
  • ***************************************************************

    structsEdit

    Display and edit the contents of a Dervish object.
    
    	Usage:	structsEdit hndl {outline ""}
    
    	hndl:	A handle to an arbitrary Dervish object
    	outline:	Don't bother with this
    
    ***************************************************************************
    

    chainPage

    Step through the elements of a chain and display them one-by-one.  The
    <CTRL-N> and <CTRL-P> keys are used to advance or reverse
    along the chain.
    
    	Usage:	chainPage chainHandle
    
    	chainHandle:	Handle to a chain
    
    ***************************************************************************
    

    chainEdit

    Create a display with one line per object on a chain; the value of
    the element "field" from each object is displayed on each line
    
    	Usage:	chainEdit chainHandle {field ""}
    
    	chainHandle:	Handle to a chain
    	field:		Name of the field in each object to be displayed
    
    ***************************************************************************
    

    schemaEdit

    Display a schema definition.  The keys <CTRL-N> and <CTRL-P>
    are used to move up and down embedded structures and arrays.
    
    	Usage:	schemaEdit schemaElem {inline ""}
    
    	schemaElem:	A Dervish TYPE
    	inline:		I forget
    ***************************************************************************