As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Locked. This question and its answers are locked because the question is off-topic but has historical significance. It is not currently accepting new answers or interactions.
Other than Notepad++, what text editor do you use to program in Windows?
Another vote for gvim (about, download). I think once you learn the keystrokes to control it, you won't want to use anything else.
Plus, there is the added benefit of being able to use it on just about any platform, including the nice Windows port.
Sublime Text is amazing.
GNU Emacs is my preferred text editor and it works well on Windows (copy/paste actually works as expected) It's also available on all major platforms so you can reuse your knowledge if you jump around OSes like I tend to do.
I really like JEdit as well. It's a good text editor for code and random text. It's a nice middle ground between Notepad and Eclipse.
If you want something just a step above Notepad for quick, efficient editing I would recommend Notepad2. It's really useful when you replace the standard Notepad with this version. You continue to have a fast startup but the syntax highlighting is a real boon. I replace Notepad with Notepad2 on every one of my Windows machines.
I use SciTE
I'm a massive fan of Notepad2 - it is so quick!
For quick simple editing of text for me it's close to perfect. It has syntax colouring for Xml and code and can be extended easily.
We use Dreamweaver and Visual Studio for larger coding efforts.
UltraEdit is my second home. It is a great general purpose text editor.
Textpad is what I would use for random text editing (checking out HTML source, quick hackery, scripts and the like).
For actual Java development it's Eclipse all the way, although people tell me the IDEA is the cat's pyjamas.
E-TextEditor
Is a bit buggy, but beats the pants off any other editors I've used due to it's using the Textmate bundle format (and the bundles) - also gets updated very regularly. I use it every day and would gladly purchase it again.
Note that I primarily work in C/C++. For C/C++ code, I use Visual C++ Express Edition or Visual Studio Professional. For the little bit of Python I'm learning, I use the editor in the PythonWin IDE. (Mostly because it does a bit of code completion.) For everything else, I use GViM.
Tip:
After you install ViM on Windows, if you right-click on any file in Explorer, you see the Edit with Vim option in the right-click menu. This is very useful for peeking into and editing every kind of text file without having to bother about specific editors. GViM can understand most formats and thus displays them with syntax coloring. Get used to doing this and soon GViM becomes your defacto generic text editor on Windows. (Even replacing Notepad.)
Thej already recommended it, but to elaborate:
SciTE - Free, has preset colouring for many languages, and it's multi-platform (Windows & Linux), and lightweight.
alt text http://scitedebug.luaforge.net/scite-debug.png
gvim. I also use Dreamweaver for web stuff.
Notepad2
Syntax highlighting for html,c#,javascript,css,xml,sql,python,bat
Rectangular selection, regular expressions
Indentation, back/foreground customization
Downside: No tabbed windows.
I'll echo the others who have endorsed Emacs. I program every day on, at a bare minimum, OS X, Windows, and Linux. Having the same IDE on all three systems gives me an enormous productivity boost. That said, the vanilla version of GNU Emacs...well, it sucks. I'd strongly encourage you to try EmacsW32 instead. In much the way that Aquamacs makes an OS X-friendly version of Emacs, the EmacsW32 project makes Emacs out-of-the-box work just like a Windows text editor. Mind you, all of Emacs' power (and complexity) is there, but if you don't already have muscle memory built up, there's no reason not to use Ctrl-C/X/V as copy/cut/paste instead of M-w/C-k/C-y just to be cool. EmacsW32 also brings Windows-compliant open/save dialogs, sane CRLF file handling, and quite a bit more. If you've ever had an itch to try Emacs, give it a shot. You won't regret it.
Not everybody uses Notepad++, it's not that good.
Crimson Editor
http://www.crimsoneditor.com/images/overview.gif
EditPlus is my editor of choice. All the features you'd need, and no more.
I know this is my own question but I came across this text editor Sublime Text and thought it was pretty sweet. There are a few features in it that i have never seen before. It has multiple line select ( lines that are not continuous ) and a birds eye view navigation. It's a little pricey but I am having fun playing with the free version.
I use EDIT.COM for a lot of things, believe it or not. Old habits die hard.
Commercial product (Windows): UltraEdit.
Freeware (Windows): Notepad++, PSPad.
Cross-Platform: JEdit. It's written in Java and runs on almost anything.
If you don't mind taking a performance hit under Windows, JEdit has some amazing capabilities. For native performance on that platform, I would go with one of the others. I tend to switch back and forth between Notepad++ and PSPad. Notepad++ probably edges it out for most tasks. It has section folding, which is very handy. However, you did ask about products other than that one.
I have used UltraEdit for years... If I'm working on a project I prefer to use a real IDE, but nothing beats it for quickly making changes to source files, or especially for those small PHP projects where you're just hacking away anyway. The killer feature for me is the compare functionality.
I personally like ConTEXT.
A lot of people gave their suggestions for favourite text editor here:
https://stackoverflow.com/questions/10238/text-editor-or-ide#10391
I strictly use jEdit.
My personal favorite is EditPad Pro. Not because it is superior in any way, but because it was the one I started to use.
UltraEdit it my favorite text editor. Too bad I have to pay for it. You can't beat the ability to highlight vertically vs. horizontally.
Textpad replaces notepad for me. I couldn't live without it. Some key features that I use with Textpad are:
Find in files (along with open all, replace all, save all, close all).
Block Select (along with copy/paste of a column).
Clip Library
Syntax highlighting
Ability to attach externals tools (compilers, etc.) and capture the output to a window.
I use Eclipse for Java, Visual Studio for C++, C#, and VB.NET, JellyFish Pro for PowerBasic, I still use Visual Studio 6 for Classic VB, and I use TextPad for perl, python, Powershell, vbscript, SQL, HTML, and batch files.
I hate to sound like a broken record, but Vim is my choice. It works the same way everywhere and you'd be hard pressed to find a more powerful editor.
I don't code much on Windows, but e text editor is my choice. As far as free editors go nothing beats Emacs.
Notepad2, apart from Notepad++
Visual Studio, notepad2, notepad++.
Visual Studio for .Net development. Currently working with VS2008, but seems to be not quite finished yet. 2005 is probably the most stable and complete. Anything else for that would seem quite futile for .Net development
I use e-TextEditor for most other things. It covers most of the topics above including syntax highlighting, multi-select/edit, column select, TextMate bundles for auto-complete.
As you can see, asking about a preferred editor will get you a lot of responses. For me: UltraEdit - robust:
Notepad++ - lightweight
Also tend to use the IDE that comes with various tools (e.g. VB, C#, etc.)
But, the best advice is to pick a decent editor and learn it thoroughly. You will be spending a whole lot of time using it. So, the better you know it, the more time it will save you in the long run.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 12 years ago.
On the Emacs development list there is long thread (you can find it here) about the "Emacs learning curve" (this is the name of the thread). The participants have various opinions about why some people may not want to use Emacs. If you gave an Emacs a try in the past and then chose an other editor/IDE instead then please describe in your answer here the reasons which made you look for an other tool.
Your answers can give some real world input to the developers on how Emacs should be changed, so that new users can discover its powers and don't give up trying. Thanks.
Because VI is installed on the servers by default, emacs isn't.
I once tried emacs, but I was already pretty familiar with vim, so I didn't really have any incentive to get good at emacs. That's the only reason for me, really.
I tried Emacs for a while and then Vim, and decided to stay with Vim. The reason was that in Emacs you constantly had to use Shift/Ctrl/Alt which was uncomfortable, compared to Vim.
As a novice programmer, I just find vim's use of modes more appealing than the keyboard combinations used in Emacs.
The effectiveness of Autocomplete/Intellisense is very dependent on the language. For instance, with C, I find the autocomplete in Visual Studio, which I use whenever I code in Windows, nearly useless. For languages like C, Perl, Python and the like, I use Emacs.
However, Emacs seems very counterproductive for something like C# or Java because it lacks the extremely useful built-in documentation* and autocomplete functionality of Eclipse and Visual Studio. I know that it has a rudimentary autocomplete for some modes, and very many Emacs Lisp packages available, but I haven't found anything that even comes close to Eclipse or Visual Studio.
*(not counting man pages! I mean something like where Visual Studio puts tooltips with documentation over members, etc.)
Ah, the fresh smell of flame bait.
I like my tools to be as invisible as possible. I am most productive when I can spend all of my time thinking about my problem and not my text editor.
I gave emacs an honest try, but ultimately found other tools to be better for me. I just never found it to be intuitive.
can't stand the whole two sets of key combinations for a command thing in any editor I have seen it in. I tried really really hard to like emacs, but I couldn't get over that. now I use vim, and still wish that emacs wasn't so painful (physically and figeratively) to use
I love emacs and use it every day, but for Java development I usually use Eclipse. I've tried to set up the emacs Java Development Environment and it wasn't able to handle parsing the newer syntax features (annotations, generics) that I use regularly.
For emacs macro recording/playback tasks, I'll open the Java code in emacs, edit and then switch back to Eclipse.
Here are some of the features I can't live without now, which are found in Eclipse with keyboard shortcuts but not available to me in emacs:
Context-sensitive auto-complete.
Fuzzy search for a class name and open the source. Searching by initials for CamelCaseClasses is wonderful.
Who overrides this method?
Who calls this method?
Run or debug just this unit test (just this method).
Warn me about unused imports, deprecated methods, etc.
Hover over a declaration to preview the HTML version of the javadoc.
Reorganize imports, e.g. change import java.util.* to a bunch of imports for just the classes I actually use.
Redeploy this webapp in Tomcat (automatic when you save a file via this plugin)
Top reasons I open emacs:
Record editing macros for complex but repetitive editing.
Edit remote files via tramp.
Edit files when I don't have an Eclipse project defined.
This might sound silly, but I didn't like the font rendering and didn't feel like customizing it.
Second reason is that I thought it was the ugliest program period. It'll give MSBOB a run for its money
I'm looking for free lightweight editors that can be run directly from a flash drive, without any install.
I would like editors that support as many languages as possible, I have notepad++ but I don't particularly care for it.
Edit: Forgot to mention I'm looking for editors for windows.
I'm a big fan of vim and Portable GVim makes the goodness of vim portable.
It's got syntax highlighting for more languages that I can name and all kinds of vim goodness.
I swear by notepad2 ,which isn't exactly a code editor, but it has support for syntax highlighting for many text formats, and they just don't come any lighterweight or more portable.
I like SciTE, and there's also jEdit.
JEdit is a fairly lightweight text editor with all the trimmings. You can dowload loads of plugins. It's written in java, too, so you can use it cross-platform.
Portable version here, thanks to #redsquare for the link.
SciTE # http://www.scintilla.org/SciTEDownload.html
The list of supported languages in very impressive. Includes most features of modern editors - syntax highlighting, code folding, unlimited undo/redo, find/replace with regular expressions, auto indent, etc. It is rock solid - never had it crash or bug out in the 5+ years I've been using it.
Check out Programmer’s Notepad , which does have a portable version. I wouldn't say however that is better that notepad++. In fact, I don't think you can get any better than this in the free world.
What about Emacs?
Emacs for Windows should do it. It has been known to run off of CD before. A flash drive should be a cinch compared to that.
To check, I just went and downloaded the latest "bin" version from http://ftp.gnu.org/gnu/emacs/windows/. It unpacked to a 45MB directory. If you can't spare that much space, you are in trouble.
For comparison's sake (and for those of you who prefer another editor) I went through the downloads for everything mentioned here to find the (uncompressed) sizes.
Emacs (without Lisp or code sources) - 45MB
GVim - 22MB
Notepad2 - 300MB
JEdit - 15MB
Scintilla (self-uncompressing version) - 500K
Programmer's Notepad - 6MB
Notepad++ Portable - 9MB
If it were me, I'd try them out in order of editor preference, (from my most to least favorite), then stop with the first one that fits in the space required.
The choice on portableapps.com is a bit limited: http://portableapps.com/apps/development
There's NVU which looks to be more full-on than notepad++ but personally notepad++ hooked into winscp is my tool of choice for web development at the moment. Anything else gets a bit clunky and unresponsive.
Not sure if it will work from a flash drive but Intype looks promising aswell.
PSPad is decent, also if you don't mind me asking, what is it exactly you dislike about notepad++, and you do realize with a portable IDE you need the whole works to go with it or you are just carrying around a bloated editor (not matter how lightweight the IDE).
Here is a good site to find all sorts of portable software and here is the editors page.
It sounds like what you're really looking for is a text editor, not an IDE. I have long been a fan of Crimson Editor. There are many great editors for Windows, but I found Crimson Editor to have a really nice interface, and every feature I could want in my text editor, so I've always come back to it for any time I'm not using vim/gvim.
Looking at portableapps.com the only other app I can see that might work for you is Abiword but that's more of a word processor than just a text editor, but might be worth checking out anyway.
Then there is Akelpad, which seems very lightweight: http://akelpad.sourceforge.net/en/index.php
Edit: This is a relevant and researched answer. Can whoever rated this down please explain why in the comments? That would be good netiquette and manners, it doesn't make any sense.
Although not free, ultraedit has always been a favorite light weight editor for me. I think I definitely got my money's worth with that one.
My company gave me VS2008 for web development in C#/ASP.NET. I do a lot of Perl programming too and I'd like to start using VS for that so I can have a consistent work environment... but am having real trouble figuring out how to do so.
VS has a lot of nice features but seems pretty hostile towards languages it doesn't support out of the box. Is it really or do I just not "get" the VS way of doing things?
I usually write Perl scripts using TextPad and the features I'm used to having are pretty basic.
line numbering
soft line wrapping
syntax highlighting
auto-indenting in/out after open/close brace
auto-indenting to the same starting point as the previous line
brace matching
run scripts from within the editor
capture script output in an editor pane
dbl-click on error message jumps to the line where the error occurred
How do I at least get the above features in VS2008?
How can I get advanced features like:
code folding
intellisense
code-completion
integrated perldoc
VS-style debugging and code tracing
on-the-fly error detection
etc
(I see one possibly relevant online discussion in an ASPN mod-perl mailing list , but don't understand what, if anything, it means to a guy like me.)
-- added --
I'm aware of other editors and IDEs out there: vi, perlmode-emacs, Komodo, E, TextMate, etc. This question is not about what other editor or IDE I should try.
While I appreciate your suggestions, I'd rather read them in a thread like "What editor should I use for Perl" and not "How do I set up VS to accomplish my goal"
-- added --
After doing some additional research I've concluded that you just can't get there from here. The only option would be to write my own language plugin. Considering the time commitment to make something usable I think I'm just better off using a different editor. Thanks anyway guys
I use VS2008 for .NET stuff, but I'm completely sold on Komodo for Perl editing. The full Komodo IDE is worth the money if this is your job and like/need to use a debugger, but even the free Komodo Edit is a terrific Perl editor.
I agree, I really like Komodo as well for an IDE. Its solid and easy to use. I tend to use Vim a lot instead of an IDE, but that's just personal preference.
Check out Komodo though, its worth the look.
Regards,
Jeff
I heard rumors of there being a .NET implementation of Perl, called IronPerl, but except for that, I don't think there is any sort of plugin for Visual Studio. I would suggest just using one of the many tools out there that are designed for Perl.
There was something called "Visual Perl" wich worked with Visual Studio.net 2002 and was needed Perl Dev kit tool, but I don't how comatible is with VS.net 2010.
Looks like you can do this via the Managed Package Framework if you are willing to put the time in.
You can decrease the amount of work required by just setting up syntax coloring
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Locked. This question and its answers are locked because the question is off-topic but has historical significance. It is not currently accepting new answers or interactions.
I've been using Eclipse with RDT (not RadRails) a lot lately, and I'm quite happy with it, but I'm wondering if you guys know any decent alternatives. I know NetBeans also supports Ruby these days, but I'm not sure what it has to offer over Eclipse.
Please, list any features you think are brilliant or useful when suggesting an IDE, makes it easier to compare.
Also, I said Ruby, not Rails. While Rails support is a plus, I prefer things to be none Rails-centric. It should also be available on Linux and optionally Solaris.
RubyMine from JetBrains. (Also available as a plugin to IntelliJ IDEA)
Have you tried Aptana? It's based on Eclipse and they have a sweet Rails plugin.
Redcar has been getting some attention lately, as well. Still early in its life, but it shows promise.
On Mac OS X, TextMate is a godsend.
The latest Netbeans IDE (6.1) has a pretty solid Ruby support.
You can check it out here.
Once I found Geany (Ubuntu), I switched from TextMate (OSX) and never looked back.
Geany is a lean, clean, speedy IDE that can be used either as a text editor or a light-weight IDE. It supports not only text editing features (syntax highlighting, code folding, auto-completion, auto-closing, symbol lists, code navigation, directory tree, multi-tabbed open files etc.) but also normal IDE features such as simple project management, compile-build-run within the main window. Unlike TextMate, it has a Terminal screen within its own window; you do not have to go back and force between your editor window and terminal window. Unlike TextMate, it supports international languages. Unlike TextMate, it supports multi-platforms, Unlike TextMate, it is open-source and free. Geany is now my favorite C/Ruby/XML development tool.
RubyMine is so awesome. Everything just works. I could go on and on. Code completion is fast, smooth, and accurate. Formatting is instantaneous. Project navigation is easy and without struggle. You can pop open any file with a few keystrokes. You don't even need to keep the project tree open, but it's there if you want. You can configure just about any aspect of it to behave exactly how you want.
NetBeans, Eclipse, and RubyMine all have more or less the same set of features. However, RubyMine is just so much more cleanly designed and easy to use. There's nothing awkward or clunky about it. There are all these nice little design touches that show how JetBrains really put thought into it instead of just amassing a big pile of features.
Incidentally RubyMine can do a lot of the things that Vim can do like select and edit a column of text or split the view into several editing panels with different files in them.
NetBeans has some really solid Ruby support.
I have used Komodo and it's pretty good. I use TextMate now.
For very simple Linux support if you like TextMate, try just gedit loaded with the right plugins. Easy to set up and really customizable, I use it for just about everything. There's also a lot of talk about emacs plugins if you're already using that normally.
Gedit: How to set up like TextMate
In last 3 months, I have tried RadRails, Netbeans and RubyMine and finally settled on RubyMine not so much for features but for responsiveness and stability reasons.
In terms of features, RubyMine has slightly better code completion, debugging and code navigation, but only ruby beginners(like myself) need them most. Relying on code completion and code navigation is anti-ruby/rails, as ruby/rails names are supposed to be natural and each line of code needs to be in its convention determined location.
NetBeans is good because you can use it on Windows and Mac OS X.
Most IDEs present the project structure in a top down manner. This is great way to explore at a high level when joining an existing project. However, after working on the same project for more than a year, I realized that this approach can become counter-productive.
After Oracle declared the end of Ruby in NetBeans, I switched to Vim. By using a command line and an editor as the only tools, I was forced to mentally switch to a bottom-up perspective. To my amazement, I discovered that this made me more focused and productive. As a bonus, I got first class HAML and SASS syntax support.
I recommend Vim + Rails plugin for anyone that will work on a single project for an extended period of time.
While TextMate is not an IDE in the classical sense, try the following in terminal to be 'wowed'
cd 'your-shiny-ruby-project'
mate .
It'll spawn up TextMate and the project drawer will list the contents of your project. Pretty awesome if you ask me.
Aptana more or less is RadRails, or it's based on it. I've used it, and it's really good, but it does have some problems. For instance, it breaks the basic search dialog on my system (giving a raw java exception to the end user), and it clutters the interface with add like notices and upgrade bars and news feeds and...
But all in all it's pretty good, especially its editors (ERB, HTML/XML, ...) are top notch.
I prefer TextMate on OS X. But Netbeans (multi-platform) is coming along quite nicely. Plus it comes with its IDE fully functional debugger.
Textmate on osx
I started out using gEdit (ubuntu user), but even with all the plugins and modifications (class/file browser, terminal, darkmate scheme, etc, etc) it still always seemed to come up short. I've also tried like hell to get Aptana RadRails and Studio to work, but none of them ever really seemed to sync up with my workflow. I've even tried using Eclipse, but again, it just didn't work for me.
RubyMine also seemed like it would be great, but I found it to be way too buggy, even after the upgrade to 3.0.
So far, my favorite Ruby editor is Komodo Edit. It's got syntax highlighting and can detect errors and recognize your code based on user-specified ruby versions. Syntax highlighting schema are easily customizable and easy on the eyes. There are some very nice plugins for git, it can have split-screen editors (love that feature), and a great file-browser. I really wish Komodo had built-in terminal (multiple terminal) support, but everything else about it I've really come to love, and haven't found anything better yet.
E Text Editor is great (TextMate compatible sort-of-clone for Windows).
emacs with ruby-mode, rdebug and a ruby interactive inferior shell.
I'd recommend NetBeans 6.1 too. Very nice IDE and makes working with Ruby a pleasure.
I started out with RadRails then moved to Aptana when they took it over, wasn't too bad. Got a macbook and have been using Textmate, never going back.
Ruby in Steel: http://www.sapphiresteel.com/Products/Ruby-In-Steel/Ruby-In-Steel-Developer-Overview
A Visual Studio based Ruby IDE. Fast Debugger. Intellisense.
+1 for TextMate on Mac OS X.
See also answers to this question. I recommend trying NetBeans if you're on Windows.
On Mac OS there is also XCode. http://developer.apple.com/tools/developonrailsleopard.html
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I searched for this and found Maudite's question about text editors but they were all for Windows.
As you have no doubt guessed, I am trying to find out if there are any text/code editors for the Mac besides what I know of. I'll edit my post to include editors listed.
Free
Textwrangler
Xcode
Mac Vim
Aquamacs and closer to the original EMacs
JEdit
Editra
Eclipse
NetBeans
Kod
TextMate2 - GPL
Brackets
Atom.io
Commercial
Textmate
BBEdit
SubEthaEdit
Coda
Sublime Text 2
Smultron
WebStorm
Peppermint
Articles related to the subject
Faceoff, which is the best text editor ever?
Maceditors.com, mac editors features compared
Thank you everybody that has added suggestions.
I thought TextMate was everyone's favourite. I haven't met a programmer using a Mac who is not using TextMate.
I haven't used it myself, but another free one that I've heard good thing about is Smultron.
In my own research on this, I found this interesting article:
Faceoff: Which Is The Best Mac Text Editor Ever?
Emacs
Vim
But I use TextMate, and can say that it is, without a doubt, worth every penny I paid for it.
Sublime text is awesome (http://www.sublimetext.com/2). Excellent search features, very fast and lightweight. Very decent code completion.
I also use RubyMine and WebStorm a lot (http://www.jetbrains.com/). They are excellent but not all purpose like TextMate.
MacVim and SubEthaEdit are two nice options
I've tried Komodo out a bit, and I really like it so far. Aptana, an Eclipse variant, is also rather useful for a wide variety of things. There's always good ole' VI, too!
If you ever plan on making a serious effort at learning Emacs, immediately forget about Aquamacs. It tries to twist and bend Emacs into something it's not (a super-native OS X app). That might sound well and all, but once you realize that it completely breaks nearly every standard keybinding and behavior of Emacs, you begin to wonder why you aren't just using TextEdit or TextMate.
Carbon Emacs is a good Emacs application for OS X. It is as close as you'll get to GNU Emacs without compiling for yourself. It fits in well enough with the operating system, but at the same time, is the wonderful Emacs we all know and love. Currently it requires Leopard with the latest release, but most people have upgraded by now anyway. You can fetch it here.
Alternatively, if you want to use Vim on OS X, I've heard good things about MacVim.
Beyond those, there are the obvious TextEdit, TextMate, etc line of editors. They work for some people, but most "advanced" users I know (myself included) hate touching them with anything shorter than a 15ft pole.
CotEditor is a Cocoa-based open source text editor. It is popular in Japan.
Best open source one is Smultron in my opinion, but it doesn't a torch to TextMate.
There's a new kid on the block - PHPStorm. I used it for a whole year. Its not free but offers an individual license of 49$ for a year, free for Open Source Developers.
Speedy for an IDE - Its based on Java so looks somewhat like Eclipse/Netbeans but smokes them to dust in terms of speed (not as fast as Coda/Textmate as this is an IDE).
Keyboard shortcuts galore - I seldom touched the mouse while developing using PHPStorm (that's what I didn't like about Coda)
Subversion support built-in - Didn't need to touch Versions or any other SVN client on Mac
Supports snippets, templates - zen-coding is supported as well
Supports projects, though in separate windows
File search, code search
code completion, supports PHPDoc code completion too
BBEdit makes all other editors look like Notepad.
It handles gigantic files with ease; most text editors (TextMate especially) slow down to a dead crawl or just crash when presented with a large file.
The regexp and multiple-file Find dialogs beat anything else for usability.
The clippings system works like magic, and has selection, indentation, placeholder, and insertion point tags, it's not just dumb text.
BBEdit is heavily AppleScriptable. Everything can be scripted.
In 9.0, BBEdit has code completion, projects, and a ton of other improvements.
I primarily use it for HTML, CSS, JS, and Python, where it's extremely strong. Some more obscure languages are not as well-supported in it, but for most purposes it's fantastic.
The only devs I know who like TextMate are Ruby fans. I really do not get the appeal, it's marginally better than TextWrangler (BBEdit's free little brother), but if you're spending money, you may as well buy the better tool for a few dollars more.
jEdit does have the virtue of being cross-platform. It's not nearly as good as BBEdit, but it's a competent programmer's editor. If you're ever faced with a Windows or Linux system, it's handy to have one tool you know that works.
Vim is fine if you have to work over ssh and the remote system or your computer can't do X11. I used to love Vim for the ease of editing large files and doing repeated commands. But these days, it's a no-vote for me, with the annoyance of the non-standard search & replace (using (foo) groups instead of (foo), etc.), painfully bad multi-document handling, lack of a project/disk browser view, lack of AppleScript, and bizarre mouse handling in the GVim version.
jEdit runs on OS X, being Java-based. It's somewhat similar to TextMate, I think.
Editra looks interesting, but I've not tried it myself.
TextMate not for "advanced programmers". That does not make sense, TextMate contains everything an "advanced programmer" would want. It allows them to define a bundle that allows them to quickly set up the way they want their source code formatted, or one that follows the project guidelines, quick easy access to create entire structures and classes based on typing part of a construct and hitting tab.
TextMate is my tool of choice, it is fast, lightweight and yet contains all of the features I would want in a tool to program with. While it is not tightly integrated in Xcode, that is not a problem for me as I don't write software for Mac OS X. I write software for FreeBSD.
Definitely BBEdit. I code, and BBEdit is what I use to code.
You might consider one of the classics - they're both free, extensible and have large user bases that extend beyond the Mac:
Aquamacs - emacs for OS X (emacs in a shell window is also an option)
Mac Vim - VI with a Mac-specific GUI (vim in a shell window is also an option)
I prefer an old-school editing setup. I use command-line vim embedded in a GNU Screen "window" inside of iTerm.
This may not integrate well with XCode, but I think it works great for developing and using command-line programs. If you spend any significant time working in a terminal, GNU Screen is worth the 30 minutes it takes to master the basic terminal multiplexing concepts.
Coda's great for PHP/ASP/HTML style development. Great interface, multiple-file search and replace with regexp support, slick FTP/SFTP/etc integration for browsing and editing remote files, SVN integration, etc.
It now supports plugins and the plugin editor can import TextMate bundles, so there's a bright future there. There aren't a lot of must-have plugins yet because the plugin support was newly introduced with version 1.6 a few months back. It's a popular app, though, so I expect more in the future.
The "killer features" for me are:
* Seamless editing of remote files
* Code navigator (symbol browser; pane that lists functions etc)
Most people aren't really into using symbol browsers but as I have to maintain a lot of unfamiliar code I find them invaluable.
I'm not sure that Coda has the "raw power" of TextMate though. I plan on getting familiar with TextMate next.
I make use of Komodo IDE. It supports a huge number of languages, and is customisable but is a bit expensive (my company bought me a copy). A really good alternative is the free version called Komodo Edit. Loads really quickly and has a decent feature list and I find myself turning to it rather than the full IDE for a lot of jobs.
Smultron is another good (and free) one.
I actually prefer EditRocket over TextMate. I use it on both my Mac and Ubuntu machines. It is nice to use the same editor on multiple operating systems.
Textmate is state of the Art editor, but if someone is thinking about developing on several platforms without awkward memory eaters monsters like jedit, eclipse, netbeans etc take a look at geany (geany.org). It is free. The only problem the editor has not esthetic look and feel on Mac OS X :)
Fraise is a nice free option. It has some rough edges, but you can't beat the price. I believe it's a fork or successor of Smultron.
SubEthaEdit
Coda
DashCode with OS X 10.8 or older
Eclipse and its variants.
Netbeans
I use Eclipse as my primary editor (for Python) but I always keep SubEthaEdit handy as my supplemental text editor (free trial, 30 euros to license). It's not super-complicated but it does what I need.
Another vote for Smultron. I used it when doing some XQuery programming and being able to define a keyword files for syntax color highlighting was great.
I have installed both Smultron and Textwrangler, but find myself using Smultron most of the time.
I would love to use a different editor than XCode for coding, but I feel, that no other editor integrates tightly enough with it to be really worthwhile.
However, given some time, TextMate might eventually get to that point. At the moment though, it primarily lacks debugging features and refactoring.
For everything that does not need XCode, I love TextMate. If I had another Mac-user in my workgroup I would probably consider SubEthaEdit for its collaboration features. If it is Emacs you want, I would recommend Aquamacs (more Mac-like) or Carbon Emacs (more GNU-Emacs-like)
I've been using BBEdit for years. It's rock-solid, fast, and integrates into my Xcode workflow decently well. (I'm not sure anything integrates into Xcode as well as the built-in editor, but who has time to wait for the built-in editor?)
For small team projects which don't use a source control system, or for single user editing on multiple machines, SubEthaEdit comes highly recommended.
Eclipse and Netbeans have text editors among a whole lot of other stuff. I don't think you would want to wait 10 seconds for your text editor to become ready :/...If you are going to spend some serious time coding then spend some time and learn to use vim (emacs too but, I recommend vim)