Tutkain
Tutkain copied to clipboard
Implement Paredit commands
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.
- [x] Open Round
- [x] Close Round
- [ ] Close Round and Newline
- [x] Open Square
- [x] Close Square
- [x] Open Curly
- [x] Close Curly
- [x] Double Quote
- [ ] Meta Double Quote
- [ ] Backslash
- [x] Semicolon
- [x] Comment (dwim)
- [x] Newline (
indent.py
maybe covers this?) - [x] Forward Delete
- [x] Backward Delete
- [ ] ~Kill (use Kill Form instead)~
- [x] Backward Kill Form (cf. Backward Kill Word)
- [x] Forward Kill Form (cf. Forward Kill Word)
- [x] Forward
- [x] Backward
- [x] Backward Up
- [x] Forward Down
- [x] Backward Down
- [x] Forward Up
- [x] Wrap Round
- [x] Wrap Square
- [x] Wrap Curly
- [x] Splice Sexp
- [x] Splice Sexp Killing Backward
- [x] Splice Sexp Killing Forward
- [x] Raise Sexp
- [ ] ~Convolute Sexp (probably not, even Cursive doesn't implement it)~
- [x] Forward Slurp Sexp
- [x] Forward Barf Sexp
- [x] Backward Slurp Sexp
- [x] Backward Barf Sexp
- [x] Split Sexp
- [x] Join Sexps
- [x] Recenter on Sexp
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).