[slime-cvs] CVS update: slime/doc/slime.texi
Luke Gorrie
lgorrie at common-lisp.net
Wed Mar 24 12:48:12 UTC 2004
Update of /project/slime/cvsroot/slime/doc
In directory common-lisp.net:/tmp/cvs-serv31116
Modified Files:
slime.texi
Log Message:
Added completion style and configuration.
Date: Wed Mar 24 07:48:11 2004
Author: lgorrie
Index: slime/doc/slime.texi
diff -u slime/doc/slime.texi:1.1 slime/doc/slime.texi:1.2
--- slime/doc/slime.texi:1.1 Mon Mar 22 08:55:31 2004
+++ slime/doc/slime.texi Wed Mar 24 07:48:07 2004
@@ -63,10 +63,10 @@
Lisp. The two sides are connected together with a socket and
communicate using an @acronym{RPC}-like protocol.
-The Lisp server is primarily written in @acronym{ANSI} Common
-Lisp. The required implementation-specific functionality is specified
-by a well-defined interface and implemented separately for each Common
-Lisp implementation. This makes @SLIME{} readily portable.
+The Lisp server is primarily written in portal Common Lisp. The
+required implementation-specific functionality is specified by a
+well-defined interface and implemented separately for each Lisp
+implementation. This makes @SLIME{} readily portable.
@c @node Status, , Introduction, Introduction
@section Status: under development
@@ -125,12 +125,12 @@
* Inspector::
* Profiling::
- at REPL{}: The ``top level''
+ at REPL{}: the ``top level''
* REPL commands::
* Input Navigation::
- at SLDB{}: The @SLIME{} debugger
+ at SLDB{}: the @SLIME{} debugger
* Examining frames::
* restarts::
@@ -145,7 +145,7 @@
Customization
-* Emacs-side::
+* Emacs-side customization::
* Lisp-side::
Emacs-side
@@ -186,7 +186,7 @@
@item
CMU Common Lisp (@acronym{CMUCL})
@item
-Steele Bank Common Lisp (@acronym{SBCL})
+Steel Bank Common Lisp (@acronym{SBCL})
@item
OpenMCL
@item
@@ -234,7 +234,7 @@
to the repository.
@example
-export CVSROOT=:pserver:anonymous@@common-lisp.net:/cvsroot/slime
+export CVSROOT=:pserver:anonymous@@common-lisp.net:/project/slime/cvsroot
cvs login
@emph{(Just press return when prompted for a password.)}
@end example
@@ -404,10 +404,10 @@
Describe the symbol at point.
@kbditem{C-c C-a, slime-apropos}
-Apropos search. Search Lisp documentation
-strings for a substring match. By default the external symbols of all
-packages are searched. With a prefix argument you can choose to a
-specific package and whether to include non-exported symbols.
+Apropos search. Search Lisp symbol names for a substring match and
+present their documentation strings. By default the external symbols
+of all packages are searched. With a prefix argument you can choose a
+specific package and whether to include unexported symbols.
@kbditem{C-c P, slime-apropos-package}
Show apropos results of all symbols in a package. This command is for
@@ -427,10 +427,9 @@
@table @kbd
@kbditem{M-TAB, slime-complete-symbol}
-Complete the symbol at point. Symbol completion is extended to
-consider each hyphen-delimited subword of symbol names ``in
-parallel''. This allows @code{m-v-b} to expand into
- at code{multiple-value-bind}, for example. Also bound to @kbd{C-c TAB}.
+Complete the symbol at point. Note that two styles of completion are
+available in @SLIME{}, and the default differs from normal Emacs
+completion. @xref{Emacs-side customization}.
@kbditem{SPC, slime-space}
The space key inserts a space and also looks up and displays the
@@ -569,13 +568,19 @@
@SLIME{} uses a custom Read-Eval-Print Loop (@REPL{}, also known as a
``top level''). The @REPL{} user-interface is written in Emacs Lisp,
which gives more Emacs-integration than the traditional
- at code{comint}-based Lisp interaction.
+ at code{comint}-based Lisp interaction:
-Conditions signalled by expressions in the @REPL{} are debugged with
- at SLDB{}. Return values are distinguished from printed output by
-separate Emacs faces (colours). The @REPL{} prompt is managed by Emacs
-using markers to ensure that Lisp output is inserted in the right
-place and doesn't get mixed up with user input.
+ at itemize @bullet
+ at item
+Conditions signalled in @REPL{} expressions are debugged with @SLDB{}.
+ at item
+Return values are distinguished from printed output by separate Emacs
+faces (colours).
+ at item
+Emacs manages the @REPL{} prompt with markers. This ensures that Lisp
+output is inserted in the right place, and doesn't get mixed up with
+user input.
+ at end itemize
@menu
* REPL commands::
@@ -892,11 +897,11 @@
@chapter Customization
@menu
-* Emacs-side::
+* Emacs-side customization::
* Lisp-side::
@end menu
- at node Emacs-side, Lisp-side, Customization, Customization
+ at node Emacs-side customization, Lisp-side, Customization, Customization
@section Emacs-side
The Emacs part of @SLIME{} can be configured both with the Emacs
@@ -916,6 +921,32 @@
ensures that lines do not wrap in backtraces, apropos listings, and so
on. It can however cause information to spill off the screen.
+ at item slime-complete-symbol-function
+The function to use for completion of Lisp symbols. Two completion
+styles are available. The default @code{slime-complete-symbol*}
+performs completion ``in parallel'' over the hyphen-delimited
+sub-words of a symbol name.
+ at footnote{This style of completion is modelled on @file{completer.el}
+by Chris McConnell. This package is bundled with @acronym{ILISP}.}
+Formally this means that ``@code{a-b-c}'' can complete to any symbol
+matching the regular expression ``@code{^a.*-b.*-c.*}'' (where ``dot''
+matches anything but a hyphen). Examples give a more intuitive
+feeling:
+ at itemize @bullet
+ at item
+ at code{m-v-b} completes to @code{multiple-value-bind}.
+ at item
+ at code{w-open} is ambiguous: it completes to either
+ at code{with-open-file} or @code{with-open-stream}. The symbol is
+expanded to the longest common completion (@code{with-open-}) and the
+point is placed at the first point of ambiguity, which in this case is
+the end.
+ at item
+ at code{w--stream} completes to @code{with-open-stream}.
+ at end itemize
+The alternative is @code{slime-simple-complete-symbol}, which
+completes in the usual Emacs way.
+
@item slime-multiprocessing
This should be set to @code{t} if you want to use multiprocessing
(threads) in your Lisp system. It causes any necessary initialization
@@ -941,7 +972,7 @@
* Hooks::
@end menu
- at node Hooks, , Emacs-side, Emacs-side
+ at node Hooks, , Emacs-side customization, Emacs-side customization
@subsection Hooks
@table @code
@@ -965,7 +996,7 @@
@end table
- at node Lisp-side, , Emacs-side, Customization
+ at node Lisp-side, , Emacs-side customization, Customization
@section Lisp-side (Swank)
The Lisp server side of @SLIME{} (known as ``Swank'') offers several
More information about the slime-cvs
mailing list