gnu-emacs-sources
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[NonGNU ELPA] Sly version 1.0.0beta3


From: ELPA update
Subject: [NonGNU ELPA] Sly version 1.0.0beta3
Date: Tue, 15 Dec 2020 18:48:22 -0500

Version 1.0.0beta3 of package Sly has just been released in NonGNU ELPA.
You can now find it in M-x package-list RET.

Sly describes itself as:
  Sylvester the Cat's Common Lisp IDE

More at https://elpa.nongnu.org/nongnu/sly.html

Recent NEWS:

Upcoming SLY 1.0.0-beta-3 (Somewhere 2018)
-----------------------------------------

### Much improved company completion

If you haven't yet, just `M-x package-install RET company-mode`, to
enable `company`.  It should start working in every SLY buffer.

Moreover, a new "lazy" way to SLY collect completions from the Lisp
backend means that user input is not blocked if this takes a long
time.  The result is a much more responsive on-the-fly completion
experience.

If you don't like company, you can still use the normal on-request TAB
completion, which also features an improved UI.

### Redesigned completion backend

A redesigned completion backend replaces the legacy contribs
`sly-fuzzy` and `sly-c-p-c`. The new "flex" backend considers package
designators in the search string so you can complete other package's
symbols even when outside a package.

Here's an example:

```
CL-USER> (quiloa)         ->  (ql:quickload)
CL-USER> (scan)           ->  (ppcre:scan)
CL-USER> (setf locadirs)  ->  (setf ql:*local-project-directories*)
CL-USER> (mvbind)         ->  (multiple-value-bind)
```

Flex completion is on by default, but that can be changed via
`sly-complete-symbol-function`. The
[documentation](http://joaotavora.github.io/sly/#Completion) has more
information.

Package-local nicknames are also considered (provided your
implementation supports them).

### Completely rewritten manual

Manual has been reviewed from top to bottom. It should be much easier
to navigate and nicer read in general, thouch it *still needs quite
some proofreading*

[A new chapter for existing SLIME 
users](http://joaotavora.github.io/sly/#A-SLY-tour-for-SLIME-users)
figures prominently in the top-level.

Presently no major omissions (*except maybe for multiple inspectors*).
Reorganized nodes into a new structure not so focused on core vs
contribs. Deleted stale sections. REPL section heavily rewritten to
explain output types and backreferences.

### New command M-x sly-import-symbol-at-point bound to C-c i by default

This is a counterpart to the existing M-x sly-export-symbol-at-point,
bound to C-c e. It strips the symbol under point of its package
designator, and adds it under the :import-from subclause of the
current package's defpackage form. An improvement suggested and
implemented by Alexander Artemenko (github #147).

### Improved SLY Stickers UI

The UI for SLY Stickers, particularly for `M-x sly-stickers-replay`
has been cleanup up. Upon entering the replay mode, SLY may ask user
if she wants to delete the previous recordings, a commonly forgotten
but useful pre-step (an idea by Javier Olaechea, github #91). Also,
window management is less random.

### Stale buffers are killed on connection close

Inspector, debugger, and other buffers pertaining to a connection are
automatically killed when the connection is closed.  The types of
buffers that are exempt from this is configurable in a new
`sly-keep-buffers-on-connection-close` defcustom, which lists
REPL buffers by default.

### Autodoc function args available in minibuffer prompts

In minibuffer prompts like the one of `M-x sly-inspect`, autodoc
information is available and displayed temporarily in the mode-line.

### `C-c C-o` and `C-c M-o` bound in the REPL

These clear recent output and the whole REPL, respectively.

### Easy to parse copied calls to REPL

The "Copy call to REPL" funcionality in the Trace Dialog and SLY-DB
buffers now understands that symbols and numbers can be printed
directly in the reconstructed function call, which eases reading.

### The .swankrc and .swank.lisp are not loaded by default

A problem encountered by Zach Beane.

### Window management with M-. has been fixed

When finding the definition of a generic function with M-., an *xref*
buffer pops up in a (possibly reused) window, showing code
locations. When selecting one of those locations, make sure to honor
the original intent of M-. of switching buffers in the original
window. Quit the *xref* window should full...
...



reply via email to

[Prev in Thread] Current Thread [Next in Thread]