In the Windows command prompt, I can type notepad helloworld.cpp which will then create a.cpp file with the name helloworld and open up Notepad for me. Is there a similar function for Mac Terminal, preferably with Textmate or Textedit? I'm running Mac OS X Lion 10.7, with Xcode developers tool. Mellel is an advanced, multilingual word processor built for Mac OS X. Designed for scholars and writers, it offers innovative page, paragraph, and character styles, outline, tables, headers and footers, citations and bibliography, tabs, and much more. TextWrangler is one of the most user-friendly examples of a text editor, with a price tag to match. Now hosted on the Mac App Store, TextWrangler offers an old-school feel, rock-solid performance, and the option of graduating to a more powerful yet familiar tool (BBEdit, below) if you feel the need. The editor has versions available for OS X, iPhone and iPad which could be accessed through the official website. PDF Toolkit This is a simple software which could be used to convert Word files into PDF and vice versa.
We all use text editors to take notes, save web addresses, write code, as well as other uses. Every operating system comes with a default, basic text editor, but most of us install our own enhanced text editors to get more features.
In this article, we’ve gathered links to many different text editors used for different purposes. You can use text editors for basic text editing and taking notes, writing programming code, producing LaTeX documents, writing a book, among many other uses.
Notepad and WordPad Replacements
Are you looking for more capabilities than the default Notepad in Windows? Would you rather use a graphical text editor in Linux, rather than the built-in vi? There are many options for useful text editors out there.
Some employ a tabbed interface, such as Jarte (which is based on the WordPad word processing engine and integrates easily with WordWeb), EditPad Lite (which also has the automatic backup), and Notetab Light (which can also calculate the value of mathematical expressions entered in the program). Jarte, EditPad Lite, and Notetab Light are all only available for Windows. Jarte is also available as a portable program.
Typically, Vi is the default text editor in Linux operating systems and it’s a keyboard intensive program with no graphical user interface (GUI). A good text editor for Windows that has hotkeys available for its 312 text-processing functions, innovative features, and timesaving tools is TED Notepad, which is also available as a portable program. Emacs is also available for both Windows and Linux, and is customizable. It also includes a file compare utility and a file manager. You can also add Org-mode to Emacs, which is a personal information management and outlining tool. If you prefer text editors with GUIs, Vim and gEdit are both good options and are available. Vim is essentially the graphical version of Vi. For help editing text files in Vi or Vim, see our Beginner’s Guide.
GetDiz is a Notepad replacement for Windows that allows you to edit many text files quickly from within Windows Explorer and has enhanced functionality for dealing with DIZ and NFO files. It can also display ASCII art correctly. Another ASCII text formatter for Windows is TextMorph, which can also convert text to and from HTML and clean up emails (remove all the “>” symbols, etc.), and search and replace by words or multiple paragraphs.
Programmer’s Text Editors
There are many text editors that provide useful functionality for programmers. Most support syntax highlighting for many programming languages, multiple document editing, and are extendable with plugins. Some also allow editing of remote files through FTP.
PSPad not only supports syntax highlighting, but also matching bracket highlighting for most popular programming languages. It also has a hex editor, macro recorder, and a differencing tool. PSPad also easily integrates with the free version of the TopStyle CSS editor. Notepad++ also supports bracket highlighting and macro recording. It also supports syntax folding and is highly customizable through plugins using the included plugin manager. Both PSPad and Notepad++ are only available for Windows.
The cross-platform (Windows, Linux, and Mac OS X) editor, jEdit, supports syntax highlighting for over 200 programming languages and auto indent, as well as a differencing utility, an FTP browser, and block selecting. It is also extendable using plugins and macros, and there are hundreds of plugins and macros available through the built-in plugin manager feature.
Programmer’s Notepad for Windows supports syntax highlighting using schemes, both built-in and user-defined, code folding and outlining, a tabbed interface with multi-level split views, and the ability to export to HTML (using CSS) and RTF.
If you like the Vi editor in Linux, but prefer a graphical editor that also serves well as a programmer’s text editor, Editra and Komodo Edit are good options. They both provide Vi emulation, as well as support for syntax highlighting in many programming languages and code folding. Editra has a tabbed interface, allows block (un)commenting and (un)indenting, and is extendable using the built-in plugin downloader/installer. Komodo Edit supports background syntax checking and contains a toolbox with shell command integration, macros, and code snippets. Both Editra and Komodo Edit are available for Windows, Linux, and Mac OS X.
Other options include the following:
- Crimson Editor – A very small editor for Windows containing a directory tree view window
- Geany – A small and fast IDE for Windows, Linux, and Mac OS X that supports code folding, code navigation, a build system, and a plugin interface
- Notepad2 – A fast, light-weight text editor like Notepad for Windows with syntax highlighting and runs as a portable program
Microsoft Word Replacements
There are also free programs that act as replacements for Microsoft Word. They can be used as text editors, but they have more formatting features than simple text editors. You can add images and tables, change fonts and color, and insert hyperlinks.
AbiWord runs on Windows and Linux and can read and write OpenOffice.org documents, Microsoft Word documents, WordPerfect documents, Rich Text Format documents, and HTML web pages. It has advanced document layout options such as tables, bullets, numbered lists, images, styles, footnotes, and endnotes. It even has a Mail Merge utility like Microsoft Word. You can extend AbiWord with a variety of plugins, which can be selected when you install AbiWord. A portable version is also available that you can run from a USB flash drive.
Angel Writer is a small rich text editor for Windows with a high performance rate that allows you to easily create impressive documents.
Minimalist Text Editors
If you get distracted when you write by the plethora of features in text editors and word processors, you might want to try one of the so-called “minimalist” text editors out there. They are “no-frills” editors that either don’t offer any formatting features or many of the other features of modern word processors, and even third-party text editors, or the features are hidden until you want them. Without all the fancy features staring you in the face, you can concentrate on the task of writing. Below is a list of some of the minimalist text editors we found.
- Dark Room– Available for Windows, requires .NET Framework 2.0, and is available as a portable program.
- JDarkRoom– Available for Windows, Linux and Mac OS X
- Q10– Available for Windows and as a portable program
- CopyWriter– Available for Windows and as a portable program
- WriteMonkey– Available for Windows and as a portable program
- Bookwrite– Available for Windows and Linux
- Scribes– Available for Linux
- FocusWriter – Available for Windows, Linux and Mac OS X, and as a portable program for Windows
You can even download Word 5.5 from Microsoft for free and run it under DOSBox in Windows.
If you want a simple text editor with the ability to count down from a set word count, try yEdit2 for Windows. If you have to write a certain number of words, yEdit2 can make it easier.
Secure Text Editors
You can also use a text editor as secure place to store private information. There are several text editors that either include encryption as a feature or are specially designed for securely storing text. Notepad++, mentioned in the Programmer’s Text Editors section above, allows you to add encryption functionality using the SecurePad plugin, which is available through the Plugin Manager. SecurePad will encrypt selected text in the current document or the whole document.
Macbook Text Editor
Steganos LockNote is a small, simple method for securely storing chunks of information in files. For example, if you purchase a download-only program, you can use LockNote to store the product key or serial number that goes with that program in the same folder, so you always know where to find it.
- CryptNote – Available for Windows and as a portable program
- CryptoTE– Available for Windows and Linux, and as a portable program for Windows
- NotepadCrypt– Available for Windows as a portable program
- Xint– Available for Windows
- f0dder’s fSekrit – Available for Windows and as a portable program
LaTeX Editors
Do you write a lot of scientific papers, documents, or books? If so, there are several text editors that allow you to easily use TeX/LaTeX (document markup language and document preparation system) through a graphical interface to create mathematical content and structured documents like academic articles, theses, and books.
- LaTeX Editor (LEd)– Available for Windows and as a portable program
- LyX– Available for Windows, Linux, and Mac OS X
- WinEdt– Available for Windows
- TeXstudio– Available for Windows, Linux, and Mac OS X and as a portable program on Windows and Mac OS X
- Texmaker – Available for Windows, Linux, and Mac OS X
Novel Writing Editor
There’s even an editor that’s meant for writing novels, called yWriter5, available for Windows and Linux. It breaks your novel into chapters and scenes, helping you to keep track of your work. However, yWriter5 does not suggest plot ideas, character names, or write any part of your novel for you. The creative task of writing is still up to you, yWriter5 just makes it easier.
One more text editor to mention is Nano in Linux, which is an easy-to-use text editor you run directly on the command line. Nano is installed by default in Ubuntu and many other Linux distros, and is easier to learn than Vi or emacs.
READ NEXT- › How to Set Up a Child’s Smart Bedroom
- › What Does “FOMO” Mean, and How Do You Use It?
- › How to Fix a Slow or Unresponsive Mac
- › Windows 10’s Tablet Mode May Be Replaced With the Desktop
- › How to Quickly Switch Between Gmail Accounts on Android, iPhone, and iPad
Text editors have been a crucial part of every computing system in history, and they’re also the tools that many, many people use every day to build the services, apps, and written-word that we love.
At its core, a text editor does what it says on the tin: it allows you to edit text. But wait, you say, I already have a way to edit text on my Mac. Maybe it’s Pages or Microsoft Word, or perhaps you use an online option, like Google Docs or Dropbox Paper. However, what separates these tools from a text editor, and what makes a text editor so compelling to a lot of people, is that a text editor removes almost every distraction between you and the text. There are no formatting toolbars, no adjusting the margins — just you and your code or words. For writing in HTML, CSS, or other programming languages, this is a necessity. For someone who isn’t writing code but still generates a large amount of copy, a text editor can be where you start your writing.
What makes a good text editor?
Few topics start such heated debates as what makes a good text editor. The problem with declaring any one editor better than another is that every editor we mention today is seemingly infinitely customizable. You can tweak, bolt on, or remove any array of features until any of the following applications fit your workflow perfectly. Additionally, once someone has spent more than a few months using a specific text editor, the muscle memory for certain actions or keyboard shortcuts becomes so second-nature that switching to any other editor can be as difficult and foreign as switching to a new operating system.
That said, a good text editor has to have enough features to be adaptable to your workflow, but not so many that it steers itself toward any one usage. Editing text encompasses a wide range of activities. How do you design an app that will potentially be used by both programmer and screenwriter? Good text editors will get out of your way, but they never hide functionality too far out of reach — this means our top pick needs to be an editor that’s well-designed and approachable by beginners without stifling professional users.
Finally, this review is about the best text editor for macOS, not the best macOS application that’s also a text editor. Atom is our top pick for most people, but its design follows a different set of principles than those laid out in Apple’s Human Interface Guidelines for macOS apps. Every text editor we look at in this review has design tradeoffs, but at the end of the day, we feel Atom balances modern functionality and interface design in a way that makes it the best starting point for almost any type of user.
Why you should trust us
My first real writing tool was my grandfather’s heavy-as-sin Underwood typewriter on which I — around eight at the time — hammered out an endless amount of content. I eventually graduated to a giant Dell desktop and later to my first MacBook, but the writing never stopped. Throughout high school, I realized that I enjoyed writing for computers as much as I did for people, and I went to college to later graduate with degrees in both English and computer science.
During the day, I work for a software company where my role is a blend of design (writing for people) and programming (writing for computers). Officially, I’m the lead user experience designer for our team of eight, and I’m also the sole developer for several internal web applications written primarily in Ruby on Rails. I also spend time helping out our web design team, where we write custom HTML and CSS for a variety of clients. At night, I’m either writing for my small privacy/design web column or I’m refactoring the Swift code of my current iOS project. Today though, I’m your guide through some of the best text editors for macOS. Of each of the text editors we’ll discuss, whether for writing or programming, I’ve spent more than a week with each while professionally developing Ruby on Rails applications and writing an array of smaller Go, PHP, and Swift files.
Although I approach this review with the consideration that a writer could use any of the apps we mention — and writers certainly do — if you’re looking for something a little more focused towards prose, I encourage you to check out The Sweet Setup’sBest Writing App for Mac and iOS.
An aside about how text editors differ from Markdown editors
We recognize there are different text editors for different types of work. If you’re looking to write blog posts, emails, research papers, or novels and want an all-inclusive writing environment, we think Ulysses is the best writing app for Apple devices. If you’re looking for a Markdown text editor that works well with single files (think TextEdit for Markdown), we think Byword is the best app for writing in Markdown. But neither Ulysses or Byword are built with developers and web designers in mind. There aren’t immense customization features, package or plugin support, or built-in git functionality in either Ulysses or Byword, nor should there be. There’s an app that shines in each distinct category, and this category deals with the powerful, customizable text editors that handle the languages and workloads beyond Markdown and rich text.
Atom
Atom is an open-source, cross-platform text editor developed by GitHub, a company that helps other companies host and collaborate on software projects. The beta for Atom was announced in February of 2014 and was billed as a text editor that was both “deeply programmable but also easy to use.” Atom is not without flaws, but its balancing of ease-of-use with optional, deep customization means it serves both novice and professional users well — offering an approachable UI for the former, and almost unending customization and tweaking for the latter.
Available now: our video course for Things 3 users…
Notable Features: File Navigation
Atom makes it easy to navigate and switch between any of the files you currently have open. Hitting
CMD + T
dims the interface and presents you with a text box in which to begin typing. As you type, Atom begins filtering down your open files to only the ones that have names matching your keywords.You don’t need to remember the exact name of a file either. Atom uses a “fuzzy” type of matching, which lets you search on whatever part of the filename you remember. The searching is fast, and once you’ve grown accustomed to having any file only a few taps away, using your mouse to click through folders and files will feel painfully slow.
Notable Features: Multiline Editing
Multiline editing is one of those features that’s hard to explain in words, but once you see it in action, you’ll wonder where it’s been all your life:
Multiline editing works by letting you quickly select any instances of the word your cursor is currently in. Once you’ve selected all the words you want to change, you can begin typing and Atom will make those changes in each selected word. It’s like having multiple cursors scattered throughout your document, all acting in unison.
Technically, anything you can do with multiline editing you could do with Atom’s powerful find and replace feature, but multiline editing allows you to quickly — and in real time — jump into a find-and-replace-like mode within the current document. This makes cleaning up text a breeze, and it’s especially useful for development when you want to quickly rename a variable across a function.
Notable Features: GitHub and Git Integration
It’s not surprising that GitHub integration is baked in to Atom since it’s a GitHub product, but it also includes standard Git integration. The integration won’t replace a dedicated Git tool for power users (like Tower), but it delivers rock-solid performance for the basic git commands for version control and collaboration. Whether you use GitHub, Bitbucket, or another git solution for version control, Atom can help you save a step or two without leaving the app when it’s time to commit and push changes.
Notable Features: Teletype
This feature goes a bit above and beyond our expectations for a text editor, but it’s too cool to ignore. Atom recently launched a feature named Teletype that allows you to share documents with other Atom users (via a unique link) that allows you to open and edit the document together in real time, a la Google Docs. This is incredibly powerful and useful for peer reviews, pair programming, and other collaborative exercises, and also skips the step of needing to fire up a teleconference bridge to debug an annoying logic problem or review comments on an article.
Customization
As I mentioned earlier, all of the text editors in this review are extremely customizable. You can make any of them do just about anything. That said, Atom’s interface for tweaking, adding, or removing functionality is the easiest to use for most users and powerful enough for most professionals.
Customization: Preferences
Atom’s preferences are logically arranged and straightforward to navigate. Opening the preferences page opens a new tab in Atom’s main window, and you are presented with a sidebar of setting categories. From here, you can adjust the editor’s typeface, create a new keyboard shortcut, or change the default theme.
The interface for these options is simple enough, but a far cry from how macOS would present similar preferences. For the audience, I don’t think it matters that much, but Atom’s settings are probably the best example of where Atom defines itself more as a text editor and less as a Mac app.
That doesn’t mean the settings are more difficult to use, though. For every checkbox or setting you can change, Atom includes a small bit of copy that explains — in relatively human terms — what that setting will do. This is a nice touch, as it allows Atom to help guide people who aren’t as familiar with more technical terms or development concepts.
If, however, you’re a seasoned developer and want complete control over the way Atom behaves, you can click the Open Config Folder button at the bottom of the settings sidebar, and you’ll see a directory of text files that you can edit to tweak almost every aspect of Atom. More experienced users will appreciate the ability to make these changes, and more novice users are never forced to stare at an intimidating list of oddly-named text files. It’s a decent design tradeoff.
Customization: Packages
One of Atom’s best features is one that you will either completely rely on or never use: packages.
Packages are small, often community-created, contained bits of functionality that you can add to Atom. There are packages for everything from new themes, to syntax support for obscure programming and markup languages. You can even remove some of the packages that Atom comes preinstalled with. It’s completely up to you and what you need Atom to do. Want to export the current document to Medium? There’s a package for that. Need a quick way to translate the current text into another language? No problem. Or maybe you just want Atom’s interface to look like R2-D2. Enjoy.
Atom’s not the only text editor that allows you to install packages, but it does make the process of installing, managing, and updating those packages incredibly easy. In Atom’s preferences page, clicking the Packages sidebar item will show you all the currently installed packages, each with links to either disable each package or adjust its settings.
Back in the sidebar, you can click Install to see some current featured packages or themes, as well as a search bar to find new ones. Once you’ve found a package you want to install, it’s a one-click process to get it loaded into Atom and start using the new functionality. This means all the installing and managing of packages is done right from within Atom’s main window. No manually downloading packages from some person’s website or digging through obscure
~/Library
folders to add functionality.Updates
When considering a tool as integral to your workflow as a text editor, you’ll want to make sure the app is backed by a strong development team and has a consistent update schedule. This ensures that bugs or performance issues are constantly being addressed and that the yearly OS updates from Apple don’t leave your primary tool inoperable.
Atom, being open source, has an advantage here compared to other options like Sublime Text or BBEdit. First, almost the entirety of Atom’s development is in the open, which means that users have both transparency and an opportunity to reach out directly to the development team. If there’s a bug that you find especially annoying, and you have the technical abilities to write a fix, you can even propose code changes to Atom itself, and they might get added to the next Atom release.
Second, because Atom is backed by GitHub — which has a strong incentive to keep developers happy and productive — there’s little chance that Atom will disappear or stop receiving updates in the near or far future. Even if GitHub were to stop actively developing Atom, the open source nature of the app would (probably) allow it to live on through collaboration of its users and other contributors. In that sense, Atom is about as future-proof as an app can be.
Performance
Atom is cross-platform, which means that you can download the app for macOS, Windows, or Linux. For someone with one computer, this availability might not seem like an important feature, but for anyone who bounces between a few different operating systems, being able to have your tool go with you is invaluable.
This cross-platform power is possible because of a technology called Electron, also developed by GitHub, which allows developers to build cross-platform applications using HTML, CSS, and JavaScript. These apps are then compiled into native containers for macOS, Windows, or Linux. From a development perspective, being able to write once and deploy everywhere is a huge time saver. An increasing number of “native” apps are following this method of distribution, and if you’ve used the desktop app for a service like Slack or Basecamp, you’ve used an Electron app without even knowing it.
However, unlike the subatomic particle by the same name, Electron-the-framework isn’t necessarily known for its blistering speed. Because Electron applications are essentially web applications inside a native container, opening an app like Atom is similar to running a small, contained instance of Google Chrome in a separate window. Without going into the technical details, Electron apps are often criticized for being memory hungry and worse in performance than a truly-native application. For Atom, this means that its performance when opening large text files or handling giant folder directories with many files can lead to UI hiccups or lag. When compared to more native apps like BBEdit or Sublime Text, Atom still struggles to compete in the upper levels of performance.
That said, for people who aren’t trying to open up multi-megabyte text files or do find-and-replace across millions of words, Atom should be fine.
Price
Given the feature set, it might surprise you to find out that Atom is free. GitHub’s reasoning here is probably equal parts self-serving and philanthropic. Atom ships with built-in support for GitHub-related activities, which will undoubtedly help GitHub if Atom becomes the de facto standard for developers everywhere. But GitHub also rose to prominence because of how many open source projects made GitHub their home. Atom feels a little bit like GitHub giving back to the community that helped make them.
Other Picks
Sublime Text
Sublime Text was born at the beginning of 2007 by Jon Skinner, an ex-Googler. In his own words, in one of the earliest posts about what would become Sublime Text, Mr. Skinner had this to say about the current state of text editors: “I think they can be better.”
In many ways, Sublime Text is better than a lot of other text editors out there, and that’s why it’s our first runner up if you don’t find that Atom cuts the mustard.
Even though a text editor deals primarily with — well, text — sometimes the size of the files or complexity of the file structure you’re dealing with requires unflinching performance. I feel comfortable saying that most people don’t fall into this category (except you, Mr. Developer), but for anyone who’s looking for a similar feature set to Atom but with more power, look no further than Sublime Text.
Like Atom, Sublime Text is cross-platform, with versions for Mac, Windows, and Linux. However, Sublime Text isn’t built on Electron; instead, it’s primarily written using C++, which leads to some noticeable performance increases over Atom in tasks that require either large files or complex actions. Even in day-to-day usage, Sublime Text draws less CPU and RAM resources than Atom, so the overall impact on your machine is less.
Conceptually, Sublime Text offers a lot of the same features that we’ve highlighted in Atom. Both offer multiline editing, built-in package management, and robust customization. However, while Atom attempts to provide a user interface for accessing settings and preferences, Sublime Text goes in the opposite direction, directly exposing the underlying preferences JSON file.
This approach means Sublime Text’s preferences are probably one of the least user-friendly aspects of the editor. However, it’s also a design decision that puts the target audience (developers) above platform conventions and pretty interfaces. Hitting
CMD +,
opens up a split view window with a JSON file in each pane. On the left is a plain-text manual of every preference available, and on the right are the preferences that you currently have enabled.For a lot of developers, having quick, no frills access to the underlying configuration settings without needing to reach for a mouse is a beautiful design consideration. Even the preferences for any of Sublime Text’s packages operate in the same way — you directly edit a JSON file. Performance notwithstanding, Sublime Text’s approach to preferences and packages is probably its most divisive design decision, and depending on how comfortable you feel editing code just to change the text editor’s typeface or enable spell checking, you’ll either love Sublime Text’s approach or want to look elsewhere.
A license for Sublime Text costs $80 USD. However, for years, Sublime Text has allowed users to download and run a full-featured trial of the text editor — indefinitely. Every few app launches, a small window will appear, reminding you that you’re using Sublime Text in trial mode, but it’s a fair tradeoff for what happens to be an incredibly powerful text editor.
BBEdit
BBEdit, developed by Bare Bones Software, might be the oldest, most respected macOS text editor out there. It has a reputation for excellent performance (even with massive files), never crashing, and being a great macOS app.
I use BBEdit for working on web sites, processing text files with regular expressions, or just previewing the output from a blog feed I might be testing with Micro.blog. It’s my go-to text editor for all those random everyday tasks in between writing notes and coding on iOS or Mac apps. — Manton Reece, Developer and Founder of Micro.blog
Where Atom’s interface can sometimes feel like the embodiment of its tagline (“A hackable text editor for the 21st Century”), BBEdit is more closely aligned in design and behavior to what Apple would like all macOS apps to be.
Thing one is that I want a Mac app — because I’m a Mac user and I can be very productive when the app supports the standard Mac keyboard editing and drag-and-drop conventions.
Thing two is that BBEdit is fast, powerful, and flexible. In all these decades it hasn’t ever let me down: I can always do what I need to do.
I don’t think it’s ever even crashed on me. As an engineer I respect that; as a user I love that.
— Brent Simmons, Developer and Designer at The Omni Group
Thing two is that BBEdit is fast, powerful, and flexible. In all these decades it hasn’t ever let me down: I can always do what I need to do.
I don’t think it’s ever even crashed on me. As an engineer I respect that; as a user I love that.
— Brent Simmons, Developer and Designer at The Omni Group
However, sidestepping its longstanding reputation, BBEdit has struggled to keep up with the pace of text editor innovation over the past few years. For example, although it has excellent find and replace functionality, there is no multiline editing support. Additionally — and more critically — adding themes or external packages to BBEdit requires you to find the package yourself, download a file, and then manually import the package. Compared to Atom and Sublime Text, adding and extending BBEdit feels painfully slow.
I’ve also run into oddities with BBEdit’s quick switcher. Unlike Sublime Text or Atom, both of which have quick switchers built into the main window, BBEdit’s interface for moving between open files is a smaller, separate window. This can be convenient if you want to keep both BBEdit and the quick switcher open side-by-side, but it’s problematic when you have BBEdit in fullscreen mode. Because macOS treats the quick switcher as a separate window, it actually creates a new, separate Space for the quick switcher. Once you’ve selected the file you want, the quick switcher disappears and the Space along with it. I’m not sure whether it’s a bug on BBEdit’s end or a limitation with how macOS handles Spaces and fullscreen apps, but it is a bit jarring and something that neither Atom nor Sublime Text have to deal with.
Speaking of file management, BBEdit’s approach to open files differs from all our other picks. Instead of having any open file represented as a separate tab (much like a web browser) across the top of the main window, BBEdit has a small pane at the bottom of the sidebar where you can see all of your currently opened documents. I personally find Atom’s and Sublime Text’s tab-based method more pleasing and familiar, but if you tend to have a lot of documents open and prefer to view them in a more information dense display, you’ll appreciate BBEdit’s approach.
BBEdit’s preferences are well-considered and organized in a straightforward, macOS way. When you consider how much you’re able to change or tweak from this one window, it’s somewhat amazing that Bare Bones Software managed to fit everything in. And should you feel lost amid the sea of options, at the bottom of the preferences window is a search box that lets you keyword-search for the preference you’re looking for. I wish more apps had this sort of feature.
Whatever BBEdit lacks in a bullet list feature comparison to Sublime Text and Atom, it makes up for in rock solid stability and unparalleled speed. For some users, that’s all that matters. BBEdit offers a free, 30-day trial. After the trial period, BBEdit continues to operate as a functional text editor, but some of the more powerful features are disabled. A full license costs $49.99 USD.
TextMate
TextMate, developed by MacroMates, is another native macOS text editor like BBEdit and Sublime Text. I remember seeing TextMate rise to popularity along with the Ruby on Rails web framework during the late 2000s. As Rails was experiencing a high rate of adoption among various web startups, Ryan Bates launched a series of popular online video tutorials that featured a good looking, powerful text editor — TextMate. For a few years, TextMate experienced a number of great updates that made it a consistent contender in questions like the one we’re trying answer in this review.
However, over the past few years, TextMate’s development and viability as a modern text editor has diminished. It’s still a reliable piece of software, but the current state of affairs regarding licensing and longevity are a little confusing. The current story is that you can download the app and use it for free, the code is available on GitHub, and you can also pay for a license, if you feel so inclined.
One thing I’d like to praise TextMate for is the way in which it handles packages, or as TextMate calls them, bundles. TextMate does a good job of displaying packages/bundles in a more macOS way than Sublime Text or Atom, and you can search through or enable packages via a tab in TextMate’s preferences window.
Additionally, TextMate will automatically recommend a package to install based on the language of the text you’re currently editing. This is a nice time-saving feature, and it makes enabling support for new programming languages easy.
Given its somewhat shaky development past, TextMate’s ecosystem of bundles is still alive and well. As of this writing, 41 bundles have been updated since 2017, and there are still a few hundred packages available. So while there’s less activity than what Atom or Sublime Text have going on, it’s far from a ghost town.
Visual Studio Code
In 2015, Microsoft released Visual Studio Code. Visual Studio Code, like Atom, is built on Electron, so it’s got the built-in cross-platform compatibility. It’s quite popular, too, ranked as the #1 development environment in Stack Overflow’s 2018 developer survey.
Visual Studio Code offers many of the features that I’ve already discussed in other editors, but it also includes a number of features and integrations that make it more of an integrated development environment (IDE) instead of a text editor. It’s both, to be sure, but for most people, a simpler app will be better for them in the long run.
Importantly, and undoubtedly contributing to its popularity, Visual Studio Code is available for free. Meanwhile, Visual Studio — Microsoft’s full-featured, professional IDE — costs between $40 a month or $500 for a standalone license. Visual Studio falls well outside the bounds of what we’d consider a text editor, but it’s important to highlight, as it underscores why a free version under the same branding would attract such attention.
Not really, but maybe: TextEdit
Notepad For Mac
I say this only half joking, but if all you really need to do is edit some basic text files, every Mac comes with a copy of TextEdit, and it’s adept at handling small, individual text files.
Free Text Editor For Mac
Available now: our video course for Things 3 users…
Conclusion
Despite some performance misgivings for more intense workloads, Atom’s price, functionality, and approachability when it comes to package management and settings make it our choice for the best text editor for macOS for most people. Backed by GitHub, Atom has a long life ahead, and the open source nature of the project mean that anyone can help make it better.
If you’re in the market for a text editor — whether you’ve been programming for 15 years or you’re just starting the first chapter of your next novel — you should give Atom a shot. Even if it’s not the editor you end up sticking with, we think there’s no better place to start.