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:
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
Comments
By: Ben (#1)
By: paggio (#2)
By: Emil Stenström (#3)
By: Tobias Sjösten (#4)
My own list of requirements is very much alike yours. But I would add:
- Extensibility. I want to be able to modify just about any aspect of it, so that I know it can change along with my changing requirements over the years.
- Free software. I like the idea of open source a lot and will pick it over its proprietary counterpart any day of the week.
- Terminal based. For me I've found the most efficient way to develop software is to skip the mouse completely. So I want to run my editor in a terminal, with tmux. As a plus, I am then pretty much platform independent.
So I am going with the "looks-like-shit-editors"; namely Vim. ;)
By: Emil Stenström (#5)
By: Sublime Text 2 – musings of max (#6)
By: Tom Vance (#7)
Although sublime looks very nice.
By: paggio (#8)
By: Dave (#9)
If i can edit faster, maybe i can spend more time snowboarding!
By: Linaka (#10)
By: Espinillas (#11)