{Begin Chapter List Structure Editor}
{Title List Structure Editor}
{Text

{index *PRIMARY* List structure editor}

Many important objects such as function definitions, property lists, and variable values are represented as list structures.  The Interlisp-D environment includes a list structure editor to allow the user to rapidly and conveniently modify list structures.

The list structure editor is most often used to edit function definitions.  Editing function definitions "in core" is a facility not offered by many lisp systems, where typically the user edits external text files containing function definitions, and then loads them into the environment.  In Interlisp, function definitions are edited in the environment, and written to an external file using the file package ({PageRef Term File package}), which provides a complex set of tools for managing function definitions.

{index *PRIMARY* Teletype list structure editor}

Early implementations of Interlisp using primitive terminals offered a teletype-oriented editor, which included a large set of cryptic commands for printing different parts of a list structure, searching a list, replacing elements, etc.  Interlisp-D includes an extended, display-oriented version of the teletype list structure editor, called DEdit.  The teletype editor is still available, as it offers a facility for doing complex modifications of program structure under program control.  For example, {fn BREAKIN} ({PageRef Fn BREAKIN}) calls the teletype editor to insert a function break within the body of a function.  DEdit also provides facilities for using the complex teletype editor commands from within DEdit.  By calling the function {fn EDITMODE} ({PageRef Fn EDITMODE}) it is possible to set the "default editor" ({lisp TELETYPE} or {lisp DISPLAY}) called by Masterscope, the break package, etc.

This chapter documents both DEdit and the teletype list structure editor (sometimes referred to as "Edit").  The first part documents DEdit, the most commonly used editor of the two.  Then, there are a large number of sections describing the commands of the older teletype editor.  Most users will only need to reference the DEdit documentation.

{Include Dedit}

{Include EditorATTNcoms}

{Include EditorMODcoms}

{Include EditorMisc}

{Include EditorFns}


}{End Chapter List Structure Editor}