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!
Side note: Why Word Processors Won't Work
Word Processors include Microsoft Word, Pages and even Google Docs. And they don't work for coding.
The reason why is that word processors have formatted text: like fonts, indentation, as well as font decoration like boldness. This pre-formatted text doesn't translate well to the internet (or anywhere that code will be read). So when writing code, you want your files to be in plain text.
Features to Look for in a Text Editor
When it comes to text editors, there are common features that they all share. It's what makes a text editor a text editor. Here are a few:
- Easy to use and navigate (similar to a good word processor)
- Find and replace feature (so you can change a single word in the whole file with a few clicks)
- Cut, Copy, Paste (again, similar to word processors)
- Ability to handle UTF-8 encoded text (also unlike a word processor)
- Syntax highlighting (unlike your word processor, this makes it easier to read code and pick up any errors)
- Customizable appearance (such as modifying font size, color schemes, etc., of your editor which optimizes your work zone)
- Extensibility – (provide some plugin mechanism, or is scriptable, so a programmer can customize the editor with additional features – this is more advanced)
Side note: Text editors != IDE
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.
Best Text Editors for Beginners
There are lots of text editors to choose from. However, I'm going to look at what's best for beginners by taking into consideration what is most popular, easy to use and free (or affordable).
Keep in mind, the best text editor for you is ultimately what makes you most efficient. So dabble around and experiment with a few to see what works for you.
1. Sublime Text
OS Compatibility: Mac, Windows and Linux
The Sublime Text editor is not free, but there is a free trial. I'll let you in on a little secret, though: this “trial” lasts indefinitely. (At least at the time of this writing.) BUT if you enjoy the Sublime editor, and use it frequently, you should register it.
I've done lots of online tutorials and in-person classes where Sublime Text is the recommended text editor for beginners. At the same time, lots of professionals and more experienced programmers use it. So it's basically awesome for all skill levels.
Aside from working on Mac, Windows, and Linux machines, Sublime has wonderful syntax highlighting, a slough of attractive color schemes, the ability to add packages and more.
The Sublime Text editor is currently in its second version. However, Sublime Text 3 is in beta. Below is a screenshot from my computer of working in a Ruby on Rails app in Sublime Text 2.
2. Notepad ++
OS Compatibility: Windows only
I've never used Notepad++ because I don't have a Windows computer. BUT that doesn't mean I can't pull together some resources from the web.
Notepad ++ features syntax highlighting, tabbed files, split screen editing and synchronized scrolling, auto-completion, smart highlighting, etc. Basically everything a good text editor needs.
After watching lots of online coding tutorials, it's definitely a popular option for Windows users.
OS Compatibility: Mac only
The TextWrangler code editor is the little brother to BBEdit and part of Bare Bones Software. But, unlike BBEdit, TextWrangler is free.
It has everything a good text editor should: syntax highlighting, easy navigation and so forth.
Below is a screenshot below taken from my computer of a Ruby on Rails file in TextWrangler. (Same file as the Sublime editor photo above.)
OS Compatibility: Linux (and now Windows and Mac)
Gedit is another text editor I have not personally used. However, Girl Develop It recommends it in their Intro HTML & CSS class as the Linux editor of choice.
It's been around for fifteen years. It's free, open source and built for ease of use. Also, I believe more recently, it is available on Windows and Mac.
What's my favorite text editor?!
Glad you asked.
I LOVE Sublime Text 2. It's the first text editor I ever downloaded and I'm not looking back.
I've played with TextWrangler, but there's something about the Sublime Editor. It's attractive, easy to use … plus all my friends use it. Oh, peer pressure!
But, truly, Sublime is a great editor – that's why so many use it.
Ultimately, the best text editor is the one you work most efficiently with. As a beginner, test out a few to see which you enjoy most.
In the end, all text editors help you accomplish the same end-goal. You just have to find the editor that gets you there the quickest.
What's your favorite text editor? (Tell me in the comment section below.)