Skip to content

lispy 0.23.0

Compare
Choose a tag to compare
@abo-abo abo-abo released this 09 Feb 13:51
· 1733 commits to master since this release

Fixes

  • M-DEL improved in strings; it doesn't leave the string after kill; whitespace issue is fixed.
  • fix () in (eq (char-before) ?\() being interpreted as nil by lispy--read
  • F is fixed for Clojure after breaking with a CIDER update
  • M-RET inserts an outline of at least level 1
  • M-m fixed near a string
  • p will not modify whitespace
  • C-g will not jumble ace commands

Enhancements

  • j and k don't switch list side when they can't go any further
  • C-d is even less whitespace-hungry
  • e will treat , as identity for eval purposes: it's now possible to eval e.g.
    (list (list ,foo)|), which will return the result of (list foo).
  • C-3 will try to expand abbrevs
  • DEL will treat a comment as a sexp, when at start of comment: extra whitespace will be deleted.
  • p is greatly improved for when there are more that 2 windows: you will select the target window
    with ace-window. Afterwards, if the window configuration doesn't change, the target window will stay the same
    and you don't need to select anymore.

New features

  • 4 SPC will amend current sexp with a newline
  • M-left and M-right move outlines, just like in org-mode
  • C-a will call lispy-move-beginning-of-line which either moves to beginning of line,
    or back to indentation when already there. It will also reveal a hidden outline when appropriate.

Completion methods aplenty for g

A new custom variable lispy-completion-method can now take 3 values:

  • helm - completes with helm. Yep.
  • ido
    • completes with ido, strings don't include filename to save space
    • when ido-vertical-mode is on, gives strings same as for helm
  • default - falls back to other completion methods:
    • icomplete-mode, when it's on
    • icy-mode, when it's on
    • plain-old completing-read when nothing else is on

Updated outline shortcuts

When at outline:

  • l will promote
  • h will demote
  • M-RET will not leave special when adding an outline
  • a forwards to M-RET now
  • L will go to the outline's first child sexp
  • t is bound to `end-of-line' when at outline. Use
    e.g. at to immediately edit the outline name. Or use
    alt to promote it once before editing etc.
  • DEL can delete the previous outline.

Incompatible changes

  • h doesn't jump between top-level sexp and the outline anymore.