To install this package, run in Emacs:
M-x package-install RET slime RET
SLIME is the ``Superior Lisp Interaction Mode for Emacs.'' SLIME extends Emacs with support for interactive programming in Common Lisp. The features are centered around slime-mode, an Emacs minor-mode that complements the standard lisp-mode. While lisp-mode supports editing Lisp source files, slime-mode adds support for interacting with a running Common Lisp process for compilation, debugging, documentation lookup, and so on. The slime-mode programming environment follows the example of Emacs's native Emacs Lisp environment. We have also included good ideas from similar systems (such as ILISP) and some new ideas of our own. SLIME is constructed from two parts: a user-interface written in Emacs Lisp, and a supporting server program written in Common Lisp. The two sides are connected together with a socket and communicate using an RPC-like protocol. The Lisp server is primarily written in portable 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.
* SLIME News -*- mode: outline; coding: utf-8 -*- * 2.26.1 (December 2020) ** SBCL compatibility * 2.26 (August 2020) ** Fix copying presentations * 2.25 (June 2020) ** Core *** slime-connect takes additional arguments for open-network-stream ** slime-asdf *** Removed code problematic for non-SMP Lispworks ** slime-fancy *** Now loaded by default *** Include slime-indentation ** slime-repl *** New option: slime-repl-history-use-mark *** Tweaked slime-repl-inputed-output-face for dark backgrounds ** slime-selector *** Add prefix argument for opening window in another window ** slime-package-fu *** Handle UIOP:DEFINE-PACKAGE ** ABCL backend Numerous additions, including *** Better able to inspect call arguments *** Dramatic improvements in inspecting Java objects *** Enable goto source location to find definitions in JAR archives *** FIND-DEFINITIONS include symbols and specials defined in Java ** Clasp backend *** Improved source locations *** Implemented profiling via metering.lisp ** SBCL backend *** Discard auto-generated DEFGENERICs from find-definitions * 2.24 (May 2019) *** Minor improvements. * 2.23 (December 2018) *** Improved compatiblity with different versions of Emacs, SBCL, Clasp, Allegro. *** Bug fixes * 2.22 (July 2018) *** Improved compatiblity with Emacs 26 * 2.21 (June 2018) *** Improved compatiblity with Emacs 26 *** Mezzano support * 2.20 (August 2017) ** Core *** More secure handling of ~/.slime-secret ** SBCL backend *** Compatiblity with the latest SBCL and older SBCL. ** ECL backend *** Numerous enhancements * 2.19 (February 2017) ** Core *** Function `create-server` now accepts optional `interface` argument. Swank will bind the PORT on this interface. By default, interface is 127.0.0.1. This argument can be used, for example, to bind swank on IPv6 interface "::1". ** SBCL backend *** Now swank can be bound to IPv6 interface and can work on IPv6-only machines. *** Compatiblity with the latest SBCL * 2.18 (May 2016) *** Mostly bug fixes and compatibility with newer implementations * 2.17 (February 2016) ** Contribs *** New contrib, slime-macrostep, for more advanced in-place macroexpansion. *** New contrib, slime-quicklisp. * 2.16 (January 2016) *** Auto-completion now supports package-local nicknames on SBCL and ABCL. *** Bug fixes and updates for newer implementations. * 2.15 (August 2015) ** Core *** Completions are now displayed with `completion-at-point'. The new variable `slime-completion-at-point-functions' should now be used to customize completion. The old variable `slime-complete-symbol-function' still works, but it is considered obsolete and will be removed eventually. ** SBCL backend *** M-. can locate forms within PROGN/MACROLET/etc. Needs SBCL 1.2.15 * 2.14 (June 2015) ** Core *** Rationals are displayed in the echo area as floats too *** Some of SLDB's faces now have MORE COLOR *** Clicking with mouse-1 within inspector does things As do mouse-6 and mouse-7. (Thanks to Attila Lendvai.) ** slime-c-p-c (Compound Prefix Completion) *** Now takes a better guess at symbol case (issue #233) ** slime-fancy *** slime-mdot-fu is now enabled by default ** SBCL backend *** Now able to jump to ir1-translators, declaims and alien types *** Various updates supporting SBCL 1.2.12 ** ABCL backend *** Fixed inspection of frame-locals in the debugger (Thanks to Mark Evenson.) * 2.13 (March 2015) ** Core *** slime-cycle-connections has been deprecated It has been replaced by slime-next-connection and slime-prev-connection. A shortcut for the latter has been added to slime-selector. ** slime-mdot-fu The slime-mdot-fu contrib has been brought back to life. (Thanks to Charles Zhang. Issues #8, #231 and #232.) ** slime-typeout-frame The slime-typeout-frame contrib has been restored. (Issue #221.) ** SBCL backend *** Fixed xrefs coming from C-c C-c Issue #227. ** CMUCL, SBCL and SCL backends *** Better support for custom readtables Functionality that depends... ...