Notepad++ is a free full-featured text editor for Windows, and the one I primarily use. Some of its many features include:
- Dozens of macros (change case, sort lines, letter-number sorting, etc.)
- Powerful searching, including find, replace, count, find in folder, etc.
- Support for various codepages, including Unicode, and conversion between them, and Macintosh/Microsoft/UNIX line break support.
- Color syntaxing for dozens of programming languages.
- Plugin support for many additional tools like a spell checker.
- The program has a lot of wonderful features.
- The updater frequently turns off your plugins requiring you to manually re-install them.
- The spell checker plugin seems to get broken after every update and needs to be manually fixed.
- By default, when you open the program, it re-opens every document you've ever opened with it. You have to manually close each document to prevent this. Thankfully, there is an option turning off this bizarre feature.
Turn Off Session Memory
By default, Notepad++ remembers the documents you've opened across sessions which requires you to have to manually close them or they will continue to reopen with each subsequent use (or fail to open and pop a warning when they no longer exist). I do not like this feature, but it isn't obvious in the settings where to turn it off. There is a section called Recent File History, but this only applies to recent files listed in the File menu. To prevent Notepad++ from keeping files open across sessions, go into Settings -> Preferences -> Backup, and uncheck "Remember current session for next launch."
Turn On Auto Update Changed Files
If you have a file open in Notepad++, and it is modified by an external source, Notepad++ will pop a dialog asking if you want to refresh it. I prefer to have Notepad++ automatically refresh modified files. To turn on this feature, go into Settings -> Preferences -> MISC. -> and check Enable and Update silently.