So what is the best text editor?

I guess every computer user in the world has (been) asked that question at least once, and many have invested a lot of time in the quest for the best, if not the perfect, text editor. Apparently many aspects of the problem are a matter of taste, and the fact that the technical environments are changing all the time (and even faster for us programmers than for most other people) doesn’t make it any easier.

I have once again decided that I should have another look at what’s available and I thought it might be a good idea to publish my findings in a way that allows others to benefit from them. I don’t plan to look at all available text editors out there at the same time, but rather to take the time every now and then to look at one or a few and document my findings in a categorised way.

Below I’ll publish the criteria by which I will rate the various contenders. While I was trying to set up that list, I already recognized one problem: I won’t be able to do it at this time. I’m sure there are editors out there that will surprise me with features I didn’t think of at this time, and I might recognize these features as important as time goes on. So I’ll probably re-evaluate the criteria every now and then.

Finally, I should note that I’m looking at editors running on Windows, this being my current platform of choice for my desktop systems.

The criteria

Let me say this up front: this is not supposed to be an impartial evaluation. These criteria are my own, not someone else’s. You might have different priorities, and while I’d like to hear about them (feel free to comment), I probably won’t respect them in my evaluations.

All distinct criteria will be rated on a scale from 1 to 100. I always find it funny when people say: “I’m using a scale from 1 to 10 and the rating for this item is 7.5.” That’s why I’m going for 1 to 100.

General features, in no particular order Various entries that don’t seem to fit into any of the special categories below
The editor should start up fast. I don’t really care whether the editor is implemented as an MDI (or tabbed) application or as a single-document application, but obviously the importance of the fast startup is greater with a single-document approach. When I say fast, I mean it should be fast on my 2 GHz laptop, not only on the highest standard machines.
The search/replace function should have support for Regular Expressions. Incremental search would be nice, as well as multi-file operation.
I like to use my text editor as a text viewer, so I often need quick access to configurations like the line wrapping setting. There should be some means to configure the editor for quick access to features like this.
Scrolling and other redrawing functions must be implemented fast, even with big files. I have a multi-head setup on my system with three large displays. One of these is attached to a PCI graphics card, the other two are rotated by a software driver, so neither of these has the performance of last-generation graphics adapters. OTOH, each of my displays is capable of showing full-screen videos, so I know they are fast enough…
The editor should have a low memory footprint. This is more important if a single-document approach is used. I’m not one of those people who want everything in 2MB, but I think an editor is one of the minor tools on my system, even if it’s regularly used, so it shouldn’t use the same amount of memory that Visual Studio or an Office application does.
I’d like to see support for Hex editing, and searching and replacing Hex values should also be possible.
It should be possible to edit big files, at least up to the size of the available memory, without performance issues. I expect that files can have unlimited numbers of lines and columns. Obviously, optimised memory usage would be a good thing, i.e. keep down the allocated bytes/file byte ratio down. Editing files larger than available memory would be a bonus that I’d also like to see.
I expect to be able to use the editor without resorting to the mouse. I don’t want a non-GUI app, though. It would be nice if keyboard bindings were configurable as they are seldom exactly the way anybody wants them.
To edit text, I’d like to see features for formatted text entry. Create bulleted lists, ordered lists, proper word wrapping in indented paragraphs, reformatting of changed paragraphs, …
The editor must support various file formats. I need support for DOS, Unix and Mac line endings and for Unicode (at least UTF-8 and UTF-16) with and without BOM. I would also like to have a switchable codepage for ASCII files. I want to be able to convert files from one of these standards to the relevant others.
I want to be able to carry all my preferences for the editor to another system easily. This may or may not be an integrated function of the editor, but settings shouldn’t be scattered all over the system.
System integration The editor should be a “real” Windows program of the newest generation.
I expect the program to look like a modern Windows application, modern meaning the standard of Windows XP. This may sound like nitpicking to some, but to me it means that the author(s) keep up to date with current technology and chances are bigger they are not using VB 4 for the product.
The editor should integrate itself into the Windows Explorer context menu to allow me to open any file in it immediately. Registration for a list of file types would also be fine, but I’d like this to be configurable (from the editor, that is). The editor or its installer should do these things automatically.
I use ClearType on all my systems and I expect the editor to be compatible with that. I’m going to test editors with the new Consolas font.
Standard Windows mechanisms should be supported by the editor’s file management. I want to have access to UNC paths and namespace extensions like My Documents.
Syntax highlighting The editor should be able to syntax highlight my files of various types.
As a minimum, I need highlighting for the following file types: C#, Pascal (Delphi), Perl, HTML, XML, diff and e-mail. I’m sure I’m forgetting something here and I’d like to see much more than that.
Support for highlighting should be able to handle an unlimited number of file types and it should be extensible. I also want to easily assign new file types (by extension) to existing highlighters. It should be possible to create additional highlighters myself.
I would like the editor to implement advanced means of recognizing file types, in addition to standard file extensions. Examples would be standard XML and HTML headers, file type markers as recognized by Emacs, …
I want a comprehensive package that includes support for lots of file types, as opposed to downloading tons of support files myself (which are naturally unsupported by the vendor, if it’s a commercial product).
Extensibility It would be good if the editor could be programmed in some way, and maybe extended with modules.
It should be possible to automate tasks in the editor, by means of a programming language or a macro system.
It should be possible to extend the editor with modules programmed as separate modules. In this case, it would be good if the module system were compatible with .NET.
Networking I don’t use this very often, but I’d like to be able to access files across FTP and WebDAV.
Support and community In the case of commercial products, I’d like to see responsive support services from the vendor. In any event a lively community would be a good thing to see, but this is much more important for free/Open Source products.
Price I got this last because it’s not supposed to be a very important factor in this evaluation. In this category I’ll rate the “value for money” of the editor.
Feedback, please!

If you know of an editor, or you have created an editor that you give away, for money or for free, please contact me and tell me about it! I’d really like my list to be comprehensive. I’d like to set a limit though, feature-wise: your editor should have something interesting that standard Windows Notepad doesn’t have, to be considered for inclusion. It doesn’t matter if your editor fulfills all the criteria above – I’ll include editors that don’t suit my own needs, as they may suit others’.

New articles will be published on my blog, in the Best text editor category.

21 Comments on So what is the best text editor?

  1. For me, it’s easy – TextPad is by far the best allround text editor for Windows.It’s nice, quick, clean, and very flexible. It’s handy, does the job, “it just works”,and the registration of this shareware gem won’t cost you an arm and a leg, either!It’s *NOT* trying to be everything to everyone – and I like that. It can be programmed to a degree with macros – although I wish they’d make thata bit easier to use in a future release.Go check it out! http://www.textpad.comMarc

    Like

  2. I’m a huge fan of EditPlus myself, but I know a lot of other people, including some heavyweights who like Notepad2.

    Like

  3. John Barone // July 18, 2005 at 3:14 am // Reply

    I’ve been using Notepad++ (an Open Source program) for awhile now.Notepad++ Home PageI’m sure that there will be some things that won’t quite pass muster (e.g., I find the interface a bit on the quirky side), but nonetheless, it might be worth a look.

    Like

  4. Hey, thanks to everybody who already commented! I’m going to try all your suggestions – actually the test for TextPad is already in the works. Keep ’em coming!

    Like

  5. André Knuth // July 27, 2005 at 8:50 pm // Reply

    Crimson or PSPad are my fav’s

    Like

  6. Thanks André, these two look like they’ll be interesting to check out.

    Like

  7. EmEditor is the best😉, but the price is quite high😦 http://www.emeditor.com – fast, nice GUI and macro support

    Like

  8. Well, besides not being a “native windows” editor, jEdit is a nice thing to use – and it’s freeware. Anyway, you need to install a JRE and maybe some plugins (currently, I am using the BufferTabs, ErrorList, HexEdit, FTP, JDiff, OpenIt, ProjectViewer, QuickNotepad, SideKick, SQL, WhiteSpace and XML plugins).jEdit is located at http://www.jedit.org.

    Like

  9. jEdit looks really nice in some of the screenshots, thanks for the hint. I’ll give it a go once I find some time again for these tests.

    Like

  10. Apart from not having the latest Windows GUI implementation, TsePro is my choice as the all-time best text editor in the Dos/Windows world. It’s extremely configurable and the macro allows you to virtually do anything you want. To many REAL programmers, the GUI sometimes gets in the way of getting things done.You can download a 60-day trial version at http://www.semware.com./Why Tea

    Like

  11. Is your name “Why Tea”? That’s an interesting idea :-)Thanks for your suggestion, even if it comes with the accusation of me being no real programmer. About the GUI thing: I simply see the GUI as the modern incarnation if a computer user interface. Not that modern, really – I’ve personally worked with GUIs for nearly twenty years, and with command line oriented systems for nearly the same stretch of time. Of course I see that not everybody shares my feeling that GUIs are a good thing, but that won’t make me change my mind. About it being in the way… well, I don’t believe that. If anything, it’s not the GUI idea itself that’s in the way, but rather the specific implementation in an application. As you can see, I mentioned the fact that I want to be able to use an editor via the keyboard. I think it’s important that access to an application isn’t regulated by what the mouse can do. But I don’t think there can be any arguments that a proper GUI will do a better job of visualizing information than any interface can ever do that’s purely text based.I might have a look at TsePro, but if I don’t, it’ll probably be for the reason that I already know two representatives of the category “not really in the Windows world” very well, i.e. Emacs and vi. There aren’t many editors that package sheer functionality as well as vi does, and there’s no editor out there (full stop!) that has more functionality than Emacs – if these two were better integrated into modern UIs (and systems in general), I probably wouldn’t be looking around at all.

    Like

  12. Wow, I’m amazed that nobody here mentioned EditPad Pro yet.EditPad Pro basically has everything you asked for… including amazing loading speed, low memory use, RegEx searches, syntax coloring and many many more.You can extend it with modules and the support is really good.

    Like

  13. Thanks for the hint, Dim! I really have to find the time to go on testing again – I have so many suggestions already.

    Like

  14. Pops Maloy // May 18, 2006 at 2:15 pm // Reply

    There’s a more posturing here than objective criticism. First off, we have to make a clear separation of FREE versus RETAIL. A really good free editor can rank closely against a great retail editor simply for the fact that you don’t pay a dime for it. If you get tired of it in the future, at least you never spent money on it, which can’t be said for retail versions. Here’s my 2 cents:#1 Free Editor: Notepad++ or jEdit#2 Free Editor: NoteTab Light#3 Free Editor: Notepad2#1 Retail Editor: UltraEdit or EmEditor#2 Retail Editor: TextPad#3 Retail Editor: EditPlus#4 Retail Editor: EditPad..and fyi… I did a similar search for the best CSS editor…# 1 CSS Editor: Rapid CSS 2006# 2 CSS Editor: TopStyle Pro# 3 CSS Editor: TopStyle Light (FREE)

    Like

  15. Hey Pops – can’t say I’m clear on what you mean by "posturing", must be the language thing again. But I assume it means something opposite of "objective criticism". In that case let me say that I reserve the right of being subjective when posting to my own blog. In fact, I tried to make it extremely clear in my post above that this is not supposed to be an objective evaluation of editors. My criteria are my own.Same thing goes for the price – I’m willing to pay premium dollar for an editor that does precisely what I want. Given two editors that do precisely what I want and that are also absolutely equal in all conceivable categories, I would go for the cheaper one. But in the real world this is practically never the case, so effectively the price is not really an important criteria for me. You might still be correct to say that in a given situation a good price can provide an extra point for a certain product, when looking at things objectively, but again, this is not what my test is about.

    Like

  16. I paid for UltraEdit 6 years ago (ver. 8) and haven’t felt the need to look elsewhere since. I’ve taken it with me to each computer, and feel naked without it! Like right now my friend’s laptop doesn’t have it, and I realize that it feels like I’m missing an arm. I always separated my IDE needs from my text editor needs though. What brought me here is that I was curious about the UltraEdit Studio, and how good that was. If you test it out, I’d love to hear about it! I’ll check back. Good luck Oliver!

    Like

  17. Textpad rocks!!dts………..http://india.co.in

    Like

  18. To the criteria. The editor needs to have a column edit mode. Most editors don’t, and once you discover it you cannot live without it. Example 1: You have a file of 100 lines where each line starts with a semicolon. With column mode, you select the whole column and delete the first letter. You can do this with a regex, but using column mode is easier and just as quick.Example 2: In the same file, you want to add a semicolon or something at the beginning or end of every line. Just copy your semicolon, and paste it at the beginning of all the lines with a few clicks.Ultra Edit (commercial) has this – Alt + C enters column mode. Also, PSPad (open source) has this function

    Like

  19. I’ve been using Notepad++

    Like

  20. VEdit (for windows) is capable of opening Gigasbyte texts in just a seconds…Saving Large files after editing is faster comparing to good editors like textpad.

    Like

Leave a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 4,633 other followers