July 10, 2016

CotEditor: A Competent, Open Source, Native Text Editor for macOS


Product: CotEditor -Text Editor for OS X
Price: Free

When it comes to text editors, there are a ton of free options on the macOS1. macOS ships with TextEdit which can be used as a text editor, through the terminal it gives you access to vim and emacs. There are a few well developed applications available from third party developers. Atom is a free text editor from the github folks. Brackets - A modern, open source code editor that understands web design. is a free text editor from Adobe. The oldest player in this space is of course, Bare Bones Software | TextWrangler. The not-so-poor-cousin of Bare Bones Software | BBEdit 11, is one of the best free alternatives available on the macOS platform. While I was writing this article, BBEdit 11.6 just got released and it introduces a new demo model.

There are a couple of new additions to this space. I have talked about Syntra Small: A Fast and Free Text Editor - iPadpedia and now it is the turn of CotEditor -Text Editor for OS X.

macOS Exclusive

CotEditor is a macOS exclusive. This lets it support macOS features without worrying about compatibility with other platforms. It surprised me to discover that the help file for CotEditor is written in Mac help format. I haven't seen this in ages.

CotEditor HelpCotEditor Help

CotEditor supports AppleScript. Supports Services. Supports versions, using the in-built macOS feature. It is a well-behaved Mac citizen.

CotEditor ToolbarCotEditor Toolbar

Another advantage of being a macOS exclusive is the support for customizing your toolbar. You have the ability to add a slew of commands, I like the toggle for invisible characters.

Instant On

CotEditor is designed to be fast at launch. And it is. It is instantly on and ready for you to work.

Open source

It is available from the Mac Store, here. But it is an open source project. CotEditor seems to have an active community aiding its development and if the pace of updates being released is any indication, it is a vibrant community.

CotEditor Project is the github repository for it. Consider joining it if you have something to contribute.

Syntax Highlighting

For those of you who write code, CotEditor provides syntax highlighting for more than 50 languages. You can create your own settings.

For my work, it does a good job of syntax highlighting Markdown.

Regex Enabled Find and Replace

CotEditor has a powerful find and replace function and it is implemented by using the Onigmo regular expression engine. I have no idea how good the Onigmo engine is. I tried a few rudimentary regex based search and replace patterns and they worked great.


CotEditor VersionsCotEditor Versions

CotEditor supports a macOS feature called versions. You work on a document and CotEditor saves multiple copies of it as you work in it. If you need to, you can go back to a previous version of it. Similar to the TimeMachine UI, Versions is useful when you want to get back to a previous state of the document. This is one of the advantages of having a text editor which is macOS only.

Outline Menu

CotEditor Outline MenuCotEditor Outline Menu

CotEditor provides a feature which the developer calls an Outline Menu. It lets you go to sections in your document, through a dropdown menu at the top of your editing window. If you are writing a long document, it is useful to be able to skip into different sections through the outline menu. I am sure this will be helpful for the code slingers too.

Split Editor

CotEditor Split EditorCotEditor Split Editor

In CotEditor, you can split the editing window into multiple panes. So you can look at different parts of the document while editing a different part of the same document. This makes it easier to work on a longish document and gives you an opportunity to be consistent in tone and content. I like the split view in CotEditor.

Character Inspector

CotEditor Character InspectorCotEditor Character Inspector

"Inspect unicode character data of each selected character in your document and display them in a popover." I have no idea what this is supposed to do and why this is useful. I write Markdown and this is not something which I have to deal with, but if you are interested, you can.


CotEditor is scriptable and it supports Python, Ruby, Perl, PHP, UNIX shell or AppleScript as the macro language. For those of you familiar with AppleScript this is something which will make you smile. A text editor with inbuilt support for AppleScript? Fantastic. BBEdit amongst the majors is the only competitor who does this and does this well.

CJK Language Friendly

This is a feature which is lauded by the developer. I am not equipped to check this out, but it is supposed to be friendly to Chinese, Japanese, and Korean languages.


CotEditor PreferencesCotEditor Preferences

CotEditor has an extensive set of preferences which you can set through the usual macOS preference pane. I am used to setting preference settings through a json file in Sublime Text 3. But this is the macOS way of doing things. It is comprehensive, well thought out and easy to access and navigate.

CotEditor Window PreferencesCotEditor Window Preferences

I like the ability to control exactly what is shown in the UI of the editor.

CotEditor Vertical SplitCotEditor Vertical Split

I appreciate the choice of a vertical split editor window.

CotEditor AppearanceCotEditor Appearance

The Appearance pane in the preferences window lets you control invisible characters and lets you create individualized themes. I like the control and the design of this feature. Makes it easy to tweak the editor to look exactly the way you prefer.

CotEditor Keyboard CommandsCotEditor Keyboard Commands

I liked the concentration on keyboard commands. You have the opportunity to change the keybindings associated with every command available in the editor. For those of you familiar with a text editor and its keybindings, it is easy to make CotEditor do your bidding with the same keyboard commands you are familiar with. This is the kind of attention to detail that makes me evangelize CotEditor to everyone who needs a text editor.

CotEditor SnippetsCotEditor Snippets

Has a rudimentary support of snippets built into the program. It is constrained by being tied to a keyboard command and not a text based expansion mechanism. But it is there. It is admittedly rudimentary.


CotEditor is not going to make me move away from Sublime Text 3. But that is not its goal. It is an offering for people who are new to text editors and who are looking for a free, open-source alternative. It is capable, fast, well-designed and a pleasure to use.

macosxguru at the gmail thingie

  1. Yes, I have started using that moniker.

CotEditor macOS

Previous post
Versatil Markdown Shows Promise but Is Not Ready Versatil Markdown Product: Versatil Markdown | Sometimes you need something a little more...Versatil Price: $14.99 Marketed as a "…hyper
Next post
Two more iOS Safari tips Continuing from 4 Tips for Safari on iOS - iPadpedia, I have two more tips for you today. Save website to pdf in iBooks If you want to save a copy