LispWorks IDE User Guide

NextPrevTopIndex

Contents

Preface

1 Introduction

1.1 Major tools

1.1.1 The Listener

1.1.2 The Editor

1.1.3 The Class Browser

1.1.4 The Output Browser

1.1.5 The Inspector

1.1.6 The Object Clipboard

2 A Short Tutorial

2.1 Starting the environment

2.1.1 The Lisp Monitor

2.2 Creating a Listener

2.3 Using the Debugger

2.4 Viewing output

2.5 Inspecting objects using the Inspector

2.6 Examining classes in the Class Browser

2.7 Summary

3 Common Features

3.1 Displaying tool windows

3.1.1 Displaying existing windows

3.1.2 Iconifying existing windows

3.1.3 Displaying tools using the mouse

3.1.4 Displaying tools using the keyboard

3.1.4.1 Tool accelerator modifier keys

3.1.4.2 Tool accelerator keys

3.1.4.3 Special considerations when using tool accelerators

3.1.5 Re-using tool windows

3.1.5.1 Global control of re-use

3.1.5.2 Per-window control of re-use

3.1.6 Toolbar configurations

3.1.7 Copying windows

3.1.8 Closing windows

3.1.9 Updating windows

3.2 Setting preferences

3.2.1 General options

3.2.1.1 The window options

3.2.1.2 Controlling completion behavior

3.2.1.3 Quitting the environment

3.2.1.4 Automatic filters on dialogs

3.2.1.5 Automatic use of Find Definitions view

3.2.1.6 Initialization file

3.2.2 Configuring the editor emulation

3.2.2.1 Choosing the key input style

3.2.2.2 Setting the cursor blink rate

3.2.3 Setting the editor font, color and other style attributes

3.2.3.1 Setting the text style attributes

3.2.3.2 Controlling parenthesis coloring

3.2.4 Setting the default encodings

3.3 Performing editing functions

3.3.1 Undoing changes

3.3.2 Using the clipboard

3.3.3 Using the Object operations with the clipboard

3.3.4 Selecting text and objects

3.3.5 Searching for text and objects

3.4 The Break gesture

3.5 The history list

3.5.1 Repeating events from the history list

3.5.2 Editing the history list

3.6 Operating on files

3.7 Displaying packages

3.7.1 Specifying a package

3.8 Performing operations on selected objects

3.8.1 Operations available

3.9 Using different views

3.9.1 Sorting items in views

3.10 Tracing symbols from tools

3.11 Linking tools together

3.12 Filtering information

3.12.1 Plain Filtering

3.12.2 Advanced Filtering

3.13 Regexp matching

3.13.1 Regular expression syntax

3.13.2 Regexp and plain string matching

3.14 Completion

3.14.1 Invoking completion

3.14.2 Selecting the completed input

3.14.2.1 In-place completion

3.14.2.2 Filtering in-place completion

3.14.3 Completion dialog

3.14.3.1 Filtering modal dialog completion

3.15 Examining a window

4 Getting Help

4.1 Online manuals in HTML format

4.1.1 Browsing manuals online

4.1.2 Searching the online manuals

4.1.3 Getting help on the current tool

4.1.4 Getting help on the current symbol

4.1.5 Getting help from the LispWorks website

4.1.6 Getting patches from the LispWorks website

4.1.7 Configuring the browser used

4.2 Online help for editor commands

4.3 Browsing manuals online using Adobe Reader

4.4 Reporting bugs

5 Session Saving

5.1 What session saving does

5.2 The default session

5.3 What is saved and what is not saved

5.4 Saving sessions

5.4.1 Scheduling automatic session saving

5.4.2 The Save Session dialog and actual saving

5.4.3 Saving a session interactively

5.5 Redirecting images to a Saved Session image

5.6 Non-IDE interfaces and session saving

6 Manipulating Graphs

6.1 An overview of graphs

6.2 Searching graphs

6.3 Expanding and collapsing graphs

6.3.1 Expanding and collapsing by clicking

6.3.2 Expanding and collapsing by menu commands

6.4 Moving nodes in graphs

6.5 Displaying plans of graphs

6.6 Preferences for graphs

6.6.1 Altering the depth and breadth of graphs

6.6.2 Displaying different graph layouts

6.7 Using graphs in your programs

7 The Podium

7.1 The podium window

7.2 Specifying the initial tools

8 The Class Browser

8.1 Simple use of the Class Browser

8.1.1 Examining slots

8.1.2 Examining inherited slots

8.1.3 Filtering slot information

8.1.4 Examining other classes

8.1.5 Sorting information

8.2 Examining slot information

8.2.1 Class box

8.2.2 Filter area

8.2.3 Slots list

8.2.4 Description list

8.2.5 Performing operations on the current class

8.3 Examining superclasses and subclasses

8.3.1 Class box

8.3.2 Superclasses list

8.3.3 Subclasses list

8.3.4 Description list

8.3.5 Performing operations on the selected classes or the current class

8.4 Examining classes graphically

8.4.1 Class box

8.4.2 Subclasses and superclasses graphs

8.4.3 Description list

8.4.4 Performing operations on the selected classes or the current class

8.4.5 An example

8.5 Examining generic functions and methods

8.5.1 Class box

8.5.2 Filter box

8.5.3 List of functions or methods

8.5.4 Description list

8.5.5 Performing operations on the current class

8.5.6 Operations specific to the current function or method

8.6 Examining initargs

8.6.1 Class box

8.6.2 Filter box

8.6.3 List of initargs

8.6.4 Description list

8.6.5 Performing operations on the current class

8.7 Examining class precedences

8.7.1 Class box

8.7.2 Filter box

8.7.3 List of precedences

8.7.4 Description list

8.7.5 Performing operations on the selected classes or the current class

9 The Object Clipboard

9.1 Placing objects on the Object Clipboard

9.1.1 The Listener

9.1.2 The Class Browser

9.1.3 The Inspector

9.1.4 The Function Call Browser

9.1.5 The Generic Function Browser

9.1.6 The Debugger

9.1.7 The Stepper

9.1.8 The System Browser

9.1.9 General clipping

9.2 Browsing clipped objects

9.2.1 The Inspector

9.2.2 The Class Browser

9.2.3 The Listener

9.2.4 General browsing

9.2.5 Pasting of clipped objects

9.3 Removing objects

9.4 Filtering

9.5 Using the Object Clipboard with a Listener

10 The Compilation Conditions Browser

10.1 Introduction

10.2 Examining error conditions

10.3 Configuring the display

10.3.1 Display preferences

10.3.2 Condition type preferences

10.4 Access to other tools

11 The Debugger Tool

11.1 Description of the Debugger

11.1.1 Condition box

11.1.2 Backtrace area

11.1.2.1 Frames and Variables in a tree

11.1.2.2 Frames and Variables in two lists

11.1.3 Toolbar buttons

11.2 What the Debugger tool does

11.3 Simple use of the Debugger tool

11.4 The stack in the Debugger

11.5 An example debugging session

11.6 Performing operations on the error condition

11.7 Performing operations on stack frames

11.7.1 Source location, documentation, inspect and method combination for the current frame

11.7.2 Restarts and returning from the frame

11.7.3 Tracing the function in the frame

11.8 Performing operations on frame variables

11.9 Configuring the debugger tool

11.9.1 Configuring the call frames displayed

11.9.2 Displaying package information

11.9.3 Behavior on closing the Debugger

11.9.4 Frames and variables display

11.10 The Notifier window

12 The Tracer

12.1 Introduction

12.2 Tracing and Untracing functions

12.2.1 Tracing methods

12.3 Examining the output of tracing

12.3.1 The Output Data view

12.3.2 The Output Text view

12.4 Example

13 The Editor

13.1 Displaying and editing files

13.1.1 The toolbar

13.1.2 The editor window

13.1.3 The echo area

13.1.4 Using keyboard commands

13.2 Displaying output messages in the Editor

13.3 Displaying and swapping between buffers

13.3.1 Filter area

13.3.2 Buffers area

13.4 Displaying Common Lisp definitions

13.4.1 Filter box

13.4.2 Definitions area

13.5 Changed definitions

13.5.1 Setting the reference point for changed definitions

13.6 Finding definitions

13.7 Setting Editor preferences

13.7.1 Controlling other aspects of the Editor

13.7.2 Controlling options specific to the Editor

13.7.2.1 Sorting items in lists

13.7.2.2 Displaying package information

13.7.2.3 Controlling toolbar display

13.8 Basic Editor commands

13.8.1 Opening, saving and printing files

13.8.2 Moving around files

13.8.3 Inserting and deleting text

13.8.4 Using several buffers

13.9 Other essential commands

13.9.1 Aborting commands

13.9.2 Undoing commands

13.9.3 Repeating commands

13.10 Cutting, copying and pasting using the clipboard

13.11 Cutting, copying and pasting using the kill ring

13.11.1 Marking the region

13.11.2 Cutting or copying text

13.11.3 Pasting text

13.12 Searching and replacing text

13.12.1 Searching for text

13.12.2 Incremental searches

13.12.3 Replacing text

13.13 Using Lisp-specific commands

13.13.1 Lisp mode

13.13.2 Current buffers, definitions and expression

13.13.3 Evaluating code

13.13.4 Compiling code

13.13.4.1 Compiling in memory

13.13.4.2 Compiling to a file

13.13.5 Argument list information

13.13.6 Breakpoints

13.13.6.1 Setting breakpoints

13.13.6.2 Editing breakpoints

13.13.6.3 Removing breakpoints

13.13.6.4 Reloading code with breakpoints

13.13.7 Tracing symbols and functions

13.13.8 Packages

13.13.8.1 The primary package

13.13.8.2 The current package for Lisp operations

13.13.9 Indentation of forms

13.13.10 Other facilities

13.14 Help with editing

14 The Function Call Browser

14.1 Introduction

14.2 Examining functions using the graph views

14.2.1 Function area

14.2.2 Show functions control

14.2.3 Graph area

14.2.4 Echo area

14.2.5 The function description button

14.2.5.1 Function description area

14.2.5.2 Documentation area

14.3 Examining functions using the text view

14.3.1 Called By area

14.3.2 Calls Into area

14.4 Configuring the function call browser

14.4.1 Sorting entries

14.4.2 Displaying package information

14.5 Configuring graph displays

14.5.1 Graph layout settings

14.5.2 Graph expansion settings

14.5.3 Plan mode settings

14.6 Performing operations on functions

15 The Generic Function Browser

15.1 Examining information about methods

15.1.1 Function area

15.1.2 Filter area

15.1.3 Methods list

15.1.4 Description list

15.1.5 Performing operations on the current function or selected methods

15.2 Examining information about combined methods

15.2.1 Function box

15.2.2 Signatures button

15.2.3 Arguments types box

15.2.4 List of method combinations

15.2.5 Description list

15.2.6 Restricting displayed signatures by class

15.3 Configuring the Generic Function Browser

16 The Search Files tool

16.1 Introduction

16.2 Performing searches

16.2.1 Entering Search Specifications directly

16.2.1.1 Plain Directory searches

16.2.1.2 Root and Patterns searches

16.2.1.3 System Search

16.2.1.4 Known definitions searches

16.2.1.5 Grep searches

16.2.2 Using context-dependent searches

16.2.2.1 Context-dependent searches using Editor commands

16.2.2.2 Context-dependent searches using menu commands

16.2.2.3 Search History

16.3 Viewing the results

16.3.1 Displaying in an Editor

16.3.2 Linking to an Editor

16.3.3 Filtering the results

16.3.4 Hiding certain results

16.4 Modifying the matched lines

16.5 Configuring the Search Files tool

16.5.1 Search Parameters

16.5.2 Display

16.5.3 File Types

16.5.4 The External Grep Program

17 The Inspector

17.1 Inspecting the current object

17.2 Description of the Inspector tool

17.2.1 Adding a Listener to the Inspector

17.3 Filtering the display

17.3.1 Updating the display

17.4 Examining objects

17.5 Operating upon objects and items

17.5.1 Examination operations

17.5.1.1 Example

17.5.1.2 Recursive inspection

17.5.2 Examining attributes

17.5.3 Tracing slot access

17.5.4 Manipulation operations

17.5.4.1 Example

17.5.5 Copying in the Inspector

17.6 Configuring the Inspector

17.7 Customizing the Inspector

17.8 Creating new inspection formats

17.8.1 Example

18 The Symbol Browser

18.1 Introduction

18.2 Description of the Symbol Browser

18.2.1 Search Settings

18.2.1.1 Packages

18.2.1.2 Type

18.2.1.3 Accessibility

18.2.2 Filter area

18.2.3 Symbols list

18.2.4 Description area

18.2.5 Documentation area

18.3 Configuring the Symbol Browser

19 The Interface Builder

19.1 Description of the Interface Builder

19.2 Creating or loading interfaces

19.2.1 Creating a new interface

19.2.2 Loading existing interfaces

19.3 Creating an interface layout

19.3.1 Interface box

19.3.2 Graph area

19.3.3 Button panels

19.3.4 Adding new elements to the layout

19.3.5 Removing elements from a layout

19.4 Creating a menu system

19.4.1 Interface box

19.4.2 Graph area

19.4.3 Adding menu bars

19.4.4 Adding menus

19.4.5 Adding menu items

19.4.6 Adding menu components

19.4.6.1 Standard menu components

19.4.6.2 Radio components

19.4.6.3 Check components

19.4.7 Removing menu objects

19.5 Editing and saving code

19.5.1 Integrating the design with your own code

19.5.2 Editing code

19.5.3 Saving code

19.6 Performing operations on objects

19.6.1 Editing the selected object

19.6.2 Browsing the selected object

19.6.3 Rearranging components in an interface

19.6.4 Setting the attributes for the selected object

19.6.4.1 Basic attributes

19.6.4.2 Advanced attributes

19.6.4.3 Title attributes

19.6.4.4 Callbacks attributes

19.6.4.5 Geometry attributes

19.6.4.6 Style attributes

19.7 Performing operations on the current interface

19.7.1 Setting attributes for the current interface

19.7.2 Displaying the current interface

19.7.3 Arranging objects in a pinboard layout

19.8 Performing operations on elements

20 Example: Using The Interface Builder

20.1 Creating the basic layout

20.2 Specifying attribute values

20.3 Creating the menu system

20.4 Specifying callbacks in the interface definition

20.4.1 Specifying layout callbacks and other callback information

20.4.2 Specifying menu callbacks

20.5 Saving the interface

20.6 Defining the callbacks

20.6.1 Callbacks to update the display pane

20.6.2 Callbacks to display data in a dialog

20.6.3 Callbacks for menu items

20.6.4 Other miscellaneous functions

20.7 Creating a system

20.8 Testing the example interface

21 The Listener

21.1 The basic features of a Listener

21.2 Evaluating simple forms

21.3 Re-evaluating forms

21.4 Interrupting evaluation

21.5 The History menu

21.6 The Expression menu

21.7 The Values menu

21.8 The Debug menu

21.9 Execute mode

21.9.1 History commands

21.9.2 Debugger commands

21.9.3 Miscellaneous Listener commands

21.10 Setting Listener preferences

21.11 Running Editor forms in the Listener

21.12 Help with editing in the Listener

22 The Output Browser

22.1 Interactive compilation messages

22.1.1 Compilation message styles

23 The Process Browser

23.1 The process list

23.2 Process control

23.3 Other ways of breaking processes

23.4 Updating the Process Browser

23.5 Process Browser Preferences

24 The Profiler

24.1 Introduction

24.2 Display of Profiler Data

24.2.1 Call Tree

24.2.2 Cumulative Results

24.3 A description of profiling

24.3.1 Description of call tree data

24.3.2 Description of cumulative data

24.4 Steps involved in profiling code

24.4.1 Choosing the functions to profile

24.4.1.1 Choosing individual functions

24.4.1.2 Choosing packages

24.4.2 Choosing the time interval

24.4.3 Specifying the code to run while profiling

24.4.4 Performing the profile

24.5 Format of the cumulative results

24.6 Interpreting the cumulative results

24.7 Profiling pitfalls

24.7.1 Effects of random sampling

24.7.2 Recursive functions

24.7.3 Structure accessors

24.7.4 Consequences of restricted profiling

24.7.5 Effect of compiler optimizations

24.7.6 Effect of compiler transforms

24.8 Some examples

25 The Shell and Remote Shell Tools

25.1 Introduction

25.2 The Shell tool

25.3 Command history in the shell

25.4 Configuring the shell to run

25.5 The Remote Shell tool

26 The Stepper

26.1 Introduction

26.1.1 Stepper toolbar

26.1.2 Source area

26.1.3 Backtrace area

26.1.4 Listener area

26.2 Simple examples

26.2.1 Standalone use of the stepper

26.2.2 Invoking the Stepper via a breakpoint

26.3 The implementation of the Stepper

26.3.1 Requirements for stepping

26.3.2 Editing source code

26.3.3 Side-effects of stepping

26.3.4 Atomic and constant forms

26.4 Stepper controls

26.4.1 Shortcut keys for the Stepper

26.5 Stepper restarts

26.6 Breakpoints

26.6.1 Setting breakpoints

26.6.2 Conditional breakpoints

26.6.3 Printing breakpoints

26.6.4 Editing breakpoints

26.6.5 Removing breakpoints

26.7 Stepping macro forms

26.7.1 Interactive macroexpansion

26.7.2 Macroexpansion in the stepper

26.7.3 Collapsing macroexpansions

26.7.4 Controlling macroexpansion

26.8 Listener area

26.9 Configuring the Stepper

26.9.1 Operator preferences

26.9.2 Backtrace preferences

27 The System Browser

27.1 Introduction

27.2 A brief introduction to systems

27.2.1 Examples

27.3 The System Browser

27.4 A description of the System Browser

27.5 Examining the system tree

27.5.1 System area

27.5.2 Tree area

27.5.3 Description area

27.5.4 Performing operations on system members

27.6 Examining systems in the text view

27.6.1 System area

27.6.2 Parent system area

27.6.3 Subsystems area

27.6.4 Files area

27.6.5 File description area

27.7 Generating and executing plans in the preview view

27.7.1 System area

27.7.2 Actions area

27.7.3 Filter area

27.7.4 Plan area

27.7.5 File description area

27.7.6 Executing plans in the preview view

27.8 Examining output in the output view

27.8.1 System area

27.8.2 Output area

27.9 ASDF Integration

27.9.1 Interface to source code managers

27.10 Configuring the display

27.10.1 Sorting entries

27.10.2 Displaying package information

27.10.3 Display of the toolbar

27.11 Setting options in the system browser

28 The Window Browser

28.1 Introduction

28.1.1 Graph box

28.1.2 Window graph

28.1.3 Description list

28.2 Configuring the Window Browser

28.2.1 Sorting entries

28.2.2 Displaying package information

28.2.3 Displaying the toolbar

28.2.4 Displaying different types of window

28.2.5 Displaying short or long names

28.3 Performing operations on windows

28.3.1 Navigating the window hierarchy

28.3.2 Window control

29 The Application Builder

29.1 Introduction

29.1.1 What the Application Builder does

29.2 Preparing to build your application

29.2.1 The script

29.2.1.1 Using your existing delivery script

29.2.1.2 Creating a new delivery script

29.3 Building your application

29.4 Editing the script

29.5 Troubleshooting

29.5.1 Viewing errors

29.5.2 Clearing the output

29.6 Running the saved application

29.6.1 Passing arguments and redirecting output

29.6.2 Executing a different file

29.6.3 Killing application processes

29.7 Configuring the Application Builder

Index

 


LispWorks IDE User Guide (Unix version) - 22 Dec 2009

NextPrevTopIndex