For most developers, text editors are just as sacred as discussing the proper way to say “gif.” Sublime Text has been the heavy hitter for some time and for good reason. As an avid Sublime user I decided to see where Atom stood since I last looked; the time of early beta stages. What follows is my experience during a period of five days using the Open Source code editor from GitHub told through the perspective of a seasoned Sublime user.
Atom
I’d like to begin by addressing a few general points concerning my time with Atom before discussing particular facets. During my brief visit I had a bit of trouble finding syntax highlighting that worked right for dot files and bash. I’m sure if I hunted this down a bit longer I may have been able to solve that dilemma, but again it was only for a short period of time. Image previews for PNG, JPEG, ICO assets were wonderful to view directly in the editor, although I didn’t always need this (see the Homer Simpson car).
When previewing via the sidebar’s file tree, a file selected would remain open if a click didn’t occur thus requiring another action on the user’s part to close the file. As you can see in the screen captures above, Sublime handles this the best.
Community Packages
The first bits you’ll want to address when making the crossover are what I term “creature comforts.” In my case, I had five days to find the one’s I used the most and what follows is a short list; although there are plenty out there like color pickers for example.
- atom-beautify by Glavin001
- autoclose-html by mattberkowitz
- bezier-curve-editor by abe3
- emmet by emmetio
Make Emmet Understand Custom Grammar
I typically write in Handlebars for my static site generator projects and Atom picks these files up as Mustache grammar. Since Emmet will not work correctly in Handlebars files you can get your Emmet’s mojo back with expanding abbreviations by adding the line below to your Keymap:
Emmet Autofill in JavaScript
Particularly with JavaScript I found that emmet’s expanding abbreviations for things like console.log
wasn’t working as I expected. Abbreviations like cl + tab
would produce a Class definition snippet in JavaScript whereas Sublime would do an autofill for console.log()
. It seems I’m not the only one out there who’s had complaints when it comes to Atom & Emmit. I didn’t have a chance to write much JavaScript during my time with Atom & Emmet, but I’m guessing if I spent more time I’m sure I’d find something I didn’t like. This is still an assumption on my part of course, but a gut feeling nonetheless.
Markdown Preview
Markdown preview was truly amazing, but also a bit touchy at times in terms of performance; especially when opened for a prolonged period of time. The preview results match up perfectly with GitHub’s markdown rendering although it’s a GitHub product so we shouldn’t expect any less.
I find many text editor’s live preview for markdown like Mou never seem to gauge markdown code blocks quite right or even fail to display embedded items like pens from CodePen; something I do quite often as a writer and a feature not many allow for.
Quick Keys
Coding started out rough when I tried to find my creature comforts such as splitting panels and closing them. Ultimately I figured out a solution, but the feeling of being severely lost was remnant for a period of time. There are ways to decipher quick key combinations if you go to Atom > Preferences > Settings. I highly suggest visiting this part first if you plan on trying Atom or making the switch from another editor.
Here’s a few useful quick key commands I discovered during my use and found quite helpful with my particular workflow…
- splitting panels :
(cmd+k)
then a directional arrow of your choosing← ↑ ↓ →
- Closing panels :
(cmd + k)
then(cmd + w)
Finally here are some quick key commands you already know in Sublime that work in Atom too!
command + k + b
for sidebar
command + shift + p
for package manager
command + p
for file search
Theme & UI
I was truly pleased by the default themes that are bundled with Atom. The sidebar by default and file tree are super slick and the overall UI for Atom is really polished. The theme combo that follows I really enjoyed, but I didn’t spend enough time trying others; there are many that do exist.
- UI Theme: One Dark
- Syntax Theme: Solarized Dark
If you desire to become a die hard Atom user and addict, you can dive deeper by reading more about customizing at this link https://atom.io/docs/v0.80.0/customizing-atom that contains well done documentation that’s easy to read.
Performance
Performance was off with modals that display with file search (cmd + p
) for example. The file search modal was at times sluggish during initial rendering. Tasks such as opening a single recent project with 2 split windows (each window contained on average two opened files) was slightly less than par in terms of speed. On average startup times were roughly 2-3 seconds from a fresh boot; even with Chrome and iTerm idling.
Sublime
I don’t really need to make much of a case for Sublime except it operates faster (startup times and overall functionality) plus works wonderfully on multiple OS’ (Windows for example). It’s still customizable, easy to work with, works great with emmet plus there are awesome books available such as Wes Bos’ books. Wes is writing great tutorials and tips for Sublime and iTerm users making this another reason to stick with Sublime; a great community of users and teachers. I still desire that Sublime Text make the official documentation for the product more robust and user-friendly. Maybe Sublime Text 3 will bring a new frontier for us.
I’ve been complaining quite a bit on Twitter as well in regards to the stable release of Sublime Text 3, since it’s beta period grows ever so longer each day (Beta Released July 2013). The majority of developers using ST3 shout with rejoice that ST3 works perfectly! I think it’s time to release the hounds and ship it as they say in the boating business.
Sublime does have it’s quirks don’t get me wrong, but the quirks are far less compared to the benefits Sublime lends to developers.
The Editor I Picked
Regardless of what you choose I decided to go back to Sublime. I urge everyone to find the editor you like the most and stick with it. It’s nice that Atom is Open Source and I’m sure it will become even more amazing as time passes; I don’t see it fading away any time soon. I will however keep a close eye on Atom, but I’ve decided to stick it out with Sublime. So in the end when it came down to Atom or Sublime…well…Sublime FTW!
I recently made this same decision. If i spent more time in atom and got the workflow problems ironed out, it might have been fine, but Sublime is quick, and the autocomplete/emmet/keyboard shortcuts just make sublime crucial to my workflow.
Yep. The creature comforts essential to my workflow were without a doubt the deciding factors for me to switch back to Sublime. Stuff just works better in ST
I’d also pick Sublime. It’s quick and can be customized.
I tried Atom and couldn’t stand its lack of performance, finding files and working in a large application directory was very slow.
I recommend sublime text with these packages:
Modific – for highlighting git changes in the side panel.
Origami – for working with split panes quickly.
VIM Navigation – for basic vim style editing
Material Theme – recent theme that is beautiful and easy to digest (https://github.com/equinusocio/material-theme)
I use some other plugins but these are the essentials to writing faster code.
Take care,
Anton.
Thanks so much for sharing and reading Anton. I’m definitely interested in checking out Origami for split window action! I’d love to try the Material Theme, but alas it is only for ST3 🙁
Not just Sublime 3, @Dennis: It’s also avilable for Atom https://atom.io/themes/atom-material-ui 😀
Working with heavy files on Atom is almost impossible. I had to work with Sublime, despite everything else works pretty well and smoth in Atom.
I had the same experience Albert. In the end Sublime is still much more performant, but also has it quirks as well.
I’ve also made the same choice 🙂
* There is plugin for atom to have same tabs behavior – https://atom.io/packages/sublime-tabs
* The atom 1.0.3 loads w/in 1.4sec according to timecop (Ubuntu @ MBPro)
* Big files used to be a problem
BTW which version of atom you ran?
Brackets would be great to evaluate alongside sublime and atom.
I’ve found brackets to be much faster and with brackets 1.4 it’s all file search is faster than any editor I’ve used. It is so fast that it displays all hits from all files as you type.
http://brackets.io/
I would like to see this comparison with Visual Studio Code (https://code.visualstudio.com/). It’s based on the same core as Atom but it does so much better when it comes performance and handling large files/projects.
I never took the time to look at this editor, but I really dig it from first glance especially because of all the platforms it runs on. There might be a good shot at seeing this for a future post 😉
I also decided to go with Sublime. My reason: projects. Atom is lacking here badly.
Hello, nice article, i just installed Atom , things i liked about atom was user friendliness and ease to install packages but after installation , it crashed 90% of the time and uses too much resources in comparison to Sublime, uses 30-40% cpu during installation of packages and freezes alot,had to restart the Atom several, which is annoying. so uninstalled it and sticking to sublime 3 for now. I wish sublime had user friendly settings and installation interface like Atom does. Peace
I wonder if you have checked out Atom lately; I use 1.0.7 on both Windows and Linux and it can do much more than you outlined in your post (and it’s just 1 month old!)
July 30th was the last time I checked. Since workflows can differ, so can the use of the application. This was just my experience. Atom is great, I just prefer Sublime still right now.
The fact that you spent cash on ST means you have buyers bias towards it. Of course you’d choose it over Atom, else you would feel like you threw your money away.
Hi Jake. ST3 is publicly available without purchasing, although you can still use your ST2 license with ST3 beta and Atom costs $0; so really I have no bias towards anything. Sorry you see it that way, but hopefully my explanation clears that up for you. Thanks for reading.
Dennis,
Spin it any way you want, but Jake is right.
Meanwhile us cynics will observe that passion for development and design are not your sole motivations for WDW, we all have to pay the bills somehow.
In a lab experiment, your findings would be thrown out.
I say this as a person who also tried Atom, threw it out and returned to Sublime 3 with my purchased license.
The fact that I paid for Sublime 2 was just validated nicely for me by its Ball To The Wall speed over anything built in Electron.
I am a big lover of Sublime in terms of usage but when it comes to the look and feel, I like atoms UI too much. Unfortunately i did not had a good experience with atom i do not know if there is something wrong with my system or with atom. The most important thing missing is when i press CTRL + R it says no methods even if there are 50 methods on that file! How one can code with this problem !
If anyone of you guyz know about how to fix this please help me. Meanwhile i am happy with Sublime Text 3
i have the same problem with some features that on sublime works like a charm but atom doesnot. I really want to give a chance to atom but a think i need to wait for it
Just recently I switched to Atom for a while and quickly switched back to Sublime. Seems Atom has some serious problems leaving smb_delete files in GIT repos. This completely baffled me at first as to what was causing the problem but once I isolated it it was a no brainer to go back to Sublime.
I don’t really understand how GitHub can get away with completely ripping off Sublime Text. The look-and-feel are identical, the menus are near identical, the shortcut keys are actually the same from what I gather, the Search-Replace functionality is the same – except in the positioning of the buttons (cunning)… I could fill a page with a list of items that Atom seems to have ripped that probably took years of tweaking as Sublime matured. Granted, package management is much more polished in Atom.
I understand that two minimal-style editors might look the same but GitHub are basically copy and pasting functionality, UI, and more importantly, innovation on a massive scale. If Sublime was an MS, Adobe, Apple product GitHub would have their arse handed to them. I totally feel for the creator[s] of Sublime.
Maybe for the same reasons that sublime text is a (better) copy of textmate.
It’s functionality, not aesthetics, that are important in an editor. Atom is still so young that it’s lacking in functionality. Sublime Text is also short on functionality out of the box, with packages filling the gap.
I prefer WebStorm; it is an expertly engineered IDE. To each their own though.
I’ve been using sublime for 4 years. I tried a lot of code editors and IDE such as: Atom, Brackets, Light Table, Vim, Notepad++, TextMate, Gedit, Komodo, Aptana and PHPStorm, wich is the best PHP IDE in my opinion and dispite all of their quality and features like quickEdit for brackets and the Version Control System for PHPStorm. SublimeText still is the best in performance, workflow and customization.
I develop on OS X, Ubuntu and Windows and Sublime Text is the only one that works fine on each system without crashing or losing performance.
Haven’t seen any editor launch and work faster than Sublime Text. Atom has come a long way but still lacks in areas of parallel file handling – window splitting. Sublime keeps the area open regardless and doesn’t need to keep the a file opened to keep the second window open. This is so much cumbersome to me that I’d rather pay for sublime than use free Atom.
Developing an ember application , atom does a much better job than sublime at disregarding the appropriate folders during a find; sublime will do no job, finding instances tucked away in tmp folders & minified files. No amount of folder_exclude-patterns & file_exclude_patterns will remedy this.
I have been a computer programmer [old terminology for software developer 🙂 ] for 50 years but am a bit new to current software technologies. I normally have simply used NotePad. I saw Atom and decided to try it. Well, what a disappointment – takes forever to load, simple scrolling does not work as Windows default, and other stuff. I am not interested in the extra features of these two editors – i have enough to do learning Java, Android, etc, so neither Atom nor Sublime really interests me.
I tried NotePad++. Well this is the editor for me. Starts instantly, has the color text highliting for Java, does all the basic things an editor needs to do [or that i need an editor to do], and has by default whatever features i need.
If you are a beginner learning Java and Android and have your hands and brain full of new, abstract concepts – skip these two editors and go for NotePad++.
I’m just getting started with Javascript, CSS, etc., and your comment hit home. I was thinking I should go get the latest shiny editor instead of Notepad++ but you brought me back to reality — what I need is simplicity and the basics. Thanks!
you didn’t even bother trying out sublime text?
sublime text out of the box is like notepad++, but looks a lot better
never try, never know…
Hey, thanks Mick for your response. I am just starting to code and your logic on keeping things basic with text editing was helpful.
My favorite free code editor is Codelobster: http://www.codelobster.com . It works much better for me.
I’m trying to find a solution for replacing Google Keep for some kind of “GitHub Pages Jekyll” thing ( http://blog.cregox.com/2015/12/25/new-blog-platform-once-again.html ) and ended up here while googling for that + “notes keep evernote”, then http://formalfriday.club/2015/01/04/making-jekyll-blogging-easier-with-quiver.html and then “quiver vs atom vs sublime” got yours as first hit. The “quiver” didn’t have any effect, in fact. I may even be completely mistaken in trying to compare them, never heard of quiver before.
Introductions aside, got you a couple of questions:
– Do you know quiver? (I don’t)
– Would you happen to have a good working solution for taking notes like in google keep, but using git? ( and dropbox http://stackoverflow.com/questions/1960799/using-git-and-dropbox-together-effectively )
Helo.
This is interesting I was after a text editor to replace TextWrangler, and discoverd Atom. Googling some reviews (like this one) pretty much only found two candidates, Atom and Sublime Text.
From my perspective, a novice user (that only edits css, js and php) Sublime Text wons by miles. I could come here and do an extended review, but it would only say the same thing as like the author of this post. Also, pretty much all of them says the same thing and chooses the same winner. However, I want to touch some points makes Sublime away from competition.
1) Size
Sublime Text 3 size it’s just 27 MB and all the other candidates are a lot more. The size of Atom it’s ridiculous for an “text editor”, I just don’t want to have +230MB (possibly will even increase as time passes by with “new features) on my small SSD ocupied with a text editor. That was instantly the frist downside for me in Atom.
2) Speed
The speed and stability are rock solid in Sublime Text 3 for me. It opens instantly and the edits are smooth as it gets. When I opened my first document at ST3 I already did my choice as my preferred option.
3) Resources
ST3 uses way less resources at cpu level than any other.
4) Security
I’m not exact sure but from what I read Atom has an app itself is based in html, js and css. Apparently it uses some kind of engine similar to web browser (Electron?) and maybe this is vulnerable to security issues. But I’m note sure about it since I’m experienced in the field.
5) Functions
I didn’t tried a lot yet so will leave this one out. However, I will comment that compared to TextWrangler I like the pretty much almost 100% customisation we can do, the scalable user preferences file and the minimap.
6) Inovation
ST3 innovated and came with an original product everyone copies. ST3 deserves a lot of credit here, don’t remember it’s made by one person (from what I understand). For a single person being able to manage to build a standard an a product like this takes courage and knowledge. Atom is committed by millions of open source users (during two years) and they actually didn’t make anything better, other than copying ST3 and implementing beautiful color themes over it.
Conclusion
ST3 is way better in my 1 day review perspective. The only two things I didn’t like it’s the icon and the factory theme. However, bought of them can be changed too.
I also agree 100% with Steve comment, 7 positions above mine. The plagiarism done by GitHub it’s outrageous. ST3 altought not open source it’s free, so I will stick with the original and real innovator and in future maybe make a donation.
The only thing good I see around Atom it’s a frenetic community overhyped by a project they can contribute and “make theirs own”, however they are not accomplishing too much comparing with ST3 one man show…
Do you mean open source is plagiarism? WTF? OMG!
I do agree with you on alot of these facts. Heres my opinion on the two.
I was feeling rather tired of Sublime as for a while I fell out of the coding scene. When I returned, I had a fresh OS (so adblock wasnt installed on chrome) and happened to see an ad about Atom. I decided to give it a try.
/endbackstory
Atom is a really great editor. There’s some features that I liked, such as the package for in editor browser preview. Some things were more difficult to use, and I felt the overall flow of the editor was sluggish to learn at first. Not for lack of documentation, but I just didnt feel the hotkeys were right for my style.
Pretty much everything you see on Atom is customizable. Changing UI themes is a lot easier in Atom with the built in package manager, which is awesome. Package manager was great, it had a full settings section UI built for it, vs the package control sublime has.
I liked the idea of having an entire dedicated visual GUI for settings options, that was really nice, the flow on configuring settings just felt right, EXCEPT for setting hot keys. I felt the hotkeys setting was a little iffy. It seemed really tedious, but not nearly as tedious as sublime having to type out every one. I just think it could be better.
Now onto what I dont like.
Im running a Toshiba (ugh I know) with 4th Gen Core i5, 8 gig ram, the works. I felt this editor once I added the packages I felt were required, it really booted up so sluggish. There seems to be a built in meter for all the package load times and such but I just couldnt help the consumption of the editor. Not only that but on a maxed out power setting, it really felt like I couldnt run the editor more than a couple hours before it would crash. Forget having power saving on. I tried a few alternatives to the biggest resource dependant packages but no matter what I did it just wasnt working right.
File Tree can be horrid. I started writing this, and I am getting to this part and it JUST NOW confirmed a delete on a folder. I had time to watch 2 facebook videos, and scroll, then come here and write. That just seems unusual to me. Sublime however has no problem with this. I’ve also come across some issues with editor denying the delete “File / Folder in use” when I close editor, and delete via explorer, works just fine.
Emmet was OK at best on this editor, but sublime has a much better autocompletion package availability.
Ah now to Sublime
I loved, everything about sublime. Aside from the cons above, the only thing that wasnt PAR or worse than ATOM, was the project management. I didnt see any real native ability to store Projects, just Add / Remove folders from tree. Seemed kind redundant to me. Sublime obviously ruled over the cons above, and was pretty much PAR / better than ATOM all around.
Sublime needs a native package manager. I dont think I could ever get used to Package Control after ATOMs native package manager, but oh well.
As you said, they are both excellent editors, and are used for many different things. Find what you’re confortable with the most and use it. The object is to have fun. If you’re having fun, you’re never truly working.
I wish Sublime Text have had powerful autocomplete for JS like Brackets/ Atom/ Visal Studio Code… Nerveless I still stand by this great code editor.
Sublime 3 beta. But soon to try VIM. Nothing beats VIM only skill of the dev.
I am happy to see your post.
I was looking for a new IDE to do my all development (JavaScript, Html, Node, Go, Python….)
So, I gave Atom a try.
I never had a pleasant experience with Atom.
My experience with Javascript, go plugins for Atom , that lots of them are buggy, and not stable.
You really have to do lots of research before you get one that is working.
Specially with Go, I had only trouble with Go plugins for Atom.
The plugins provides lots of features but full of bugs.
When I switched back to sublime, I was so relieved.
Maybe with spending more time with Atom I could achieve stability, but stability is out of box when I used Sublime.
I don’t know what the hype is over atom, it seemed to be the editor everyone recommended when I got a mac so I just went with it.
After constantly crashing on me and bugging out I couldn’t take it anymore and today I moved to sublime which is 5x faster (that may seem hyperbolic but atom used to take about 5s to load files, constantly freeze etc). Hope the performance continues…
Sublime all the way.
@Dennis, thanks for the great writeup. I think Sublime still wins today. What is the theme you have in your gif? https://12621-presscdn-0-7-pagely.netdna-ssl.com/wp-content/uploads/2015/07/sublime-filepreview.gif
Materialize with Input Mono for fonts.
For now I pick Sublime 3. It’s simple and not bloat (I think).
I’ve used Atom over the last time and I have no problems with the performance, even over a long period of time I have no issues, this might be down to me using Windows and having decent specifications. (3 VMs without moaning) I never really got into Sublime because I don’t like the general UI. the themes it natively supports aren’t really my thing. I know the one dark theme is also available for Sublime but it’s not maintained anymore.
With a few plugins you can adapt to any working environment you can think of and without any trouble. I jave a private Git server so the Git Diff support in Atom really comes in handy and if I have to connect over FTP/SFTP there is full support with packages as well.
Although it is true that the loading of files is still an issue, I generally don’t have any file open just for a second and then leave it again. If I have to make a small revision to a file, It’s mostly because I already have the same project loaded in it, so the initial loading is not an issue for me at least.
Barebones’ editor BBEdit is the all-time great for those on a Mac. At twenty-four years and counting, it’s still around for a reason. I find it more capable, faster and more robust than either Sublime or Atom for my daily workflow.
it is = it’s
it + possessive = its
The offending line: “Sublime does have it’s quirks”
Until now I still using Sublime 2. Reason? Some package I can’t found or the name is different with Sublime 2. Lazy to searching for package and already try to use several text editor and always back to Sublime 2. Maybe after Sublime 3 officially launch (not beta) I will try it again. Peace.
LoL – FTW! Sublime!
Thanks for the great post, but I’m still partial to Atom and the open source tools available therein.
Text editors are “scared”?
I prefer sublime editor. I tried atom but I noticed the slight performance issue.. and it’s quite confusing to use Atom so I switch back to sublime
Now that this article is a few years old – Atom has come a very long way. Would love to see an update.
A few years ago, I felt Atom was pretty unstable and didn’t have a lot of what I wanted – but today it has SO MANY user packages conveniently accessible from the app that for those who want to really customize our code editor it would handily win.
With the latest atom-ide stuff, it’s hard to imagine going back to Sublime. My only real remaining issue with Atom is that when you’re behind a firewall as restrictive as mine it’s very difficult to take advantage of everything the browser has to offer.