My text editor: Sublime Text

What text editor you use when coding is a very serious subject. I'll hardly be able to talk about what I prefer, without some people (other than you, of course ;) taking it as me trying to steal their editor from them. I'm not going to. I'm just going to tell you what I think, and you can just decide of you agree or not. My hope is that it helps you be more certain about your own choice of editor.

What I look for in a text editor:

  1. Support both Mac and PC. I use a Mac for work, and a PC at home, and I want to be able to use the editor skills I've learned at work for my hobby projects, and vice versa.
  2. Less than 3 seconds starting time. Big projects means lots of little files to open. So while programming I will open files and close files all the time. Each delay waiting for the editor to open, or a file to load, means hundreds of seconds over time.
  3. Syntax highlighting for web languages. I work with web stuff, both front end and back end, and I need colors to be able to scan files quickly. I don't really care about the exact ones, light or dark, I just want it to look decent. What "web languages"? HTML, CSS, Javascript, JSON, Python (Django), Ruby (Rails), PHP, SQL.
  4. Handle big files (< 1 Gb). From time to time I work with big files. Can be database dumps or large text files. I'm not expecting < 3 sec to open them, but at least < 15 sec, and then be able to work with the file without the editor lagging.
  5. Some kind of file browsing/project support. There's never just one file and there's needs to be a way to overview all the files in a certain directory structure, and pick from them. I'd like there both to be file searching support and a way to click to a file through the directory structure.
  6. Code auto-completion for web languages. Do I use font-variant, font-style, or font-decoration to set italic? I want my editor to show me a list of options, and let me pick. This is harder to do well for the dynamic server-side languages, but I still want it.
  7. Look good. I don't want something that looks like the terminal, and want something beautiful. For me this means gradients, nice rounded tabs to click on, a nice font, a color scheme that matches.

With that list of priorities in mind, let's look at a couple of popular editors:

  • Editors that are not available both for Mac and PC: Textmate, Coda, Notepad++, and Visual Studio.
  • Editors that are slow: XCode, Eclipse, NetBeans, Dreamweaver, and most other editors built with Java.
  • Editors that don't handle syntax highlighting and code completion: Notepad, Wordpad.
  • Editors that don't handle big files well: Komodo Edit (what I used til recently).
  • Editors that look like shit: Emacs, Vim.

And then there's Sublime Text. Which does all of the above, perfectly. You should try it.