Notepad++ is a text editor and source code editor for use with Microsoft Windows. It supports tabbed editing, which allows working with multiple open files in a single window. The project’s name comes from the C increment operator.
Notepad++ is distributed as free software.
Notepad++ was developed by Don Ho in September 2003. The developer used JEXT (a Java-based text editor) at his company but, dissatisfied with its poor performance, he began to develop a text editor written in C++ with Scintilla. He developed it in his spare time, since the idea was rejected by his company. Notepad++ was built as a Microsoft Windows application; the author considered but rejected the idea of using wxWidgets to port it to the Mac OS X and Unix platforms.
Notepad++ was first released on 25 November 2003 as a Windows-only application. It is based on the Scintilla editor component, and is written in C++.
In 2011 Lifehacker described Notepad++ as “The Best Programming Text Editor for Windows”, stating that “if you prefer a simple, lightweight, and extensible programming plain-text editor, our first choice is the free, open-source Notepad++”. Lifehacker criticized its user interface, stating that “It is, in fact, fairly ugly. Luckily you can do a lot to customise its looks, and what it lacks in polish, it makes up for in functionality”.
In 2014 Lifehacker readers voted Notepad++ as the “Most Popular Text Editor”, with 40% of the 16,294 respondents specifying it as their most-loved editor. The Lifehacker team summarized the program as being “fast, flexible, feature-packed, and completely free”.
Notepad++ is a source code editor. It features syntax highlighting, code folding and limited autocompletion for programming, scripting, and markup languages, but not intelligent code completion or syntax checking.
Notepad++ has features for consuming and creating cross-platform plain text files. It recognizes three newline representations (CR, CR+LF and LF) and can convert between them on the fly. In addition, it supports reinterpreting plain text files in various character encodings and can convert them to ASCII, UTF-8 or UCS-2. As such, it can fix plain text that seem gibberish only because their character encoding is not properly detected.
Notepad++ also has features that improve plain text editing experience in general, such as:
- Finding and replacing strings of text with regular expressions
- Guided indentation
- Line bookmarking
- Simultaneous editing
- Split screen editing and synchronized scrolling
- Line operations, including sorting, case conversion (Uppercase, lowercase, camel case, sentence case), and removal of redundant whitespace
- Tabbed document interface
Notepad++ has support for macros and plugins, and has been marked for its robust plugin architecture which enabled various new features to be integrated into the program. There are over 140 plugins that have been developed for Notepad++, 10 of which are included by default in the program.
Notepad++ supports internationalisation through XML files in an application specific format containing all internationalised strings (dialog captions, menu titles and items, etc.) in a certain language; this file can be reloaded from the application settings. Translations to new languages can thus be written by simply editing an existing file.
Notepad++ has a variety of Easter eggs. If F1 is pressed or the About dialog is opened while the currently selected text contains a name, a new document is created and a quote from that person is entered using simulated typing. Among the names that trigger this easter egg are Bill Gates, Linus Torvalds, Brian Kernighan, Barack Obama, Space Invaders and Darth Vader. Selecting the text ‘random’ selects a random quote.