As a coder, finding a text editor that works for you is critical. You’ll be spending tons of time working in it, so get cozy.
For those just getting started and wondering about text editors, why they’re important and which to use – keep reading!
What is a text editor?
The formal definition is:
“A text editor is a type of program used for editing plain text files.”
Essentially, a text editor is a program on you computer that allows you to create and edit a range of programming language files.
AKA this is the place where you write your code!
Text editors handle “hand coding” many different languages, i.e.: HTML, CSS, JavaScript, PHP, Ruby, Java, Python, and so forth.
If you already use one you might think,
"Why is it important for me to know about the different Text Editors and IDE's available out there, if the one I am currently working on works just fine?"
Well simply put,
There's nothing more satisfying than finding the perfect Text Editor., and you won't find the perfect one unless you try some of these out yourself.
Keep in mind that there is no THE BEST EDITOR out there, each one is different, the best text editor for you is ultimately what makes you most efficient., so experiment with a few find out the one which suits you the best.
Now there are dozens of editors out there but I will only mention the ones which have gained immense popularity and are widely used by the community, and are FREE to use.
Here’s a collection of my favorite text editors. Some of these are also considered IDEs.
Text editors are not the same as IDEs (Integrated Development Environment). While almost every IDE has the capability of creating and editing plain text documents, they also include an abundance of other features.
IDEs have different panels and widgets, taking a lot more space. An everyday text editor is much more lightweight and flexible.
Meaning you can do a lot more with IDEs than simply write code.
Visual Studio Code
Visual Studio Code is a open source-code editor made by Microsoft for Windows, Linux and MacOS.
Features include support for debugging, syntax highlighting, intelligent code completion, snippets, code refactoring, large library of extensions and plugins, and embedded Git.
Not quite an IDE (that’s actually a separate product altogether), VS Code can take on most of the tasks of an IDE with the right configuration and plugin library.
Sublime Text
Sublime Text is a shareware cross-platform source code editor with a Python application programming interface.
Sublime Text is a beautiful, feature-rich code editor. Maybe the biggest draw is that it puts a premium on user experience. The UX is probably the tightest of every entry on the list. This is because of features like distraction-free writing mode, quick shortcuts/search, split editing, and much more. One of the biggest features users flaunt is the ridiculously intuitive keyboard shortcut system.
They offer an indefinite, never-ending trial so it's essentially free to use unless you chose to upgrade to premium.
Vim
Vim is hardcore. Let’s be clear about that upfront. While other text editors are newbie friendly this one is definitely not. From the official website down to the software itself, Vim is a coder’s tool for coders by coders.
It’s designed for use both from a command-line interface (CLI) and as a standalone application in a graphical user interface (GUI).
Vim provides many commands which make editing functionality really powerful.
Vim definitely requires a learning curve and a willingness to immerse yourself in a whole new feature-set that might not be the same as some other text editors you are used to.
Once you get past the UI and the steep learning curve, you’ll see why the text editor is designed the way it is. It does roughly everything all the other best text editors can do. But more than maybe anything else on the list, it’s designed for efficiency and function.
Atom
Atom is a free and open-source and highly customizable text and source code editor for MacOS, Linux, and Windows with support for plug-ins written in JavaScript, and embedded Git Control, developed by GitHub and now owned by Microsoft. Atom is a desktop application built using web technologies.
Built around a minimal core, Atom comes with multiple language-specific packages built in, and the library of community-written ones has exploded over the years since the editor was first released.
Notepad++
Notepad++ is an extremely popular text editor. That is in part because it’s free and GPL-licensed open source. Even more than that, though, the reason it’s one of the best text editors around is that it’s simple.
One of the things that makes Notepad++ stand out is the fact that it’s already been translated into over 80 languages.
The downside: this software is Windows-only.
Brackets
Brackets is a free and open-source code editor that is made for web developers. Created and released by Adobe Systems, Brackets has a clean user interface that is filled with brilliant features: Live Preview, Quick Edit, etc. Link to download
Codeshare: Share code in real-time with developers in your browser.
It does, however, offer some unique and useful features. One of those features being Extract, a tool which allows you to extract information such as colors, fonts, gradients, measurements, directly from PSDs as clean CSS. For front-end developers working in a design agency who have to recreate pixel-perfect sites from mock-ups, there may be no better tool for you.
Bluefish
Bluefish is more of an IDE than a real text editor, which means it may be a little advanced for brand new users. It’s free, supports pretty much every language because it’s open-source, and comes with a wide variety of useful features for use across many platforms. It supports coding languages including HTML, XHTML, CSS, XML, PHP, C, C++, JavaScript, Java, Go, Ada, D, SQL, Perl, ColdFusion, JSP, Python, Ruby, and shell.
Online IDE's
Replit
It is a simple yet powerful Online IDE, Editor, Compiler, Interpreter, and REPL. Code, compile, run, and host in 50+ programming languages.
Codeshare
Share code in real-time with developers in your browser. An online code editor for interviews, troubleshooting, teaching.
Bonus
Vi
The default editor that comes with the UNIX operating system is called vi (visual editor).
What’s my favorite text editor?
Glad you asked.
I LOVE VS CODE. It’s the first text editor I ever downloaded and I’m not looking back.
I’ve played with Sublime, but there’s something about VS Code. It’s attractive, easy to use, tons and tons of customizations and modifications using the never ending extensions … plus all my friends use it
But, truly, VS Code is a great editor – that’s why so many use it, and it has gained immense popularity since it's release.
In Conclusion
When trying to make a list of the best code and text editors available, it’s impossible not to miss a few strong contenders.
Every Coder, and developer has a favorite set of tools just like every carpenter has a favorite hammer and an artist has a favorite set of brushes.
What do you think are the best code editors?
Let me know in the comments!
If you liked my content consider following me on Twitter
I hope you found this article valuable. If yes do let me know in the comments 😊
Also if you got any question feel free to ping me on Twitter.
Top comments (84)
Nothing beats Jetbrains products. Worth every penny.
Yeah they are all good but I believe in free opensource software rather than investing in proprietary software.
I prefer to choose the best tool available for the job.
And since an IDE is a tool which allows you to accomplish more in less time. I would better prefer to value my time and effort over free software.
I am not against nice tools even if one has to pay for it, If your work pays you well one must invest some to get the best tools out there, just as a beginner or a student though, like me it is better to explore free and good open source software.
In my experience, the most productive editor I've used hasn't been IDE's, which usually are laggy, nor even JetBrain's products. I haven't yet found an alternative which can compare to the raw power of my customized neovim, which has all the functionality of an IDE, all the speed of a terminal CLI, and the intuition learned over years of use.
Yes once you get used to one and can use it to its full potential it simply works, no need to think about other tools.
All one has to do is find the one that works best for them.
If you can afford a few cups of coffee a month, you can as well pay a monthly subscription for an IDE such as webstorm. In my country is 2 cups of coffee...
Sure OSS alternative are free. But if you take into account an amount of time IDE is saving you, you will understand that you receive much more in return. Especially when you do a refactor of a project with lots of files.
I agree, paying a small amount for efficiency when that job is paying is you is not bad. Since I am student now I chose to go for OSS.
IDEA C is free and open-source, though. github.com/JetBrains/intellij-comm...
Yes.
IntelliJ has a free community version.
Agreed. Bit shocked at the lack of a JB mention. Switched from VS Code and haven't gone back. Tried, but couldn't.
Yep, once you go webstorm, you never go back :)
Yes I have heard a lot, going to give it a try myself.
Didn't want to include paid products, I know have free downloads but wanted to avoid them in general.
Aren't they known to be a bit slow though? I've only used IntelliJ IDEA and the editor was great, but it was incredibly slow on startup and was a memory hog
You could actually tweak the memory usage of IntelliJ in the settings, and if it is slow to start you can use pre-built caches for your codebase so it won't have to index it everytime at startup.
I disagree. The only difference with Vim and other editors is: Vim is a modal editor. The shortcuts for editing need to be done in one mode, and writing in another one. To change mode, you need to hit a shortcut.
After that you need to learn the shortcuts like any other editor if you want to be a bit more effective. Unlike any other editor though, the shortcuts in Vim make much more sense.
I don't think so, Vim is not at all beginner friendly, the shortcuts are handy and make sense but you can't expect a newbie to use Vim straight away and feel comfortable where as with VS Code and Sublime one day is enough to get going.
I never said that a "newbie" would be able to use Vim in one day, I said that it doesn't require "a learning curve and a willingness to immerse yourself in a whole new feature-set".
Idk but I feel that way 😅, maybe being used to Windows and GUI my whole life and I kind of feel intimidated by these kinds of software and stuff.
I spent most of my time on Windows... I was feeling the same about Vim till I tried it seriously ;)
I am also learning Linux currently and would try out Vim for sure.
Cause you like VS Code, you can just use the 'Vscodevim' extension. Pretty popular and it works for me. You can even create your own shortcuts like assigning 'jj' to 'Esc'
Yes I saw the extension, but I am want to learn Vim slowly as it's very efficient and productive.
Same as you,In LOVE with VSCODE.
Indeed
INDEED ,it'svery critical word for me, you know..
what happened after INDEED to the similar context 😅😅
INDEED
great then😂
I thought it would be worthwhile to mention that in your article, the link for Vim goes to a filehippo page, whose integrity I don't necessarily trust. Instead, I would direct users to the official homepage page, or the official download page
Thanks for pointing that out, I will fix it.
I've been dancing around Sublime Text and VS Code through 2021. Sublime was my go to because back when I started coding that was THE go to compared to today's VS Code.
I don't regret paying for Sublime Text's license at all, the UX is definitely great and there's some shortcuts that I've gotten used to from it that have made it hard to get me to switch fully to VS Code. Sublime 4 also released recently and it just feels smoother to me in terms of UI and UX; VS Code in comparison feels too visually loaded for me at times.
I do love VS Code in terms of features though. If a package existed for Sublime, someone already worked something out for VS Code. Not to mention the integrated terminal and very easy to set up the terminal commands; which requires considerably more set up in Sublime. VS Code makes some things just work and the intellisense is amazing.
I've been curious about Vim, but because there is an extension (for VS Code) or package (for Sublime) that allows you to use its keybinds on each of the editors. So you can increase your efficiency further by combining it with another editor, and on top of that it makes it simpler to switch between editors at your leisure because you're only worrying about a single set of keybinds. It's also very useful to know how to use a cli editor in case you need to do a quick and dirty edit while SSHing into a server, remote machine or just GUI-less set up. Many people will say that Vim is tough to learn, but it pays it's dividends in equal measure.
Yes there are extensions to get the shortcuts of every editor including Sublime and VIm on VS Code so that people can easily switch without facing any difficulties.
I am currently trying to learn CLI, as it will come handy in the future.
Getting out of the topic a bit ...
Leave editiors ,
I think Linux command line program gives you more feel like an Hacker or pro programmer.
Just kidding 😂
You do need an editor for the productivity though
Linux does give you the hacker vibes ngl.
VS Code is by far the best on the list.
I've used Brackets before. It's a solid program, but it's kind of heavy at times. Atom was much the same way. Notepad++ is a solid lightweight editor if you are just viewing code or making small changes. Sublime seems to be an acquired taste. Personally, I think it's quite overrated by developers, but maybe that's just me.
Codeshare looks very cool. I've never heard of it before and I'll have to check it out.
Mozilla Thimble was a cool online editor for web-based projects. It was a pretty cool way to share small little projects or tutorials. Kind of reminds me of SoloLearn's code playground feature.
Yup once you download VS code there is no going back, I know that Sublime is lighweight and people like it for that but I would take VS Codes customization over any other feature of sublime in a heartbeat.
Have you tried the IDEs from JetBrains, like IntelliJ, PyCharm, WebStorm etc?
Going to use WebStorm next as many mentioned it a great IDE.
Only PyCharm that too just for testing 😅
I have used Vscode and Atom. Even though I first found them lovable especially vscode, the made me a bit inefficient.
I have an old potato-er PC , vscode is very laggy in it. Mostly when do something in Rust. Later sometime i found NeoVim.
It's not that hard, you have a tutorial of 30-min of all essential in-built to it. It may take 2- 3 days to stick to it , but it's just like vscode with plugins and a-lot faster. ## Vscode is a very Great editor and I still love it . but I prefer vim..
Vim has it's own fan base 🙌🔥
Hey change the 'Repl.it' to 'Replit'
I am a hardcore replit fan so 🥳 thanks for adding them!