Notepad++ is a free text editor that provides additional features not found in the standard Windows text editor. It is specially designed for editing source code.
Based on the powerful editing component Scintilla, Notepad++ is written in C++ and uses pure Win32 API and STL, which ensures a higher execution speed and smaller program size. By optimizing as many routines as possible without losing user friendliness, Notepad++ is trying to reduce the world's carbon dioxide emissions. When using less CPU power, the PC can throttle down and reduce power consumption, resulting in a greener environment.
What is the difference between Notepad and Notepad++?
Notepad++ is an advanced version of Notepad, aimed at programmers, web designers, and IT professionals. It has basic IDE features but retains the familiarity of Notepad which is Windows' built-in text editor and very simple word processor.
What programming languages does Notepad++ support?
Notepad++ supports programming languages such as C, C++, Java, JavaScript, XML, Python, CSS, HTML, Ruby, Pascal, Visual Basic, and more.
Is Notepad++ better than Sublime Text?
Both applications are powerful text editors, but the main difference is that Notepad++ is open source and free. Sublime Text offers a trial version but it costs $99 per license. Another important difference is that Notepad++ is only available on Windows, while Sublime Text is available for Windows, Mac, and Linux. It is worth mentioning that Sublime Text offers an evaluation version that you can use for free, but it will constantly ask you to purchase the license.
Features
Notepad++ is a free (as in "free speech" and also as in "free beer") source code editor and Notepad replacement that supports several languages. Running in the MS Windows environment, its use is governed by GPL License.
This project is mature. However, there may be still some bugs and missing features that are being worked on. If you have any questions or suggestions about this project, please post them in the forums. Also, if you wish to make a feature request, you can post it there as well. But there's no guarantee that I'll implement your request.
You're encouraged to translate Notepad++ into your native tongue if there's not already a translation present in the Binary Translations page. And if you want, help translating Notepad++ official site into your native tongue would be greatly appreciated.
- Syntax Highlighting and Syntax Folding
- WYSIWYG
- User Defined Syntax Highlighting
- Auto-completion
- Multi-Document
- Multi-View
- Regular Expression Search/Replace supported
- Full Drag 'N' Drop supported
- Dynamic position of Views
- File Status Auto-detection
- Zoom in and zoom out
- Multi-Language environment supported
- Bookmark
- Brace and Indent guideline Highlighting
- Macro recording and playback
What's New
- Updated to Scintilla 5.4.1 & Lexilla 5.3.0. (Implement #14375)
- Fix a regression: the position in the previous session is now restored correctly in cloned document. (Fix #14164)
- Fix a regression: customized extension in Style Configurator is now saved correctly. (Fix #14437)
- Add an ability (disableLineCopyCutDelete.xml) to disable line copy/cut/delete when no selection is made. (Fix #14470, ref, ref))
- Add an ability (noColumnToMultiSelect.xml) to disable column mode to multi-select mode. (Fix #14464, ref)
- Fix deleting in column mode also delete an unexpected EOL. (Fix #14426)
- Fix hidden results of long lines for Search results with "Find in…" commands. (Fix #12023)
- Enhance Search-results by showing search options for "Find in…" commands. (Fix #14306)
- Fix an issue: replacements are no longer duplicated (the 2nd time in cloned document) for "Replace in Opened Docs". (Fix #14505)
- Fix a regression to make F3 & Shift-F3 work again in Incremental Search. (Fix #14503)
- Add document tab navigation commands: "First tab" & "Last tab". (Fix #14416)
- Add document tab commands: "Move to Start" & "Move to End" commands. (Fix #9525, #13982)
- 3 RTL new abilities: RTL per document, RTL per document remembered across the sessions & new attribute editZoneRTL="no" in RTL localization files. (Fix #9665, #9950, #14385)
- Enhance the "-loadingTime" command line parameter. (Fix #14472)
- Enhance the performance: disable undo collection while loading a file. (Fix #14455)
- Sort language list in the Preferences dialog. (Fix #14245)
- Fix a visual glitch that occurred during multi-paste. (Fix #14410)
- Fix confusing memory allocation error message. (Fix #14418)
- Fix python wrong decorator attribute color. (Fix #5894)
- Fix file status in "other view" is not detected. (Fix #14225)
- Fix dropped file being opened in the wrong view. (Fix #14354)
Notepad++ 8.6 Release notes
- Multi-edit is fully supported in Notepad++. (Fix #14266, #8203)
- Make multi-select background & caret colours customizable. (Fix #14302)
- Make session inaccessible files remembered (empty & read-only document as placeholder). (Fix #12079, #12744, #13696)
- Fix missing session invalid error for user session & enhance API NPPM_GETNBSESSIONFILES. (Fix #14228)
- Fix network shared files saving regression. (Fix #14300)
- Update Scintilla to v5.3.8 & Lexilla to v5.2.8. (Fix #13442, #14188, #14288)
- Fix docking panel crash due to messing up config.xml. (Fix bug report
- Fix invalid styler.xml making Notepad++ crash issue. (Fix #12101)
- Fix tab-closing crash by middle mouse button (unexpected mouse position). (Fix #14328)
- Fix 2 performance issues in Style Configurator. (Fix #14321)
- Add 3 line operation (delete, copy & cut) shortcuts. (Fix #14296)
- Display extra info in the status bar of Find/Replace dialog to avoid PEBKAC. (Fix #14307)
- Fix "Hide lines" command hiding unselected lines issue. (Fix #14166)
- Fix silent installer mode when Notepad++ is running issue. (Fix #10189, #10277, #22514, #14236, fix partially #8514)
- Fix Updater's vulnerability (update cURL in WinGUp for fixing CVE-2023-38545). (Fix WinGUp issue #50)
- Fix incoherent behaviour of "Duplicate Current Line" menu command. (Fix #5298)
- Fix JSON5 not using JSON keywords. (Fix #14205)
- Fix empty message showing while cancelling session file saving dialog. (Fix #14235)
Notepad++ 8.5.8 change log
- Fix "Clear Read-Only Flag" command not working immediately regression. (Fix #14138)
- Fix saving files losing Alternate Data Stream issue. (Fix #1498, #8451, #8013)
- Fix data loss issue due to no room on disk for saving. (Fix #5664, #14089)
- Add Win10/Win11 Restart-application feature. (Fix #9722, #11721, #11934)
- Fix user created session being modified behaviour on exit. (Implement part 1, part 2, part 3)
- Improve document list display performance. (Fix #13479, #12632)
- Update Scintilla to v5.3.7 & Lexilla to v5.2.7. (Fix #13991, #14062)
- fix unwanted Afrikaans installer language issue. (Fix #3844, #7574)
- Fix a crash issue while reading settings from cloud. (Fix #14131)
- Fix security issue CVE-2022-31901. (Fix #13520)
- Enhance non-saved search text's persistence in Find dialog combobox while pressing arrow key. (Fix #14174)
- Make auto-checking of Find InSelection configurable (resizable & can be disabled). (Fix #14108, #13677, #12639)
- Perl enhancement: Update Stylers & the keywords for Perl v5.38. (Fix #14192)
- Fix "Single Line Uncomment" uncommenting an extra line issue. (Fix #12829)
- Fix "Next Bookmark" command not resetting current column issue. (Fix #14137)
- Allow menu command Window->Windows to be assigned a shortcut. (Fix #14179)
- Fix wrong categories in Shortcuts Mapper. (Fix #13285)
Notepad++ v8.5.7 bug-fixes and new features:
- Fix 4 security issues CVE-2023-40031, CVE-2023-40036, CVE-2023-40164 & CVE-2023-40166. (Fix #14073)
- Security enhancement: Sign uninstall.exe. (Fix #14099)
- Change the slogan in installer. (Fix #14052)
- Fix eventual memory leak while reading Utf8-16 files. (Fix #4120, #5806, #4443)
- Fix dragging tab performance issue while Document List is displayed. (Fix #13479, #12632)
- Add supperss 2GB file warning option for x64. (Fix #14055)
- Fix cloned document disassociated issue after Notepad++ being relaunched. (Fix #10266)
- Fix session file saving problem if it's read-only. (Fix #14024, #13894, #13859)
- Fix activating wrong file(s) issue after loading session file. (Fix #14006)
- Fix product version value displayed in file's properties. (Fix #14010, #11886, #11431)
Notepad++ v8.5.6 bug-fixes and new features:
- Fix plugin crash regression due to CET enhancement. (Fix regression due to CET)
- Add new API: indicator allocation for plugins. (Fix #5744)
- Fix hide lines merging to avoid merging across a visible line. (Fix #12844)
- Fix "Clear Change History" issue: cloned document markers are not cleared. (Fix #13877)
Notepad++ v8.5.5 bug-fixes and new features:
- Update to Scintilla 5.3.6 and Lexilla 5.2.6 (Implement #13940, fix #4741, #13901, #13943, #13911)
- Add change history navigation commands: Go to next/prev change & Clear change history. (Fix #12248)
- Fix Change History incorrect display after "Reload from Disk" command. (Fix #12319, #12261, #13735)
- Remember through sessions the directory of "Remember last used directory". (Fix #11326, #10901, #4961, #4119)
- Fix regression of double clicking on find result not going to the document. (Fix #13636)
- Fix regression of opening file rejection if file name contains dot at the end. (Fix #12849)
- Fix error message of opening file with '=' as end of file name. (Fix #13344)
- Fix menu Tools contains 2 SHA-256 item while using localization. (Fix #13797)
- Fix SHA-1 hash result wrong length bug while "Treat each line as a separate string" enabled. (Fix #13812)
- Add SHA-512 hash features (Fix #13805)
- Fix normal.xml for Normal text auto-completion not working issue. (Fix #12325)
- Fix Korean IME append file extension issue in save dialog. (Fix #11582, #12225, #12366)
- Make find/replace in files result more accurate while used RegExpr is invalid. (Fix #13164)
- Fix Project panel's inaccurate initialized path in save dialog. (Fix #13086)
- Fix wrong syntax highlighting of URLs with quotes in JSON. (Fix #13522)
- Fix Clipboard History panel shows corrupted data issue. (Fix #13817, #13844)
- Improve lines sorting memory consumption. (Fix #10435)
- Enhance "Add new document at startup": add new document only when the session is remembered. (Fix #13796)
- Enhance "Convert case to Proper Case" command: fix the error conversion after quote.
Notepad++ v8.5.4 bug-fixes and new features:
- Fix macro recording regression on Unicode character. (Fix #13757)
- Fix regression of defective detection for file read-only attribute removal via Explorer. (Fix #13742)
- Fix opening multi-files on multi-instance mode regression. (Fix #36, #13778)
- Update: Scintilla 5.3.5 Lexilla 5.2.5. (Implement #13729)
- Fix Notepad++ hanging issue running macro to EOF. (Fix #13342)
- Fix EOL symbol color/appearence being reset issue while changing encoding. (Fix #13728)
- Enable code folding in Assembly source files. (Fix #13758, #9888)
- Fix document language not remembered through sessions issue. (Fix #13743)
- Add SHA-1 hash features. (Fix #13791)
- Add "open new blank document in addition on startup" ability. (Fix #11134, #9535, #5527)
- Fix lexer plugin is sorted unconventionally in language menu issue (Fix #9516)
- Add message NPPM_DARKMODESUBCLASSANDTHEME to allow plugin to use generic dark mode. (Fix #13574)
- Add the ability to close multiple files without saving in Document list. (Fix #13768, #13178)
- Several GUI Enhancements. (Fix #13764, #10349, #8109, #13703, #13701, #13686, #13665, #13657, #13676, #13667, #13624, #13622)
- Fix error message on uninstallation. (Implement #13653)
- Fix tabContextMenu_example.xml not being deleted while uninstallation. (Fix #13670)
Notepad++ v8.5.3 bug-fixes and new features:
- Fix session file data loss issue. (Fix #13514)
- Fix Explorer context menu "Edit with Notepad++" needs restarting os to appear issue under Win 8⁄10. (Fix #13)
- Fix Explorer context menu "Edit with Notepad++" not installed for multiple users issue. (Fix #13476)
- Fix Explorer context menu "Edit with Notepad++" double entries in some applications (Winzip). (Fix #13499)
- Make Explorer context menu "Edit with Notepad++" translatable. (Fix #17)
- Add the UTF8 character ability for Run & Macro menu. (Fix #12670, #13221, #13488)
- Add hide/show ability of Control Characters (C0 & C1) and Unicode EOL. (Fix #8111)
- Fix Change history margin in black color issue. (Fix #12764, #13593)
- Improve "Remove consecutive duplicate lines" command performance. (Fix #5538, #12548)
- Project Workspace "Save a Copy As" confusion issue. (Fix #13135)
- Make "Remove consecutive duplicate lines" support more line break. (Fix #13474)
- Fix UDL deletion issue. (Fix #8101)
- Fix RTL not working on FindInFiles progress window. (Fix #13458)
- Fix search results output alignment for large file searches. (Fix #13481)
- Several GUI Enhancements. (Fix #13615, #13601, #12812, #13579, #13577, #13575, #13597, #13524, #13540, #13544, #13315)
Notepad++ 8.5.2 changelog:
- Enhance "Edit with Notepad++" context menu and fix several issues. (Fix #13399, #13410, #13425, #13438, #13440, #13446, #13457)
- Make Find/Replace dialog swap/copy button usage more explicit. (Fix #13368, #13021)
- Fix unexpected caret column jump post brace match. (Fix #13433)
- Add hits in-progress increased number to Search Progress dialog. (Fix #13364)
- Add HTML Hexadecimal column and more items to ASCII panel. (Fix #13347)
- Add ability to do leading spaces with Column Editor. (Fix #11148, #13309)
- Add programming language support for Hollywood. (Implement #13417)
- Fix dock panels visual glitch while finding in search results. (Fix #13402, #13459)
- Fix Mark dialog's Copy Marked Text button is not macro-able issue. (Fix #13405)
- Dark mode enhancement: make focused combobox more visible. (Fix #13420)
- Fix find dialog flicker issue. (Fix #9536, #13381)
- Enhance Notepad++ icon's display in system tray. (Fix #8971)
- Fix some options in Mark dialog not remembered though the session issue. (Fix #13277)
Notepad++ 8.5.1 changelog
- Use new modern shell "Edit with Notepad++" of Windows 11 instead of hijacking "Pin to Quick access".(Fix #13320, implement #13330)
- Update scintilla to 5.3.4 and lexilla to 5.2.4. (Implement #13338)
- Add MS Transact-SQL support. (Fix #5940, #7988, #11718, #12610, #13160)
- Add GDScript language support with autocomplete & functionlist. (Fix #13329)
- Fix UDL empty button regression after changing localization. (Fix #13228)
- Add ability to copy "Find what" to "Replace with" and vice versa in Find Replace dialog. (Fix #12122)
- Fix DocSwitcher RTL problem, and use edit field instead of a small popup value dialog. (Fix #13244, #13248)
- GUI visual enhancement: Fix whole dialog items blink when a item value changed. (Fix #13230)
- Make tray icon context menu translatable. (Fix #11628)
Notepad++ 8.5 changelog
In v8.5 release, new explorer context menu entry "Edit with Notepad++" is added for WINDOWS 11 (via installer). Also a regression of notepad replacement problem has been fixed, and there are more bug fixes and new added enhancements.
- Fix saving 4GB+ files file size cutting off issue. (Fix #12526)
- Fix v8.4.8 hanging while opening some Pascal files. (Fix #12822)
- Add JSON5 support, only JSONC currently (with js comment supported). (Fix #11676, #11713)
- Add configuration for panels to ignore '-nosession'. (Fix #9710)
- Fix Notepad Replacement display 'Cannot open file " "' regression in v8.4.8. (Fix #12775)
- Fix Notpad++ hangs while deleting search results results. (Fix #12555)
- Fix XML tag-matching not be case-sensitive. (Fix #10011)
- Add support selection for "EOL to Space" commands, "TAB and Space conversion" commands & trim operations.(Fix #12720, #12745, #12702, #12602, #12658)
- Improve Pascal/Delphi function list performance. (Fix #12693, #12687, #12808)
- Fix exclude functions in comment zones in C++, PHP, JavaScript and Pascal. (Fix #12759)
- Use stable sort algorithm instead of standard sort one. (Fix #12678)
- Fix doc switcher not using alternate icon sets. (Fix #12242)
- Enhance dark mode. (Fix #12713, #12737)
- Fix hand cursor on URL too small display under high DPI issue. (Fix #12772)
- Fix docking GUI regression for plugin in light mode. (Fix #12007)
- Fix cannot undo "Block Uncomment" & "Insert Date/Time" commands in one shot. (Fix #12830, #12831)
- Fix sub-menu folder display mess in non-western languages under Macro/Run menu. (Fix #12670)
If you find any regression or critical bug, please report here.
Notepad++ 8.4.9 changelog
- Update to Scintilla 5.3.2 and Lexilla 5.2.1. (implement #12624)
- Dark mode: Add "Follow Windows dark/light mode" feature, and toolbar, tabbar and theme choices are remembered for 2 modes separately. (Fix #9183, #9992, #10153, #10239, #10544, #11867, #10644)
- Fix inconsistencies at OS-forced Notepad++ v8.4.8 exit. (Fix #12541)
- Make tab context menu customizable. (Fix #12170)
- Make Macro & Run menu organizable with submenu by modifying shortcuts.xml. (Fix #5349, implement #12617)
- Fix crash on Win32 Namespace prefixed file name. (Fix #12453)
- Fix delimiter selection crash issue. (Fix #12384)
- Improve performance for the "Remove Empty Lines" command. (Fix #12462, implement #12544)
- Fix theme not working in cloud mode and portable mode issue. (Fix #6092, #10801, #12296)
- Fix autocomplete/calltip colors not applied when changing themes. (Fix #12514)
- Add dark autocompletion icons for dark themes. (Fix #12549)
- Fix search result not applying new theme. (Fix #12588)
- Fix sorting failure in zero-length column mode selection. (Fix #12299)
- Fix Default Language not working for the 1st empty file with empty session. (Fix #12586)
- Enhance "Go to settings" in Style Configurator. (Implement #12650, #12634)
- Fix themes' inconsistent behaviour. (Fix #12642, #12508)
- Fix incorrect plugin architecture reports partially. (Fix partially #12565)
- Enhance Properties file: add/improve the syntax folding/highlighting. (Implementation)
- Add vertical scroll bar on all combobox in Find Replace dialog. (Fix #12459)
- Function List: Add Pascal/Delphi & NppExec plugin's scripting, enhance SQL. (Fix #3664, #12517, implemnt #12625)
- Autocompletion: add PowerShell, fix some entries in PHP, update for Lua. (Fix #12492, implement #12641, #12657)
- Update CPP & PowerShell keywords. (Fix #11936, #5004)
- Fix the tab context menu reload command's state not synchronized. (Fix #12579)
Previous release notes
- A printing issue due to Change History feature has been fixed in 8.4.7 release.
- A long time issue "empty session" because of forced Windows update restart has been also fixed in this version.
- Large file restriction is configurable, and Column Editor settings are remembered through the sessions.
Previous release notes
- Add Change History markers for document saved/unsaved/undone modification. (Fix #12164, #12046)
- Add setting tab color ability. (Fix #2271)
- Update to Scintilla 5.3.0 and Lexilla 5.1.9 (Implement #12045)
- Fix "Never" button not showing on Updater dialog regression. (Implement 9c86a33)
- Fix a printing selection regression. (Fix #11826, #12033, #11638)
- Revamp tab context menu: make it less cluttered by adding sub-menu. (Fix #12147)
- Fix a security vulnerability. (Fix #12113)
- Add dark mode support to Choose Color dialog. (Fix #12148)
- Add a page (tab) for incompatible (unloaded) plugins in Plugin Admin. (Fix #12069)
- Add Plugin list repository link and its version in PluginAdmin dialog.
- Fix horizontal bar showing issue while resizing document list's height. (Fix #12191)
- Fix NPPN_DARKMODECHANGED wrong return value to plugins. (Fix #12144).
Note: Notepad++ 7.9.2 is the last version to run on Windows XP.