SynWrite is a free but powerful programmer's editor which comes packed with features and functionality.
A tree structure view for your source makes it easy to locate the code you need, for instance. And with autocompletion, syntax highlighting and code folding you could find SynWrite is more comfortable to use than your regular IDE.
The program doesn't just have to be used for working on source code, though. Features like spell checking, a clipboard history, macros, and an extremely versatile Find and Replace dialog (including support for regular expressions) make SynWrite a capable text editor for many applications.
If there's a problem here it's that SynWrite crams in so many advanced capabilities that it's all too easy to miss most of them. The program supports three types of drag and drop to help reorganise your document, for instance, but that's far from obvious; be sure to browse the menus and documentation to help you fully understand how everything works.
Version 6.16.2010 (history):
+ lexer C++: hilite of "<Id>", more correct tree for names "Name<Type>"
+ lexer Tcl: more keywords
+ lexer Diff: folding for "Index:"
* refactored carets code