In addition to this list, for those doing node monorepos in 2022, the extensions that I think you must use are:<p><pre><code> - Github copilot - like autocomplete on steroids.
- peacock - change the workspace color - helps reduce mental load when working on different projects.
- tag autorename - this should be built into vscode, saves a bunch of keystrokes
- snippets - this is a category of extension. Find whichever snippet lib is out there for your stack.</code></pre>
One of my most used VSCode extensions at the moment is "Fix JSON". It fixes problems in JSON by running the broken JSON through jsonic. If you ever need to take a JS object dump (from an error stack trace, or a Redux state dump, etc) and turn it in to well formatted JSON it's very useful.
An increasing amount of extensions phone home parts of your code, many of which do not disclose it anywhere, some performing tasks so mundane you wouldn't ever have considered a remote server would be taking care of it.<p>Installing something like Copilot could have massive legal consequences if you're working under an NDA, with protected customer data, any proprietary code that isn't yours, etc. Something to keep in mind.
One of these at least is a native feature of vscode now (rainbow brackets) so I’d consider this post to be of low quality. If you ran even half of these last it’d really slow vscode down too.
VSCode thread, a great opportunity to ask, how does one deal with seemingly one of the worst "(" ")" indentation rules in a history of editors? E.g.<p><pre><code> h = React.createElement
h("div",
h("label",
h("input",
)
)
</code></pre>
Reindents into:<p><pre><code> h = React.createElement
h("div",
h("label",
h("input",
)
)
</code></pre>
It only happens with (), but {} [] work fine. Couldn't find any extension, neither wrap my head around indentationRules.
VS Code is pretty cool, and when I use it -- I have it open right now --, I mostly enjoy it.<p>But I'm very concerned about the security of the extensions. They are so great, they are what makes VS Code the great tool that it is, but I fear that it will soon have the same problems npm has.<p>Are there any kind of protections in place which prevent an extension developer to sell his extension or he/she itself go rouge and siphon out the code being edited, or the entire project being worked on, or even install malware on the machine?
This list is shorter than I thought. Some of mine:<p>- Bookmarks - cycle through anywhere in a file <i>or</i> a project, or see/navigate a complete list<p>- TODO Highlight - highlight any regex (e.g. TODO.*, NOTE, DONE)<p>- Highlight - more enhanced highlighting (e.g. me highlighting full //---… lines with bg and border, like a very visible section)<p>- Markdown Preview Enhanced<p>- Subtle Match Brackets - much better pair highlighter (may be too colorful by default, just tune it accordingly)<p>- VsCode NDJson - file type for ndjson/jsonl files<p>- TabOut - tab your way out of auto-inserted brackets and quotes
I've created a set of VS Code extension packs a while ago to make installing those useful extensions easier: <a href="https://dsebastien.net/blog/2019-11-24-vs-code-extension-packs-to-boost-productivity" rel="nofollow">https://dsebastien.net/blog/2019-11-24-vs-code-extension-pac...</a>
This is a great list, thanks for this. Many of these I use, but glad to see REST client, which I didn't know about. Have been looking for a replacement for Postman since they went off the "enterprise" deep end. I mean, I basically want a slightly better UI for curl, not 60 levels of "project management" features to make an HTTP call.
<p><pre><code> - Filter lines
- Align by RegEx
- Excel to Markdown table
- Gistpad
- Markdown all in one
- Markdown PDF
- Project Manager
- Sort
- Spell Right
- Thunderbolt client
- Todo Tree</code></pre>
How about atom? I can share some:<p><pre><code> - atom-easy-jsdoc
- atom-live-server
- atom-typescript
- atom-ide-deno
- atom-ide-javascript
</code></pre>
For full IDE-like experience, I recommend these as well:<p><pre><code> - linter
- linter-ui-default
- atom-ide-base
- atom-ide-code-format
- atom-ide-datatip
- atom-ide-base
- atom-ide-debugger-node
- atom-ide-definitions
- atom-ide-deno
- atom-ide-hyperclick # Or hyperclick by facebook-atom
- atom-ide-javascript
- atom-ide-outline
- atom-ide-ui # don't forget to turn off diagnose in setting. It conflict with linter</code></pre>