LispWorks Delivery User Guide > 9 Delivery and Internal Systems > 9.2 Editors for delivered applications

NextPrevUpTopContentsIndex

9.2.3 Editor command groups

If any part of the editor is present in the image, every editor command that has been loaded will be kept in the delivered image. Two deliver keywords allow you to specify which commands to keep and which commands to delete:

:editor-commands-to-keep (default nil)

:editor-commands-to-delete (default :all-groups)

The effect of these default values is that all the commands are deleted. If a command is both these lists, it is kept.

To get rid of editor commands, use the keyword argument :editor-commmands-to-delete to deliver .

Deleting a command does not automatically delete the associated function. For example, the function editor:do-something-command could be called by the application even if the command "Do Something" has been deleted.

The function itself is only deleted if it is not referenced elsewhere in the application or if it is removed explicitly. Therefore, an application which uses the editor in a non-interactive or limited interactive manner can delete all or most of the editor commands. Note also that key bindings associate key sequences with commands and not functions, so if a command is deleted any sequences bound to it will no longer work. For consistency, the delivery process unbinds them too.

The keyword :editor-commands-to-delete is processed in different ways depending on the sort of value passed:

List value

Process each element of the list. (Thus the list is traversed recursively.)

String value

The corresponding editor command is deleted.

Symbol value

Taken to specify a Command Group.

The available Command Groups are:

:simple-editor

The simple editor contains basic mechanisms for editing text files, including regions, buffers and windows, movement, insertion and removal commands, key bindings, the echo area and extended commands (such as Alt+X ), file handling commands, filling and indenting, and undo.

:full-editor

The full editor has all the facilities of the simple editor, and adds handling for Lisp forms, auto-save help and other documentation commands searching, including the system based search commands, tags support, and support for interactive modes.

:extended-editor

The extended editor adds Lisp introspection to those features: arglists, evaluate, trace, walk-form, symbol completion, dspecs, callers and callees, buffer changes, and hooks into the inspector and class, generic function, and system browsers.

:demand-loaded

Commands present in the standard LispWorks image only if they are demand loaded.

:tools

Commands supporting tools which must be explicitly loaded on top of the editor, for example the listener.

:exclude

Commands always deleted by the delivery process, for example, compilation commands.


LispWorks Delivery User Guide - 22 Dec 2009

NextPrevUpTopContentsIndex