DEV Community

Cover image for Switching back to my old buddy Sublime Text from VS Code 🤷🏻‍♂️
Sarthak Sharma for XenoX

Posted on

Switching back to my old buddy Sublime Text from VS Code 🤷🏻‍♂️

Okay, this will be a really quick article. Up until just a few days ago, I was a VS Code lover like anyone else these days. I use to write a column of top VS Code Themes and Plugins every month in my monthly blog series "Ultra List" as well, but recently, I shifted back to Sublime Text.

Why? Let me tell you in this blog post.

Why? 🤔

So while we were working on a big old project, I observed something. Some of my teammates started complaining about their systems slowing down when working on that project. They complained about this often, and after a while, I just couldn't ignore the issue. So I decided to look into it, and I found out that the culprit was VS Code. When you work on big projects with lots of files, the folder structure starts looking like this.

folder structure for big projects

The problem starts here: the more files you have and the bigger your project, the more resources VS Code will start to consume. The Search Indexing and File Watcher scripts start eating up your memory. Moreover, to work on such a project, you will open each file in a new tab, leading to multiple VS Code instances running simultaneously, and eventually, your CPU usage will start to look like this.

CPU usage screenshot 1

CPU usage screenshot 2

If you have 4GB RAM, like some of my teammates, you can't code efficiently on a big project like this. And I can't tell my teammates to upgrade their RAMs. So the better approach for me was shifting to my old mate Sublime Text, see if it could help reduce the memory load on our machines without sacrificing general efficiency and important VS Code features we've all come to rely on, and then help my teammates set it up correctly. I am pleased to report that this was a successful experiment and I'm gonna stick to Sublime Text now, at least for the foreseeable future.

Check out its memory usage for the same workspace.

Sublime Text memory usage


How? 🤔

So if you think this is cool and could help your machine run lighter so you can code faster, stay with me and find out how you can achieve this too.

Once you install Sublime Text and Package Control, here is a list of plugins and themes that can help you to have the same experience you're used to on VS Code.

Plugins

1. GitGutter: It has everything that you need from a git plugin.
Gitgutter screenshot 1
Gitgutter screenshot 2

2. ColorSublime: It is possibly the best plugin out there for themes. This plugin can help preview a theme real-time, even if that theme is not installed on your Sublime Text at that time. 🤯

ColorSublime screenshot

3. Sublime​Code​Intel: Code completion like VS Code but way lighter.

4. SideBarEnhancements: Take your sidebar options to the next level with this plugin.

5. BracketHighlighter: Best Bracket Highlighter; matches a variety of brackets such as: [], (), {}, "", '', , and even custom brackets.

BracketHighlighter screenshot

6. PlainTasks: An opinionated to-do-list plugin for Sublime Text (2 & 3) editor.

Plaintasks screenshot

Themes

Now that you have the basics taken care of, it's time to personalize your setup. Check out these themes and give your Sublime Text a facelift.

Other Cool Stuff

If you want to explore further and see what more you could do with Sublime Text, go check out this AWESOME list. 📃

GitHub logo dreikanter / sublime-bookmarks

Sublime Text essential plugins and resources

Sublime Text Bookmarks Awesome

Sublime Text is a cross-platform text and source code editor, with a Python application programming interface. Its functionality is extendable with plugins. Most of the extending packages have free-software licenses and are community-built and maintained. — Wikipedia

This tiny project follows GitHub community trend to aggregate the most essential bookmarks for specific subject in the form of a handy well-structured collection. Here you will find tutorials and learning materials for Sublime Text, general purpose extensions for coding and text editing, and specialized extensions grouped by usage profiles.

This list not supposed to include absolutely all Sublime Text plugins, due we already have Package Control for this. It is intended to be a starting point helping to setup working environment, or check out for new extensions to make your existing Sublime setup more awesome. You may find ★ here and there in the list. It stands for Editors'…

It contains everything from useful books and community resources to plugins for specific profiles like JS, Python, and Ruby that could make your life much easier. You can also find some cool icon packs and fonts in there to customize the look and feel of your Sublime Text further. 🎨


Conclusion

And that's it for this post; short and sweet, just like I promised. That's my journey back to Sublime Text, a code editor I used for years before switching to VS Code. I'm really happy to discover that it's still amazing, better than ever in fact, and has a thriving ecosystem and community. Since switching back to it, I've seen a huge improvement in the productivity of my team, especially when working on big codebases. We've seen reduction in task completion times by as much as 60%, according to reports in our product management tool, ClickUp, which is awesome by the way and definitely worth checking out. So if you've been feeling done with VS Code and its memory-hungry tendencies, or if you simply want a change, go try Sublime Text and see the results for yourself.


One More Thing

If you're looking for work, we're hiring fullstack developers (MERN) at Skynox Tech! You can apply on Angellist, LinkedIn, or via direct email to info@skynox.tech. 😀💯

Ooh, and lastly, if you're already a Sublime Text lover and long-time user, please share your own experience and cool plugins and themes that I might've missed.

moonwalk goodbye gif

Top comments (173)

Collapse
 
deckchairlabs profile image
James Edmonds

I forget exactly what I needed to do to improve the performance, but while working in a large workspace I've often found the culprit is the file watcher service. You can add directories to exclude from intellisense, mainly node_modules and your build output directory. The only directory intellisense should care about is your source code. Doing so led to vscode becoming much more responsive. I might make a post about it once I've finished moving house...

Collapse
 
deckchairlabs profile image
James Edmonds

Looks like somebody beat me to it! dev.to/vaidhyanathan93/ulitmate-vs... main sections to note are the files.watcherExclude, files.exclude and the search.exclude, this may require customisation based on your setup, but you could also do this per workspace. Another tip is to disable extensions you don't need per workspace.

Collapse
 
lishine profile image
Pavel Ravits

There is problem with ubuntu regarding file watching with vscode, comparing to windows or mac. And excluded node_modules, but still I was forced to increase the limit in linux. I don't know, maybe causes some issues with cpu later...

Collapse
 
sarthology profile image
Sarthak Sharma

That would be a great idea James 😊

Collapse
 
utkarsh profile image
Utkarsh Talwar

That's a good idea. A post to look forward to. 😃

Collapse
 
x1k profile image
Asaju Enitan

please make a post about it, I found out VSCode is best for my Angular projects but old processor makes it a hassle

Collapse
 
sarthology profile image
Sarthak Sharma

Woho !! Things escalated real quick down there. Anyway, I agree with you completely Niels. But consider this a quick fix. Also few laptops were old enough that even upgrading ram couldn’t help (old processors). So, by adjusting in what they have and getting the best out of it, the short term solution can be shifting to lighter options but in long term buying a new laptop is a better option of course. 😊

Collapse
 
jdknox profile image
Jeff

My laptop from 7 (8?) years ago had 16GB of RAM. I'm not looking for a cookie or anything, but RAM should always be a priority for devs.

(Granted I was also doing 3D, but I think RAM should be a priority regardless. CPU and disk space are second class citizens.)

Collapse
 
bhupesh profile image
Bhupesh Varshney 👾

Sublime is my go to editor, never leaving it
plus VScode = electron = chrome = RAM Eating 😆

Collapse
 
sarthology profile image
Sarthak Sharma

Exactly!!

Hey Bhupesh, Do you mind sharing some plugins, themes, and Tricks here.

Collapse
 
bhupesh profile image
Bhupesh Varshney 👾
Thread Thread
 
sarthology profile image
Sarthak Sharma

Thanks man. JavaScript Completions is ❤️

Thread Thread
 
maxdevjs profile image
maxdevjs

It seems that Java​Script Completions has been replaced by JavaScriptEnhancements, being the former unmaintained nowadays

Collapse
 
jamesthomson profile image
James Thomson

I'd also add AdvancedNewFile to the list and Material Theme package.

Here's my customised preferences incase you're interested:

{
    "binary_file_patterns":
    [
        "node_modules/",
        "public/",
        "vendor/",
        "*.jpg",
        "*.jpeg",
        "*.png",
        "*.gif",
        "*.ttf",
        "*.tga",
        "*.dds",
        "*.ico",
        "*.eot",
        "*.pdf",
        "*.swf",
        "*.jar",
        "*.zip",
        "*.chunk.*"
    ],
    "bold_folder_labels": true,
    "color_scheme": "Packages/Material Theme/schemes/Material-Theme.tmTheme",
    "font_size": 12,
    "highlight_line": true,
    "ignored_packages":
    [
        "Vintage"
    ],
    "indent_guide_options":
    [
        "draw_normal",
        "draw_active"
    ],
    "indent_to_bracket": true,
    "line_padding_bottom": 3,
    "line_padding_top": 3,
    "overlay_scroll_bars": "enabled",
    "show_tab_close_buttons": false,
    "tab_size": 2,
    "theme": "Material-Theme.sublime-theme",
    "translate_tabs_to_spaces": true,
    "use_simple_full_screen": true
}
Collapse
 
thomas_ph35 profile image
Thomas

Totally agree, I was feeling some perf issues on webstorm when i was running a VM.
The first thing I did was a RAM upgrade, now I run 16GB and it's smooth again.

I enjoy webstorm so much I don't know how I would do without it !

But it's still nice to know that getting SublimText can be a quick fix.

Collapse
 
sonnk profile image
Nguyen Kim Son

I am also a sublime text lover but it’s true that vscode is doing some stuffs far better than sublime. At the end I just use them both, sublime mostly for exploring code (read only) and vscode for a more intensive code editing (and pycharm for advanced stuffs :) ).

Collapse
 
utkarsh profile image
Utkarsh Talwar

With the right extensions, I think Sublime Text can be pretty powerful. We've made sizeable, production-ready projects on it in the past. Of course, VS Code has some feature advantages over it, but still Sublime Text is pretty capable imo. 😄

Collapse
 
sonnk profile image
Nguyen Kim Son

Yeah that's another imperfect thing about Sublime: it doesn't work great out of the box. That being said installing extensions is quick and we just need to do that once.

The VS killer feature for me is the debug & breakpoints though, being able to inspect quickly and visually while debugging speeds up a lot the workflow IMO.

Collapse
 
rolandcsibrei profile image
Roland Csibrei

I am running into the same problem with my Surface laptop 2 with 8 GB of RAM and an i7 CPU, so it's not a third world problem as Niels was trying to state. Thanks for the article and for the response though! But have to tell, Niels is right, working professionally and do not have the basic tools seems to be contraproductive and ridiculous...

Collapse
 
x1k profile image
Asaju Enitan

same here
8gb RAM, core i7, but the laptop is pretty old and I am not in liberty to purchase another one so a quick fix is something I'd love to switch to

Collapse
 
andrasfelfoldi profile image
Felföldi András

I had the same issue when I was working on my React Native hobby project called Sudoku Mobile (shameless plug here).

My laptop almost became unusable and my battery was draining very quickly. I switched to Atom (another Electron based app :D) for the project and I didn't have this issue anymore, but I really missed VSCode.

Collapse
 
sarthology profile image
Sarthak Sharma

Atom is also good. You may wanna share some resources for it ?

Collapse
 
andrasfelfoldi profile image
Felföldi András

I don't really know about any good stuff for atom as I didn't use it much in the end. I went back to VSCode within a few days and tolerated the performance issues. Atom couldn't property comment JSX at the time (for me at least) and that made me switch back.

Collapse
 
vonheikemen profile image
Heiker • Edited

Sharing is fun. Here I go.

Plugins

  • AceJump: Allows you to move the cursor to any character to any place currently on screen.

  • Origami: Better split pane control.

  • FileManager: Manage your files without using the sidebar.

  • NeoVintageous: Vim emulation.

  • Requester: HTTP client for Sublime Text 3.

Themes

Collapse
 
pratik149 profile image
Pratik Rane

Thank you! FileManager worked for me. Just enough options. Seems better than SidebarEnhancements which is just too much.

 
moopet profile image
Ben Sinclair • Edited

It's likely that buying another 4GB is cheaper than buying Sublime Text. I picked up a 2GB stick from my local CEX store the other day for £1. I do realise that's different depending where you live.

Collapse
 
kayis profile image
K

I'm planning to switch to github.com/cdr/code-server

I'm already using AWS Cloud9 for cloud development because everything on its EC2 is configured like the production environment and it works from all machines.

But I prefer the usability and extensions of VSCode, so I'm not too happy with C9.

Since MS is offering VSCode remote via Azure already I think it will get better in the future. Meaning, most of the "hard" things will be done on the server, allowing me to just provisioning a bigger machine if things get out of hand.

Let's see how this goes :)

Collapse
 
sarthology profile image
Sarthak Sharma

I was planning to do that too. Do share your learnings.

Collapse
 
fyodorio profile image
Fyodor

Yes, please, K!

Some comments may only be visible to logged-in visitors. Sign in to view all comments.