Skip to content

Implement Paredit commands #9

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
34 of 39 tasks
eerohele opened this issue Jun 4, 2020 · 1 comment
Open
34 of 39 tasks

Implement Paredit commands #9

eerohele opened this issue Jun 4, 2020 · 1 comment
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@eerohele
Copy link
Owner

eerohele commented Jun 4, 2020

The paredit package doesn't work perfectly with Clojure, and it has no license, so I can't fork it. That means I need to reimplement some subset of Paredit commands from scratch.

See also the Animated Guide to Paredit.

  • Open Round
  • Close Round
  • Close Round and Newline
  • Open Square
  • Close Square
  • Open Curly
  • Close Curly
  • Double Quote
  • Meta Double Quote
  • Backslash
  • Semicolon
  • Comment (dwim)
  • Newline (indent.py maybe covers this?)
  • Forward Delete
  • Backward Delete
  • Kill (use Kill Form instead)
  • Backward Kill Form (cf. Backward Kill Word)
  • Forward Kill Form (cf. Forward Kill Word)
  • Forward
  • Backward
  • Backward Up
  • Forward Down
  • Backward Down
  • Forward Up
  • Wrap Round
  • Wrap Square
  • Wrap Curly
  • Splice Sexp
  • Splice Sexp Killing Backward
  • Splice Sexp Killing Forward
  • Raise Sexp
  • Convolute Sexp (probably not, even Cursive doesn't implement it)
  • Forward Slurp Sexp
  • Forward Barf Sexp
  • Backward Slurp Sexp
  • Backward Barf Sexp
  • Split Sexp
  • Join Sexps
  • Recenter on Sexp
eerohele added a commit that referenced this issue Jun 4, 2020
eerohele added a commit that referenced this issue Jun 6, 2020
Guess we needed the "move inside the adjacent sexp" thing after all...
eerohele added a commit that referenced this issue Jun 7, 2020
...I think I need to do a refactoring "sprint" next so that things don't
get out of hand.
eerohele added a commit that referenced this issue Jun 9, 2020
eerohele added a commit that referenced this issue Jun 10, 2020
eerohele added a commit that referenced this issue Jun 10, 2020
It's still certainly very wrong, but hopefully less wrong than before.
eerohele added a commit that referenced this issue Jun 10, 2020
eerohele added a commit that referenced this issue Jun 11, 2020
eerohele added a commit that referenced this issue Jun 11, 2020
eerohele added a commit that referenced this issue Jun 11, 2020
We now indent the innermost form instead of the outermost form.
eerohele added a commit that referenced this issue Jun 11, 2020
eerohele added a commit that referenced this issue Jun 11, 2020
eerohele added a commit that referenced this issue Jun 12, 2020
eerohele added a commit that referenced this issue Jun 14, 2020
eerohele added a commit that referenced this issue Jun 14, 2020
The cursor position is wrong if the sexp gets pruned after sluping. Same
thing with forward slurp. Need to see if I can figure out a way to
retain the cursor position.
@eerohele eerohele pinned this issue Jun 15, 2020
@eerohele
Copy link
Owner Author

eerohele commented Jun 15, 2020

Whew… I think that's all I'm going to implement for now. I'll look at implementing the rest if I come across a situation where I need them (or maybe if someone asks for them).

@eerohele eerohele added enhancement New feature or request help wanted Extra attention is needed labels Sep 27, 2020
eerohele added a commit that referenced this issue Aug 21, 2022
For better or worse, it should match the behavior of paredit.el pretty
well.
eerohele added a commit that referenced this issue Aug 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant