Skip to content

Consider adding lisp state and repeat counts to Clojure structural editing #185

@lread

Description

@lread

Problem

I am really enjoying @jr0cket's contribution of Clojure support in #154. It is almost like being in Spacemacs!

Two things that I really miss are:

  1. The concept of entering a lisp state. If you are not familiar with lisp state in Spacemacs, what happens is, after SPC k (which translates to , k under Clojure mode for VSpaceCode), the cursor becomes a pink block. While in lisp state, you issue structural editing commands without entering the SPC k prefix.
  2. Supporting repeat counts for structural editing commands. This is exactly like entering a number before a vim command, for example 10 d d to delete 10 lines. For structural editing, this would be , k 3 s to slurp three times. Or if already in lisp state, 3 s to slurp three times.

And a third thing that I kinda miss is:

  1. some structural editing key bindings (maybe yank and some portions of delete).

Solution

I'd like to explore implementing items 1 and 2 above, but am unsure where to start.
Item 3 is, I think, technically simpler and can be explored after 1 and 2.

I am happy to explore implementing this feature and, if technically viable, submitting a PR, but would need some hints as to how to approach items 1 and 2.

Alternatives

None considered at this time.

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions