All Manuals > LispWorks IDE User Guide

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 in the deprecated Motif IDE

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 Switching between windows

2.8 Summary

3 Common Features

3.1 Displaying tool windows

3.1.1 Displaying existing windows

3.1.2 Iconifying existing windows

3.1.3 Arranging windows in MDI mode

3.1.4 Displaying tools using the mouse

3.1.5 Displaying tools using the keyboard

3.1.5.1 Tool accelerator keys

3.1.6 Re-using tool windows

3.1.6.1 Global control of re-use

3.1.6.2 Per-window control of re-use

3.1.7 Menu bar configurations in LispWorks for Windows

3.1.8 Toolbar configurations

3.1.9 Copying windows

3.1.10 Closing windows

3.1.11 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 Specifying a Meta key in LispWorks for Macintosh

3.2.2.3 Effect of the specified Meta key

3.2.2.4 Setting the cursor blink rate

3.2.3 Setting the editor font, color and other style attributes

3.2.3.1 Changing the main colors of editor panes

3.2.3.2 Setting the text style attributes

3.2.3.3 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 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 The Commands menu

3.15.1 Editor Commands List

3.16 Output and Input to/from the standard streams

3.17 Examining a window

3.18 Specifying the initial tools

3.19 System preferences affecting the IDE tools

4 Getting Help

4.1 Online manuals in HTML format

4.1.1 Getting help on the current symbol

4.1.2 Getting help on the current tool

4.1.3 Searching the online manuals

4.1.4 Searching the example source files

4.1.5 Browsing manuals online

4.1.6 The Lisp Knowledgebase

4.1.7 LispWorks Patches

4.1.8 Installing private patches in LispWorks for Windows

4.1.9 Configuring the browser used

4.2 Online help for editor commands

4.3 Reporting bugs

4.4 Registering a new license key

4.5 Browsing manuals online using Adobe Reader

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 Class Browser

7.1 Simple use of the Class Browser

7.1.1 Examining slots

7.1.2 Examining inherited slots

7.1.3 Filtering slot information

7.1.4 Examining other classes

7.1.5 Sorting information

7.2 Examining slot information

7.2.1 Class box

7.2.2 Filter area

7.2.3 Slots list

7.2.4 Description list

7.2.5 Performing operations on the current class

7.3 Examining superclasses and subclasses

7.3.1 Class box

7.3.2 Superclasses list

7.3.3 Subclasses list

7.3.4 Description list

7.3.5 Performing operations on the selected classes or the current class

7.4 Examining classes graphically

7.4.1 Class box

7.4.2 Subclasses and superclasses graphs

7.4.3 Description list

7.4.4 Performing operations on the selected classes or the current class

7.4.5 An example

7.5 Examining generic functions and methods

7.5.1 Class box

7.5.2 Filter box

7.5.3 List of functions or methods

7.5.4 Description list

7.5.5 Performing operations on the current class

7.5.6 Operations specific to the current function or method

7.6 Examining initargs

7.6.1 Class box

7.6.2 Filter box

7.6.3 List of initargs

7.6.4 Description list

7.6.5 Performing operations on the current class

7.7 Examining class precedences

7.7.1 Class box

7.7.2 Filter box

7.7.3 List of precedences

7.7.4 Description list

7.7.5 Performing operations on the selected classes or the current class

8 The Object Clipboard

8.1 Placing objects on the Object Clipboard

8.1.1 The Listener

8.1.2 The Class Browser

8.1.3 The Inspector

8.1.4 The Function Call Browser

8.1.5 The Generic Function Browser

8.1.6 The Debugger

8.1.7 The Stepper

8.1.8 The System Browser

8.1.9 General clipping

8.2 Browsing clipped objects

8.2.1 The Inspector

8.2.2 The Class Browser

8.2.3 The Listener

8.2.4 General browsing

8.2.5 Pasting of clipped objects

8.3 Removing objects

8.4 Filtering

8.5 Using the Object Clipboard with a Listener

9 The Compilation Conditions Browser

9.1 Introduction

9.2 Examining conditions

9.3 Configuring the display

9.3.1 Display preferences

9.4 Access to other tools

10 The Debugger Tool

10.1 Description of the Debugger

10.1.1 Condition box

10.1.2 Backtrace area

10.1.2.1 Frames and Variables in a tree

10.1.2.2 Frames and Variables in two lists

10.1.3 Toolbar buttons

10.1.4 Bypassing the Notifier window

10.2 What the Debugger tool does

10.3 Simple use of the Debugger tool

10.4 The stack in the Debugger

10.5 An example debugging session

10.6 Performing operations on the error condition

10.7 Performing operations on stack frames

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

10.7.2 Restarts and returning from the frame

10.7.3 Tracing the function in the frame

10.8 Performing operations on frame variables

10.9 Configuring the debugger tool

10.9.1 Configuring the call frames displayed

10.9.2 Displaying package information

10.9.3 Behavior on closing the Debugger

10.9.4 Frames and variables display

10.9.5 Remote debugging options

10.10 The Notifier window

10.11 Handling of Cocoa Event Loop hanging

10.12 Errors in CAPI display callbacks

11 The Tracer

11.1 Introduction

11.2 Tracing and Untracing functions

11.2.1 Tracing methods

11.3 Examining the output of tracing

11.3.1 The Output Data view

11.3.2 The Output Text view

11.4 Example

12 The Editor

12.1 Displaying and editing files

12.1.1 The toolbar

12.1.2 The editor window

12.1.3 The echo area

12.1.4 Using keyboard commands

12.2 Displaying output messages in the Editor

12.3 Displaying and swapping between buffers

12.3.1 Filter area

12.3.2 Buffers area

12.3.3 Editor tool solely as buffers list

12.4 Displaying Common Lisp definitions

12.4.1 Filter box

12.4.2 Definitions area

12.5 Changed definitions

12.5.1 Setting the reference point for changed definitions

12.6 Finding definitions

12.7 Setting Editor preferences

12.7.1 Controlling other aspects of the Editor

12.7.2 Controlling options specific to the Editor

12.7.2.1 Controlling toolbar display

12.7.2.2 Buffers list option

12.7.2.3 Sorting items in lists

12.7.2.4 Displaying package information

12.7.3 Other Editor options

12.8 Basic Editor commands

12.8.1 Opening, saving and printing files

12.8.2 Moving around files

12.8.3 Inserting and deleting text

12.8.4 Using several buffers

12.9 Other essential commands

12.9.1 Aborting commands

12.9.2 Undoing commands

12.9.3 Repeating commands

12.10 Cutting, copying and pasting using the clipboard

12.11 Cutting, copying and pasting using the kill ring

12.11.1 Marking the region

12.11.2 Cutting or copying text

12.11.3 Pasting text

12.12 Searching and replacing text

12.12.1 Searching for text

12.12.2 Incremental searches

12.12.3 Replacing text

12.13 Using Lisp-specific commands

12.13.1 Lisp mode

12.13.2 Current buffers, definitions and expression

12.13.3 Evaluating code

12.13.4 Compiling code

12.13.4.1 Compiling in memory

12.13.4.2 Compiling to a file

12.13.5 Argument list information

12.13.6 Breakpoints

12.13.6.1 Setting breakpoints

12.13.6.2 Editing breakpoints

12.13.6.3 Removing breakpoints

12.13.6.4 Reloading code with breakpoints

12.13.7 Tracing symbols and functions

12.13.8 Packages

12.13.8.1 The primary package

12.13.8.2 The current package for Lisp operations

12.13.9 Indentation of forms

12.13.10 Other facilities

12.14 Help with editing

13 The Code Coverage Browser

13.1 Starting the Code Coverage Browser

13.2 Displaying a Code Coverage data

13.3 Code Coverage Files List Context Menu

13.4 Traverse

13.5 Using the internal data

13.6 Creating new Data

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 Searching editor buffers

16.2.1.6 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.3.6 Creating different views

19.3.7 Inheriting parts of the 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

19.9 Example: Using The Interface Builder

19.9.1 Creating the basic layout

19.9.2 Specifying attribute values

19.9.3 Creating the menu system

19.9.4 Specifying callbacks in the interface definition

19.9.4.1 Specifying layout callbacks and other callback information

19.9.4.2 Specifying menu callbacks

19.9.5 Saving the interface

19.9.6 Defining the callbacks

19.9.6.1 Callbacks to update the display pane

19.9.6.2 Callbacks to display data in a dialog

19.9.6.3 Callbacks for menu items

19.9.6.4 Other miscellaneous functions

19.9.7 Creating a system

19.9.8 Testing the example interface

20 The Listener

20.1 The basic features of a Listener

20.2 Evaluating simple forms

20.3 Re-evaluating forms

20.4 The debugger prompt and debugger level

20.5 Interrupting evaluation

20.6 The History menu

20.7 The Expression menu

20.8 The Values menu

20.9 The Debug menu

20.10 Execute mode

20.10.1 History commands

20.10.2 Debugger commands

20.10.3 Miscellaneous Listener commands

20.10.4 Highlighting of results

20.11 Setting Listener preferences

20.12 Running Editor forms in the Listener

20.13 Switching to and from other tools

20.14 Help with editing in the Listener

21 The Output Browser

21.1 Interactive compilation messages

21.1.1 Compilation message styles

22 The Process Browser

22.1 The process list

22.2 Process control

22.3 Other ways of breaking processes

22.4 Updating the Process Browser

22.5 Process Browser Preferences

23 The Profiler

23.1 Introduction

23.2 Description of the Profiler

23.2.1 Call Tree

23.2.2 Options in the context menu for viewing parts of the call graph

23.2.3 Cumulative Results

23.2.4 Stacked Tree

23.2.5 Code To Profile

23.3 The Profiler menu and Profiler-specific toolbar buttons

23.4 Selecting what to profile

23.4.1 Choosing the functions to profile

23.4.1.1 Choosing individual functions

23.4.1.2 Choosing packages

23.5 Format of the cumulative results

23.6 Interpreting the cumulative results

23.7 Configuring the Profiler

23.7.1 Behavior of the Cumulative tab

23.7.2 Behavior after profiling finishes

23.8 Profiling pitfalls

23.8.1 Effects of random sampling

23.8.2 Recursive functions

23.8.3 Structure accessors

23.8.4 Consequences of restricted profiling

23.8.5 Effect of compiler optimizations

23.8.6 Effect of compiler transforms

23.9 Some examples

24 The Shell and Remote Shell Tools

24.1 Introduction

24.2 The Shell tool

24.3 Command history in the shell

24.4 Configuring the shell to run

24.5 The Remote Shell tool

25 The Stepper

25.1 Introduction

25.1.1 Stepper toolbar

25.1.2 Source area

25.1.3 Backtrace area

25.1.4 Listener area

25.2 Simple examples

25.2.1 Standalone use of the stepper

25.2.2 Invoking the Stepper via a breakpoint

25.3 The implementation of the Stepper

25.3.1 Requirements for stepping

25.3.2 Editing source code

25.3.3 Side-effects of stepping

25.3.4 Atomic and constant forms

25.4 Stepper controls

25.4.1 Shortcut keys for the Stepper

25.5 Stepper restarts

25.6 Breakpoints

25.6.1 Setting breakpoints

25.6.2 Conditional breakpoints

25.6.3 Printing breakpoints

25.6.4 Editing breakpoints

25.6.5 Removing breakpoints

25.7 Stepping macro forms

25.7.1 Interactive macro expansion

25.7.2 Macro expansion in the stepper

25.7.3 Collapsing macro expansions

25.7.4 Controlling macro expansion

25.8 Listener area

25.9 Configuring the Stepper

25.9.1 Operator preferences

25.9.2 Backtrace preferences

26 The System Browser

26.1 Introduction

26.2 A brief introduction to systems

26.2.1 Examples

26.3 The System Browser

26.4 A description of the System Browser

26.5 Examining the system tree

26.5.1 System area

26.5.2 Tree area

26.5.3 Description area

26.5.4 Performing operations on system members

26.6 Examining systems in the text view

26.6.1 System area

26.6.2 Parent system area

26.6.3 Subsystems area

26.6.4 Files area

26.6.5 File description area

26.7 Generating and executing plans in the preview view

26.7.1 System area

26.7.2 Actions area

26.7.3 Filter area

26.7.4 Plan area

26.7.5 File description area

26.7.6 Executing plans in the preview view

26.8 Examining output in the output view

26.8.1 System area

26.8.2 Output area

26.9 ASDF Integration

26.9.1 Interface to source code managers

26.10 Configuring the display

26.10.1 Sorting entries

26.10.2 Displaying package information

26.10.3 Display of the toolbar

26.11 Setting options in the system browser

27 The Window Browser

27.1 Introduction

27.1.1 Graph box

27.1.2 Window graph

27.1.3 Description list

27.2 Configuring the Window Browser

27.2.1 Sorting entries

27.2.2 Displaying package information

27.2.3 Displaying the toolbar

27.2.4 Displaying different types of window

27.2.5 Showing IDE iterfaces

27.2.6 Displaying short or long names

27.3 Performing operations on windows

27.3.1 Navigating the window hierarchy

27.3.2 Window control

28 The Application Builder

28.1 Introduction

28.1.1 What the Application Builder does

28.2 Preparing to build your application

28.2.1 The script

28.2.1.1 Using your existing delivery script

28.2.1.2 Creating a new delivery script

28.3 Building your application

28.4 Editing the script

28.5 Troubleshooting

28.5.1 Viewing errors

28.5.2 Clearing the output

28.6 Running the saved application

28.6.1 Passing arguments and redirecting output

28.6.2 Executing a different file

28.6.3 Killing application processes

28.7 Building universal binaries

28.8 Using the Application Builder to save a development image

28.9 Configuring the Application Builder

29 Remote Debugging

29.1 Remote Listeners

29.2 Menus in the Remote Debugger and Remote Listener tools

29.3 Editor commands for remote debugging

29.4 Configuring Remote Debugging

29.4.1 Remote Debugging Client

29.4.2 Remote Listener

29.4.3 IDE Remote Debugging Server

Index


LispWorks IDE User Guide (Unix version) - 01 Dec 2021 19:37:26