specter

steveb8n 2023-10-16T00:11:09.764989Z

random thought: Cursorless is pretty much Specter “transform” https://www.youtube.com/watch?v=NcUJnmBqHTY

chromalchemy 2023-10-16T14:06:27.788989Z

Interesting. Im a long time Specter user, and recent Cursorless adoptee. I hadn’t thought of them together. Talon & Cursorless invite going hog wild with refactoring functions, since you are not constrained by overloading and memorizing keyboard hotkeys, or constantly navigating command palletes. And you can paramaterize function calls with inline “audibles”. If you can declare it, you can perform it immediately. Maintaining flow while having access to a broad/custom functional command library/grammar. Cursorless provides a code selection grammar. Probably using LSP under the hood. The actions are the vscode + extensions apis. Or just executing keyboard and mouse events… I have been able to use custom Calva repl commands with cursorless calls. This all motivates me to learn refactor-clj or whatever Calva has, to use the AST data to do more elaborate refactoring commands. At that point it’s clojure data and could use any select/transform lib (why not Specter?) to effect the refactor? Could also use Joyride to run arbitrary cljs, that runs in-process.

chromalchemy 2023-10-16T14:09:21.172009Z

Side note: since Specter navigators are pretty declarative, it would be neat to mirror the api in a Talon grammar for voice driven iterative Specter data query + transformation at the repl.

steveb8n 2023-10-16T00:11:56.284569Z

it has exactly the same separation of composable navigators and actions to perform on the nav result