A lot of the work done while writing code, is reading code. So my favorite themes and extensions revolve around enhancing that side of the experience while working in VSCode. Because at the end of the day, readable code, is maintainable code.
One of my first installs whenever I'm setting up VSCode is Material Icon Theme. Personally I find it odd that by default, files get icons while folders don't. Especially with the drop-down carrot being left-aligned with the file icons. So for me, this makes it easier to pick out folders from icons while quickly glancing at the explorer.
This next one is technically an extension, but it provides another layer of readability that I couldn't do without. That is Bracket Pair Colorizer 2. If you write in any language that is not white-space dependent, you probably will have a lot of brackets denoting code blocks. And a lot of times, if you get the bracketing wrong, it can cause issues. So having an extension that makes it easier to pick out the pairs of brackets can help you debug when you have bracket mismatches.
Finally, my themes list. I'm a big dark-mode user. So I tend to go for dark backgrounds with high contrast text coloring.
- Linux Themes for VSCode
- This theme pack has a couple options. My go-to is "United Ubuntu". This is the theme featured in the cover art.
- Another great theme pack. My favorite out of here would have to be "Mirage"
The extensions ecosystem in VSCode is by far one of the best reasons to make the switch if you haven't already. I just want to take a second and thank all of the extension authors out there, for taking the time to make VSCode as great as it is. To keep things simple, I'll list my extensions off, then highlight a couple of my favorites.
- AWS Toolkit
- Code Spellchecker
- Cypher Query Language
- Git Graph
- Git Lens
- Project Manager
Code Spellchecker is one of my more recent discoveries, and probably one of my favorites. It works exactly how you would expect it to work. Highlighting spelling errors in your codebase. Having code that is comprehensible by other humans, is an integral part of writing software. Whether some people would like to admit it or not. So having a normal spellchecker alongside your syntax checker can help with that.
Git graph has become a staple of my workflow. If you've ever been a part of a project with lots of people working together . Or on a project with a lot of git-based automation, keeping track of branches and tags is important. This extension provides a great visualization, along with the ability to perform git operations from within the visualization. Checkout their repository for a great demonstration.
If, like most people, you have more than one project that you're working on at any given time. It can be tedious to navigate to and from your various projects. Project Manager makes it really easy to switch between projects with just a couple of clicks. You never have to leave your editor and you don't have to worry about having multiple instances of VSCode open.
Here's my settings.json I tend to leave things default as much as possible, mainly for stability. The only real changes I've made are enabling formatting on paste/save and what formatter to use for different languages.
What extensions do you use that have changed how you work for the better? Have you authored an extension? Do you use an editor that beats VSCode?