Extend VSCode without the ceremony of making a full extension! Just write your code anywhere and it'll be part of VSCode!
- New keybinding:
shift+cmd+E to insert the result onto the next line.
- New keybinding:
cmd+H to provide a command pallet for user-defined commands using this extension.
- The easy-extensibility Extension API, or “E API”, which acts as a high-level user-friendly alterative to the default vscode Extension API.
- 🚴 Open the tutorial to learn more about using
cmd+E by invoking
- 📚 To learn about “saving reusable functions and having them load automatically”, please invoke
cmd+h find users init.js file, or provide a template
E API is well-documented; for example the
E.readInput method's docs even suggest an example user extension. 🚀
Anaphoric Usage (with code completion & docstrings)
The current implementation treats VSCode as if it were dynamically-scoped: Any open editor may mention
E, commands, vscode with no ceremonial import of any kind!
- This is similar to the use of the keyword
this in object-oriented programming: It's an implicitly introduced argument!
However, for discovarability and example uses, it would be nice
to have code completetion: Just write
E. and wait a second to
see possible completions ---or write the name of the method you
want to use and if it's part of the
E API, you'll also get completion as shown below.
A growing user-friendly API!
There is essentially only one step (⭐) to making an extension.
🤗 Sharing an extension, such as a tiny 5-line command, should be as easy as having that defintion code readily available.
In constrast, the default approach to making a VSCode extension is as follows:
- 😱 Make a new NodeJS project, say with
yo code as per https://code.visualstudio.com/api/get-started/your-first-extension
- ⭐ Actually write your extension's code
- 😱 Run your code in a dedicated sandbox with
F5, far from your code
- 😱 Try your extension; stop the sandbox; alter your code; repeat.
- Now to actually make use of your extension, you should pacakge it with
This approach doesn't encourage making extensions ---since there's so much ceremony--- and it, likewise, doesn't encourage sharing/packaging up the resulting (tiny) extensions.
cmd+h tutorial to see the tutorial, which
concludes with a comparison of our
versuses thats of the default VSCode style.