haberdashPI / vscode-selection-utilities

Kakaune-inspired collection of useful commands for manipulating selections.
MIT License
10 stars 0 forks source link

Selection Utilities

Project Status: Active – The project has reached a stable, usable state and is being actively developed. CI Code Style: Google

[!WARNING] 🚧 documentation under construction 🚧 The documentation for selection utilities is under construction. The older docs are currently accurate, but are missing some new commands, and upcoming updates may change some of the names of commands and their arguments

This extension provides a series of utilities for manipulating, saving and creating both single and multiple selections, many of which are inspired by Kakoune.

There are many commands, and they are designed to work together. They work well in conjunction with Master Key. In particular the Larkin presets available in Master Key make extensive use of all features from this extension.

The easiest way to learn about Selection Utilities is to use it in conjection with Master Keys. Otherwise, because there are so many commands, and any given set of keybindings for this extension could easily overwrite existing bindings, there are no default keybindings; you will need to learn about commands you want to use and then customize them yourself for your own purpose.

Commands

Changing the Active and Anchor positions of a Selection

Exchange anchor animation

Read more

Selection Motions

Subword Selection Animation

These commands allow the active selection to moved by or extend by particular units (word, paragrpah etc...).

Read more

Saving selections

These commands save a selection for later, or add any arbitrary selection to a list of soon-to-be multiple selections.

Saved Selection Animation

Read more

Adding and removing selections

While VSCode comes with a way to add or remove multiple selections (Ctrl/Cmd - D) the following commands provide a bit more flexibility in this behavior by introducing the notion of a "primary" selection. You can remove the primary selection and you can add new selections relative to this primary selection.

Move primary selection and delete cursor animation

Read more

Splitting/filtering selections

These commands split, create or filter selections according to tokens. The tokens to use can be provided by the user via an input box, or you can pass it in the argument text when defining the command to call.

Filter selection animation Split selection animation

Read more

Shrinking selections

These commands modify the start and end of selections.

Symmetric motions animation

Read more

Editing Text by Selection

Align Selection animation Symmetric Insertion animation

Read more

Related projects