github zufuliu/notepad4 v26.01r5986

12 hours ago

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-default extension (copy to .ini on 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 \xHH as octet in current code page instead of UTF-16 code point, this consistent with built-in regex engine. \uHHHH is 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.ini or matepath.ini). d5096b8
    • For WinGet or Chocolatey installation (actually when program is found on path with WinGet or Chocolatey in the name), only %LOCALAPPDATA%\Notepad4 folder will be checked with hard-code INI file (Notepad4.ini or matepath.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.ini or matepath.ini is no longer searched. system command mklink (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.
  • 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 path that 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

Don't miss a new notepad4 release

NewReleases is sending notifications on new releases.