github nextpad-plus-plus/nextpad-plus-plus-macos v1.0.2
Notepad++ v1.0.2 for macOS

latest releases: pre-liquid-glass, v1.0.7, v1.0.6...
one month ago

Second patch release of the macOS port. Universal binary (arm64 + x86_64), signed by Developer ID: Andrey Letov (S5972U9P85), notarized by Apple and stapled.

What's new since v1.0.1

Plugin API — new NPPM messages

Plugins can now detect the current buffer's language via the Windows-standard APIs:

  • NPPM_GETCURRENTLANGTYPE — returns canonical Windows NPP LangType integer values. Maps ~80 host language names to the enum defined at Notepad_plus_msgs.h line 27. Unblocks DoxyIt, CommentToggler, nppQuickText, nppAutoDetectIndent, and several other ported plugins that previously got 0 back and silently failed.
  • NPPM_GETLANGUAGENAME — reverse lookup, returns the canonical display name string for a given LangType.

Plugin API — macOS-only extension

  • NPPM_SETPLUGINSUBSCRIPTIONS (NPPMSG+500) — per-plugin opt-out for SCN_UPDATEUI / SCN_PAINTED forwarding. Lets plugins coexist with host-level features. ComparePlus uses this to defer compare-mode scroll synchronization to the host's built-in 60Hz timer instead of running its own Windows-style event-driven sync.

Plugin notification forwarding

  • SCN_UPDATEUI and SCN_PAINTED are now forwarded to plugins by default. The previous exclusion was a defensive measure against a Core Animation ping-pong loop that no longer exists — the host's scroll sync uses timer polling, not notification-driven sync. Unlocks a dozen plugin features that depend on UI-update notifications (DoxyIt active commenting, indentbyfold fold-level indent, SurroundSelection, npp-XBracketsLite, nppQuickText snippet hot-spots, SelectToClipboard, and more).

Bug fix — spurious MIME Tools checkmark

Plugins that accidentally called NPPM_SETMENUITEMCHECK with a separator slot's _cmdID (which is always 0 because the host doesn't allocate IDs to separators) were silently poisoning static submenu items via findMenuItemWithTag:0. The default NSMenuItem.tag is also 0, so every static submenu wrapper (MIME Tools, Converter, etc.) was an implicit match. Fixed with:

  • Early reject of cmdID == 0 in the NPPM_SETMENUITEMCHECK handler, with a console warning so plugin authors can find their bug.
  • findMenuItemWithTag: treats tag == 0 as a sentinel "never match" value regardless of caller.

Companion plugin releases

Update your plugins via Plugin Admin to get the corresponding fixes:

  • DoxyIt v1.0.0 (new) — Doxygen comment generator with Tab-through jump markers
  • indentbyfold v1.0.1 — per-language indent paths now actually work
  • SelectToClipboard v1.0.0 (new) — auto-copy-on-select with preserved blank lines
  • ComparePlus v1.0.1 — no more MIME Tools checkmark
  • NPP_ExportPlugin v1.0.0 — unchanged, already shipping

Install

Download Notepad++v1.0.2.dmg, open it, drag Notepad++.app into Applications. First launch works without the Gatekeeper prompt because the DMG is notarized and stapled.

System requirements

  • macOS 11.0 (Big Sur) or later
  • Apple Silicon or Intel Mac (universal binary)

Don't miss a new nextpad-plus-plus-macos release

NewReleases is sending notifications on new releases.