Note
v25.07r5738 and later no longer supports Windows XP, Windows Server 2003 (see issue #974) and Windows 8/8.1 on ARM32 (Windows RT) (see issue #1023), use v25.06r5696 instead.
Changes Since v25.11r5880
- Support regex replace with JavaScript notation
$n,$&and$$(see table below), issue #1019. f5397a2 - Auto show menu on press Alt key when menu is hide, issue #1047. 7d3eace
- Add Unicode control character U+00AD (
SHY, Soft hyphen), issue #1127. 42f9f27 - Use
%LOCALAPPDATA%\Notepad4(e.g.C:\Users\<username>\AppData\Local\Notepad4) folder to store INI file for WinGet or Chocolatey installation to prevent INI overwriting on upgrading, contributed by @lostindark in PR #1069. 7284f17 - Lexer and API updates: CSS (aadc304), HTML (7586fd9), Lua (db39bde), Perl (13ad8c2), PHP (9ce6924).
- Fix automatic word wrap incorrectly breaks inside non-CJK word, issue #1130. bc06597
- Fix dialog layout after dialog been moved to monitor with different scaling settings, issue #1047. 35a71fb
- Fix GDI rendering bug for font with inaccurate
tmAveCharWidth, issue #1118. f55b64b - Fix long standing bug that local INI file got accidentally overwritten when upgrade to new version by change INI file in zip to use
.ini-defaultextension (copy to.inion first run), issue #1142 d5096b8 - Other bug fixes and improvements.
Behavior Changes
- Some characters got special meaning on regex replacing and needs escaping, see following table:
| Characters | Remarks |
|---|---|
$n
| ⚡New in v26.01, refer to a region on replacing (same as \n, where n is 0 - 9), $0 is whole matched text.
|
$&
| ⚡New in v26.01, same as \0 or $0, refer to whole matched text.
|
$$
| ⚡New in v26.01, literal dollar character, U+0024. |
\0 - \9
| Refer to a region on finding or replacing. \0 is whole matched text, can only be used for replacing.
|
\\
| Literal backslash character, U+005C. |
\a
| Alert (BEL, U+0007) |
\b
| Backspace (BS, U+0008) |
\e
| ⚡New in v26.01 (7ac16cb), Escape (ESC, U+001B) |
\f
| Formfeed (FF, U+000C) |
\n
| Newline (LF, U+000A) |
\r
| Carriage return (CR, U+000D) |
\t
| Horizonal Tab (HT, U+0009) |
\v
| Vertical Tab (VT, U+000B) |
- Transform backslash now treats
\xHHas octet in current code page instead of UTF-16 code point, this consistent with built-in regex engine.\uHHHHis still treated as UTF-16 code point (for Basic Multilingual Plane only). dcd4d30 - Program INI file searching was changed:
- For portable package, only exe folder will be checked with hard-code INI file (
Notepad4.iniormatepath.ini). d5096b8 - For WinGet or Chocolatey installation (actually when program is found on path with
WinGetorChocolateyin the name), only%LOCALAPPDATA%\Notepad4folder will be checked with hard-code INI file (Notepad4.iniormatepath.ini). d5096b8 - Dark mode theme INI file is only checked in same folder as main INI file with hard-coded name
Notepad4 DarkTheme.ini. dcc3758 - Folder
%APPDATA%\Notepad4(e.g.C:\Users\<username>\AppData\Roaming\Notepad4) and%USERPROFILE%\Notepad4(e.g.C:\Users\<username>\Notepad4) are no longer searched. cce404b - INI file with same name as program exe but different than
Notepad4.iniormatepath.iniis no longer searched. system commandmklink(see https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/mklink) can be used to make symbolic link for program exe and/or INI files.
- For portable package, only exe folder will be checked with hard-code INI file (
- Searching for custom toolbar image was changed, when the specified path (after expanding environment variables) is relative, it's only treated as relative to program INI file, no longer treated as relative to program exe file. 8dce3f4
Breaking Changes
- Support for INI redirection was removed. system command
mklink(see https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/mklink) can be used to make symbolic link for INI file, issue #1141. 4286b2c - Command line option
/f paththat used to specify program INI file path was removed, issue #1141. ab5a116 - Dialog size is changed to save in dialog unit instead of screen pixel to ensure same layout when open and close dialog on monitor with different scaling settings, issue #1047, 1b781ca. You can clear window position history to fix larger dialogs when using new program with existing INI file:
- Notepad4: click menu "Settings -> Window Options -> Clear Position history".
- matepath: right-click then open "Options..." dialog, click "Clear window position history" on "General" tab.
File List
| Localization | Language | Architecture | Minimum System |
|---|---|---|---|
| de | Deutsch | ARM64 | 🟢Windows 10 on ARM |
| en | English | AVX512🧪 | 🟢64-bit Windows 10, Server 2019 |
| fr | French | AVX2 | 🟢64-bit Windows 7, Server 2008 R2 |
| it | Italiano | x64 | 🟡legacy 64-bit Windows Vista, Server 2008 |
| ja | 日本語 | Win32 | 🟠legacy Windows Vista, Server 2008 |
| ko | 한국어 | ||
| ru | Русский | HD | HiDPI, High Definition |
| zh-Hans | 中文 (简体) | ||
| zh-Hant | 中文 (繁體) | Chocolatey | choco install notepad4
|
| i18n | all above languages | winget | winget install -e "Notepad4"
|
| 한국어 | https://teus.me/Notepad4 | winget | winget install zufuliu.notepad4
|
Latest development builds (artifacts in Release configuration for each compiler and platform) are available at https://github.com/zufuliu/notepad4/actions and https://ci.appveyor.com/project/zufuliu/notepad4.
FindInFiles (see issue #259) is a simple GUI for ripgrep, latest builds are available at https://github.com/zufuliu/FindInFiles/actions.
| File | System Requirement |
|---|---|
| FindInFiles-net4.8 | .NET Framework 4.8 prior Windows 10 |
| FindInFiles-net9.0 | .NET Desktop Runtime 9.0 |
| FindInFiles-net8.0 | .NET Desktop Runtime 8.0 |