3 Features

3.1 Editor-specific features

Some features could not be abstracted into the Parkour library and had to be implemented in the top-layer code of a particular editor plugin.

3.1.1 Vis

  • objectwise pasting

    This is a generalization over linewise pasting — pasting a previously deleted/yanked sexp object will put it before or after the current object and insert an appropriate whitespace separator (space or newline), regardless of where exactly the cursor is.
    This makes it easy to, say, transpose/barf/slurp, without using the dedicated operators, this way flattening the learning curve a bit. Of course, the dedicated operators have their advantages — fewer keypresses, keeping cursor position, atomic undo, dot-repeatability.

  • splicing delete

    When inside a list or quasi-list, d-ing with a motion that lands on one of the delimiters will remove the opposite delimiter as well. This merges two paredit commands — splice-killing-{forward,backward} and splicing, into the NORMAL-mode delete. You can use dE, dB, x, or X, but any motion that leads to the above situation will do (even something like d5h).

  • autoselect

    This reverses the typical for vi verb-noun order, and makes vi motions work like those in Kakoune.