IDE User Guide Version 7.1 Copyright and Trademarks Lispworks IDE User Guide (Unix Version) Version 7.1 September 2017 Copyright © 2017 by Lispworks Ltd
Total Page:16
File Type:pdf, Size:1020Kb
LispWorks® IDE User Guide Version 7.1 Copyright and Trademarks LispWorks IDE User Guide (Unix version) Version 7.1 September 2017 Copyright © 2017 by LispWorks Ltd. All Rights Reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of LispWorks Ltd. The information in this publication is provided for information only, is subject to change without notice, and should not be construed as a commitment by LispWorks Ltd. LispWorks Ltd assumes no responsibility or liability for any errors or inaccuracies that may appear in this publication. The software described in this book is furnished under license and may only be used or copied in accordance with the terms of that license. LispWorks and KnowledgeWorks are registered trademarks of LispWorks Ltd. Adobe and PostScript are registered trademarks of Adobe Systems Incorporated. Other brand or product names are the registered trade- marks or trademarks of their respective holders. The code for walker.lisp and compute-combination-points is excerpted with permission from PCL, Copyright © 1985, 1986, 1987, 1988 Xerox Corporation. The XP Pretty Printer bears the following copyright notice, which applies to the parts of LispWorks derived therefrom: Copyright © 1989 by the Massachusetts Institute of Technology, Cambridge, Massachusetts. Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, pro- vided that this copyright and permission notice appear in all copies and supporting documentation, and that the name of M.I.T. not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. M.I.T. makes no representa- tion about the suitability of this software for any purpose. It is provided “as is” without express or implied warranty. M.I.T. disclaims all war- ranties with regard to this software, including all implied warranties of merchantability and fitness. In no event shall M.I.T. be liable for any special, indirect or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of con- tract, negligence or other tortious action, arising out of or in connection with the use or performance of this software. LispWorks contains part of ICU software obtained from http://source.icu-project.org and which bears the following copyright and permis- sion notice: ICU License - ICU 1.8.1 and later COPYRIGHT AND PERMISSION NOTICE Copyright © 1995-2006 International Business Machines Corporation and others. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Soft- ware"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, provided that the above copyright notice(s) and this permission notice appear in all copies of the Software and that both the above copyright notice(s) and this permission notice appear in supporting documentation. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIM- ITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. All trademarks and registered trademarks men- tioned herein are the property of their respective owners. US Government Restricted Rights The LispWorks Software is a commercial computer software program developed at private expense and is provided with restricted rights. The LispWorks Software may not be used, reproduced, or disclosed by the Government except as set forth in the accompanying End User License Agreement and as provided in DFARS 227.7202-1(a), 227.7202-3(a) (1995), FAR 12.212(a)(1995), FAR 52.227-19, and/or FAR 52.227-14 Alt III, as applicable. Rights reserved under the copyright laws of the United States. Address Telephone Fax LispWorks Ltd From North America: 877 759 8839 From North America: 617 812 8283 St. John’s Innovation Centre Cowley Road (toll-free) From elsewhere: +44 870 2206189 Cambridge CB4 0WS From elsewhere: +44 1223 421860 England www.lispworks.com Contents Preface xi 1 Introduction 1 Major tools 2 2 A Short Tutorial 5 Starting the environment 6 Creating a Listener 7 Using the Debugger 9 Viewing output 11 Inspecting objects using the Inspector 12 Examining classes in the Class Browser 14 Summary 17 3 Common Features 19 Displaying tool windows 20 Setting preferences 26 Performing editing functions 41 The Break gesture 44 The history list 45 Operating on files 46 Displaying packages 47 Performing operations on selected objects 50 Using different views 53 iii Tracing symbols from tools 57 Linking tools together 58 Filtering information 58 Regexp matching 61 Completion 63 Output and Input to/from the standard streams 68 Examining a window 69 4 Getting Help 71 Online manuals in HTML format 71 Online help for editor commands 75 Reporting bugs 75 Registering a new license key 76 Browsing manuals online using Adobe Reader 76 5 Session Saving 77 What session saving does 77 The default session 78 What is saved and what is not saved 78 Saving sessions 79 Redirecting images to a Saved Session image 84 Non-IDE interfaces and session saving 85 6 Manipulating Graphs 87 An overview of graphs 87 Searching graphs 89 Expanding and collapsing graphs 89 Moving nodes in graphs 90 Displaying plans of graphs 91 Preferences for graphs 93 Using graphs in your programs 98 7 The Podium 99 The podium window 99 Specifying the initial tools 100 8 The Class Browser 101 iv Simple use of the Class Browser 102 Examining slot information 109 Examining superclasses and subclasses 112 Examining classes graphically 114 Examining generic functions and methods 118 Examining initargs 122 Examining class precedences 124 9 The Object Clipboard 127 Placing objects on the Object Clipboard 128 Browsing clipped objects 131 Removing objects 132 Filtering 132 Using the Object Clipboard with a Listener 133 10 The Compilation Conditions Browser 137 Introduction 137 Examining conditions 139 Configuring the display 140 Access to other tools 142 11 The Debugger Tool 143 Description of the Debugger 145 What the Debugger tool does 150 Simple use of the Debugger tool 151 The stack in the Debugger 152 An example debugging session 153 Performing operations on the error condition 155 Performing operations on stack frames 155 Performing operations on frame variables 157 Configuring the debugger tool 157 The Notifier window 160 Handling of Cocoa Event Loop hanging 162 Errors in CAPI display callbacks 163 12 The Tracer 165 Introduction 165 v Tracing and Untracing functions 165 Examining the output of tracing 166 Example 168 13 The Editor 173 Displaying and editing files 175 Displaying output messages in the Editor 179 Displaying and swapping between buffers 179 Displaying Common Lisp definitions 183 Changed definitions 185 Finding definitions 187 Setting Editor preferences 188 Basic Editor commands 191 Other essential commands 196 Cutting, copying and pasting using the clipboard 197 Cutting, copying and pasting using the kill ring 197 Searching and replacing text 201 Using Lisp-specific commands 205 Help with editing 213 14 The Code Coverage Browser 215 Starting the Code Coverage Browser 215 Displaying a Code Coverage data 216 Code Coverage Files List Context Menu 218 Traverse 219 Using the internal data 220 Creating new Data 220 15 The Function Call Browser 223 Introduction 223 Examining functions using the graph views 224 Examining functions using the text view 228 Configuring the function call browser 230 Configuring graph displays 231 Performing operations on functions 232 16 The Generic Function Browser 233 vi Examining information about methods 234 Examining information about combined methods 237 Configuring the Generic Function Browser 243 17 The Search Files tool 245 Introduction 245 Performing searches 247 Viewing the results 256 Modifying the matched lines 257 Configuring the Search Files tool 258 18 The Inspector 265 Inspecting the current object 265 Description of the Inspector tool 266 Filtering the display 267 Examining objects 269 Operating upon objects and items 270 Configuring the Inspector 275 Customizing the Inspector 279 Creating new inspection formats 279 19 The Symbol Browser 285 Introduction 285 Description of the Symbol Browser 287 Configuring the Symbol Browser 291 20 The Interface Builder 293 Description of the Interface Builder 294 Creating or loading interfaces 295 Creating an interface layout 298 Creating a menu system 301 Editing and saving code 306 Performing operations on objects 310 Performing operations on the