[slime-cvs] CVS slime/doc

heller heller at common-lisp.net
Mon Nov 26 23:11:38 UTC 2007


Update of /project/slime/cvsroot/slime/doc
In directory clnet:/tmp/cvs-serv7235

Modified Files:
	slime.texi 
Log Message:
Add TRAMP, highlight-edits, and typeout-frame sections.
Introduce stepping section.


--- /project/slime/cvsroot/slime/doc/slime.texi	2007/11/26 18:56:15	1.58
+++ /project/slime/cvsroot/slime/doc/slime.texi	2007/11/26 23:11:37	1.59
@@ -12,7 +12,7 @@
 @set EDITION 3.0-alpha
 @set SLIMEVER 3.0-alpha
 @c @set UPDATED @today{}
- at set UPDATED @code{$Date: 2007/11/26 18:56:15 $}
+ at set UPDATED @code{$Date: 2007/11/26 23:11:37 $}
 @set TITLE SLIME User Manual
 @settitle @value{TITLE}, version @value{EDITION}
 
@@ -90,6 +90,9 @@
 @xref{\name\}.
 @end macro
 
+ at synindex cp vr
+
+
 @c @setchapternewpage off
 @c @shortcontents
 @contents
@@ -190,6 +193,7 @@
 * Examining frames::            
 * Restarts::                    
 * Frame Navigation::            
+* Stepping::                    
 * Miscellaneous::               
 
 Misc
@@ -197,7 +201,6 @@
 * slime-selector::              
 * slime-macroexpansion-minor-mode::  
 * Multiple connections::        
-* Typeout frames::              
 
 Customization
 
@@ -236,6 +239,9 @@
 * Editing Commands::            
 * Fancy Inspector::             
 * Presentations::               
+* Typeout frames::              
+* TRAMP::                       
+* Highlight Edits::             
 * inferior-slime-mode::         
 * Scratch Buffer::              
 
@@ -787,6 +793,9 @@
 @node Completion
 @subsubsection Completion commands
 
+ at cindex Completion
+ at cindex Symbol Completion
+
 Completion commands are used to complete a symbol or form based on
 what is already present at point. Classical completion assumes an
 exact prefix and gives choices only where branches may occur. Fuzzy
@@ -868,6 +877,9 @@
 @node Cross-reference
 @subsubsection Cross-reference commands
 
+ at cindex xref
+ at cindex Cross-referencing
+
 @SLIME{}'s cross-reference commands are based on the support provided
 by the Lisp system, which varies widely between Lisps. For systems
 with no built-in @acronym{XREF} support @SLIME{} queries a portable
@@ -924,6 +936,9 @@
 @node Finding definitions
 @subsubsection Finding definitions (``Meta-Point'' commands).
 
+ at cindex Meta-dot
+ at cindex TAGS
+
 The familiar @kbd{M-.} command is provided. For generic functions this
 command finds all methods, and with some systems it does other fancy
 things (like tracing structure accessors to their @code{DEFSTRUCT}
@@ -959,6 +974,8 @@
 @node Macro-expansion
 @subsubsection Macro-expansion commands
 
+ at cindex Macros
+
 @table @kbd
 @kbditem{C-c C-m, slime-macroexpand-1}
 Macroexpand the expression at point once.  If invoked with a prefix
@@ -1002,6 +1019,8 @@
 @node Compilation
 @subsection Compilation commands
 
+ at cindex Compilation
+
 @SLIME{} has fancy commands for compiling functions, files, and
 packages. The fancy part is that notes and warnings offered by the
 Lisp compiler are intercepted and annotated directly onto the
@@ -1261,6 +1280,8 @@
 @node REPL
 @chapter REPL: the ``top level''
 
+ at cindex Listener
+
 @SLIME{} uses a custom Read-Eval-Print Loop (@REPL{}, also known as a
 ``top level'', or listener). The @REPL{} user-interface is written in
 Emacs Lisp, which gives more Emacs-integration than the traditional
@@ -1325,6 +1346,8 @@
 @node Input Navigation
 @section Input navigation
 
+ at cindex Input History
+
 The input navigation (a.k.a. history) commands are modelled after
 @code{coming}-mode.  Be careful if you are used to Bash-like
 keybindings: @kbd{M-p} and @kbd{M-n} use the current input as search
@@ -1369,6 +1392,8 @@
 @node Shortcuts
 @section Shortcuts
 
+ at cindex Shortcuts
+
 ``Shortcuts'' are a special set of @REPL{} commands that are invoked
 by name. To invoke a shortcut you first press @kbd{,} (comma) at the
 @REPL{} prompt and then enter the shortcut's name when prompted.
@@ -1430,6 +1455,8 @@
 @node Debugger
 @chapter SLDB: the SLIME debugger
 
+ at cindex Debugger
+
 @SLIME{} has a custom Emacs-based debugger called @SLDB{}. Conditions
 signalled in the Lisp system invoke @SLDB{} in Emacs by way of the
 Lisp @code{*DEBUGGER-HOOK*}.
@@ -1443,6 +1470,7 @@
 * Examining frames::            
 * Restarts::                    
 * Frame Navigation::            
+* Stepping::                    
 * Miscellaneous::               
 @end menu
 
@@ -1513,7 +1541,29 @@
 only.
 @end table
 
- at c ----------------------- 
+ at node Stepping
+ at section Stepping
+
+ at cindex Stepping
+
+Stepping is not available in all implementations and works very
+differently in those in which it is available.
+
+ at table @kbd
+ at kbditem{s, sldb-step}
+Step to the next expression in the frame.  For CMUCL that means, set a
+breakpoint at all those code locations in the current code block which
+are reachable from the current code location.
+
+ at kbditem{x, sldb-next}
+[Step to the next form in the current function.]
+
+ at kbditem{o, sldb-next}
+[Stop single-stepping temporarily, but resume it once the current
+function returns.]
+
+ at end table
+
 @node Miscellaneous
 @section Miscellaneous Commands
 
@@ -1527,15 +1577,12 @@
 Return from the frame with a value entered in the minibuffer. (This
 command is not available in all implementations.)
 
- at kbditem{s, sldb-step}
-Step to the next expression in the frame. (This command is not
-available in all implementations.)
 
 @kbditem{B, sldb-break-with-default-debugger}
 Exit @SLDB{} and debug the condition using the Lisp system's default
 debugger.
 
- at kbditem{C-c :, slime-interactive-eval}
+ at kbditem{:, slime-interactive-eval}
 Evaluate an expression entered in the minibuffer.
 @end table
 
@@ -1548,7 +1595,6 @@
 * slime-selector::              
 * slime-macroexpansion-minor-mode::  
 * Multiple connections::        
-* Typeout frames::              
 @end menu
 
 @c ----------------------- 
@@ -1681,32 +1727,6 @@
 
 @end table
 
- at c ----------------------- 
- at node Typeout frames
- at section Typeout frames
-
-A ``typeout frame'' is a special Emacs frame which is used instead of
-the echo area (minibuffer) to display messages from @SLIME{} commands.
-This is an optional feature. The advantage of a typeout frame over the
-echo area is that it can hold more text, it can be scrolled, and its
-contents don't disappear when you press a key. All potentially long
-messages are sent to the typeout frame, such as argument lists, macro
-expansions, and so on.
-
- at table @kbd
- at cmditem{slime-ensure-typeout-frame}
-Ensure that a typeout frame exists, creating one if necessary.
- at end table
-
-If the typeout frame is closed then the echo area will be used again
-as usual.
-
-To have a typeout frame created automatically at startup you can add
-the @code{slime-connected-hook} to your @file{~/.emacs} file:
-
- at example
-(add-hook 'slime-connected-hook 'slime-ensure-typeout-frame)
- at end example
 
 @c ----------------------- 
 @node Customization
@@ -1739,15 +1759,11 @@
 @item slime-complete-symbol-function
 The function to use for completion of Lisp symbols. Three completion
 styles are available: @code{slime-simple-complete-symbol},
- at code{slime-complete-symbol*},and @code{slime-fuzzy-complete-symbol}.
+ at code{slime-complete-symbol*} (@pxref{Compound Completion}), 
+and @code{slime-fuzzy-complete-symbol} (@pxref{Fuzzy Completion}).
 
-
-An alternative is @code{slime-simple-complete-symbol}, which
-completes in the usual Emacs way.  Finally, there is
- at code{slime-fuzzy-complete-symbol}, which is quite different from both
-of the above and tries to find best matches to an abbreviated symbol.
-It also has its own key binding, defaulting to @kbd{C-c M-i}.
- at xref{slime-fuzzy-complete-symbol}, for more information.
+The default is @code{slime-simple-complete-symbol}, which completes in
+the usual Emacs way.
 
 @vindex slime-filename-translations
 @item slime-filename-translations
@@ -1758,6 +1774,11 @@
 file sharing.
 
 @vindex slime-net-coding-system
+ at cindex Unicode
+ at cindex utf8
+ at cindex utf-8
+ at cindex ascii
+ at cindex latin
 @item slime-net-coding-system
 If you want to transmit Unicode characters between Emacs and the Lisp
 system, you should customize this variable.  E.g., if you use SBCL, you
@@ -2091,7 +2112,8 @@
 @file{/opt/project/source.lisp} refers to the same file on both
 machines. Unfortunetly NFS is usually slow, often buggy, and not
 always feasable, fortunetely we have an ssh connection and Emacs'
- at code{tramp-mode} can do the rest.
+ at code{tramp-mode} can do the rest. 
+(See @inforef{Top, TRAMP User Manual,tramp}.)
 
 What we do is teach Emacs how to take a filename on the remote machine
 and translate it into something that tramp can understand and access
@@ -2163,6 +2185,9 @@
 * Editing Commands::            
 * Fancy Inspector::             
 * Presentations::               
+* Typeout frames::              
+* TRAMP::                       
+* Highlight Edits::             
 * inferior-slime-mode::         
 * Scratch Buffer::              
 @end menu
@@ -2170,6 +2195,10 @@
 @node Loading Contribs
 @section Loading Contrib Packages
 
+ at cindex Contribs
+ at cindex Contributions
+ at cindex Plugins
+
 Contrib packages aren't loaded by default.  You have to modify your
 setup a bit so that Emacs knows where to find them and which of them
 to load, i.e. you should add the contrib directory to
@@ -2190,6 +2219,7 @@
 @node Compound Completion
 @section Compund Completion 
 
+ at anchor{slime-complete-symbol*}
 The package @code{slime-c-p-c} provides a different symbol completion
 algorithm, which performs completion ``in parallel'' over the
 hyphen-delimited sub-words of a symbol name.
@@ -2397,6 +2427,8 @@
 @node Fancy Inspector
 @section Fancy Inspector 
 
+ at cindex Methods
+
 An alternative to default inspector is provided by the package
 `slime-fancy-inspector'.  This inspector knows a lot about CLOS
 objects and methods.  It provides many ``actions'' that can be
@@ -2410,6 +2442,8 @@
 @node Presentations
 @section Presentations
 
+ at cindex Presentations
+
 A ``presentation''@footnote{Presentations are a feature originating
 from the Lisp machines.  It was possible to define @code{present}
 methods specialized to various devices, e.g. to draw an object to
@@ -2439,6 +2473,56 @@
 @cmditem{slime-clear-presentations}
 @end table
 
+ at node Typeout frames
+ at section Typeout frames
+
+ at cindex Typeout Frame
+
+A ``typeout frame'' is a special Emacs frame which is used instead of
+the echo area (minibuffer) to display messages from @SLIME{} commands.
+This is an optional feature. The advantage of a typeout frame over the
+echo area is that it can hold more text, it can be scrolled, and its
+contents don't disappear when you press a key. All potentially long
+messages are sent to the typeout frame, such as argument lists, macro
+expansions, and so on.
+
+ at table @kbd
+ at cmditem{slime-ensure-typeout-frame}
+Ensure that a typeout frame exists, creating one if necessary.
+ at end table
+
+If the typeout frame is closed then the echo area will be used again
+as usual.
+
+To have a typeout frame created automatically at startup you should
+load the @code{slime-typeout-frame} package. (@pxref{Loading Contribs}.)
+
+The variable @code{slime-typeout-frame-properties} specifies the
+height and possibly other properties of the frame.  Its value is
+passed to @code{make-frame}. (@inforef{Creating Frames, ,elisp}.)
+
+ at node TRAMP
+ at section TRAMP  
+
+ at cindex TRAMP
+
+The package @code{slime-tramp} provides some functions to set up
+filename translations for TRAMP. (@pxref{Setting up pathname
+translations})
+
+ at node Highlight Edits
+ at section Highlight Edits
+
+ at code{slime-highlight-edits} is a minor mode to highlight those
+regions in a Lisp source file which are modified.  This is useful to
+quickly find those functions which need to be recompiled (whith
+ at kbd{C-c C-c})
+
+ at table @kbd
+ at cmditem{slime-highlight-edits-mode}
+Turns @code{slime-highlight-edits-mode} on or off.
+ at end table
+
 @node inferior-slime-mode
 @section @code{inferior-slime-mode}
 
@@ -2465,10 +2549,10 @@
 @section Scratch Buffer
 
 @anchor{slime-scratch}
-The @SLIME{} scratch buffer works, contrib package
- at code{slime-scratch}, imitates Emacs' own @code{*scratch*} buffer.
-It's just like any other Lisp buffer, except the key binding for
- at kbd{C-j}.
+
+The @SLIME{} scratch buffer, in contrib package @code{slime-scratch},
+imitates Emacs' usual @code{*scratch*} buffer.  It's just like any
+other Lisp buffer, except for the command bound to @kbd{C-j}.
 
 @table @kbd
 
@@ -2817,7 +2901,7 @@
 @printindex fn
 
 @node Variable Index
- at unnumbered Variable Index
+ at unnumbered Variable and Concept Index
 @printindex vr
 
 @bye




More information about the slime-cvs mailing list