About

wxNote is a ground-up, cross-platform text editor built on wxWidgets and wxStyledTextCtrl (Scintilla/Lexilla). It runs natively on Windows, Linux, macOS, and FreeBSD — on x64 and ARM alike — from one codebase, with its own plugin API, theming, User-Defined Languages, settings in plain YAML, and full UI localization.

The project is licensed Apache-2.0, after starting on GPL v3 and relicensing once every Notepad++-derived file had been replaced and the plugin-ABI reproduction fully isolated into one optional module - purely to give users and downstream developers more freedom, with no commercial agenda behind it. That optional module (the Notepad++ plugin bridge) keeps its own GPL license, since it reproduces Notepad++'s ABI for interoperability.

Why wxNote

  • Cross-platform

    One codebase, native builds for Windows, Linux, macOS, and FreeBSD - not a wrapper around a single platform's APIs.

  • Plugin-compatible

    An original, permissive "Nib" plugin API, plus an optional bridge that loads real compiled Notepad++ plugin DLLs on Windows.

  • Fully localized

    The entire UI - not just top-level menus - is translated into 8 languages, with more welcome via contribution.

  • Familiar, yet original

    Scintilla-powered editing you already know, inside a menu layout designed from scratch - not copied from any single editor.

By the numbers

  • 4

    Platforms - native on Windows, Linux, macOS, and FreeBSD; x64, ARM64 and 32-bit x86

  • 17

    Packages per release - every format, every CPU architecture

  • 8

    Languages - the whole UI is localized, not just the menus

  • 11

    Top-level menus, laid out from scratch - not a copy of any one editor

  • 98

    Programming languages with full keyword lists, for highlighting and autocomplete

  • Apache-2.0

    Free, open source, and permissively licensed

Built with

Features

Editing & navigation

  1. Quick Open & Command Palette

    Ctrl+Shift+O & Ctrl+Shift+P

    Type a few letters to jump to any file in the workspace, or any command in the app. Both are fuzzy-matched, so initials are enough. Type @ in Quick Open to jump to a symbol in the current file instead.

  2. Regular expressions that cross lines

    PCRE2

    Search and replace with patterns that span line breaks — join wrapped lines with \n\s+, delete a whole block between two markers in one go. Lookbehind, named groups and \U/\L case conversion in replacements, the same in Find, Replace, Mark, Count and Find in Files. A bad pattern tells you what is wrong with it.

  3. Snippets with tab stops

    Tab, or Ctrl+Shift+J

    Type a name, press Tab, and fill in the blanks — Tab moves between them. Write the loop variable once and every copy follows as you type. Bring your own in snippets.yaml.

  4. Language-aware commenting

    Ctrl+/

    Comment and uncomment using the characters the language actually uses - # in Python, -- in SQL, ; in an INI file, <!-- --> in HTML - across all 112 built-in languages. Formats with no comment syntax, like JSON, are left alone and say so rather than being quietly broken. Your own tokens for any language go in languages.yaml.

  5. Multi-cursor editing & smart selection

    Selection menu

    Select all occurrences, add or skip the next match, and a dedicated character panel - split out of Edit into its own menu.

  6. User-Defined Languages

    Document menu

    Define syntax highlighting for a language Scintilla doesn't ship out of the box, with full container-lexer styling and state recovery.

  7. Macros & automation

    Automation menu

    Record and replay editing macros, run external tools, and generate MD5/SHA hashes from the current selection or a file.

  8. Configurable shortcuts

    Settings menu

    Rebind any menu or editor command in the Shortcut Mapper, switch between shortcut schemes - or import your Notepad++ shortcuts.xml as one - all stored in a portable keybindings.yaml.

  9. Print & print preview

    File menu

    A themed, live print preview with customizable header and footer macros, backed by Scintilla's own formatted-range printing.

Languages & settings

  1. Keyword lists for 98 languages

    Highlighting & autocomplete

    Pascal, Fortran, Ada, VHDL, COBOL, the SQL dialects and dozens more colour their keywords, types and built-in functions - from SciTE's lists, written for the very same lexers, and from the languages' own projects where SciTE has none. Autocomplete offers the same words.

  2. Opens as the right language

    Name & first line

    Some 340 extensions and file names such as Makefile or Dockerfile, then the first line - a shebang, an XML prolog, an HTML doctype - when the name says nothing. Map extensions of your own in the Style Configurator, as in Notepad++.

  3. Your own language definitions

    languages.yaml

    Change a language's extensions, comment characters and keyword lists - add a few words or replace a whole list - in one file that holds only your changes, so a newer wxNote's own additions still reach you. The Style Configurator's Keywords box edits it for you.

  4. Settings you can read

    settings.yaml

    Every preference is one line of plain YAML in your user folder - only what you changed, with your own comments kept - and key bindings, themes, snippets, sessions and workspaces are YAML too. Nothing goes to the registry.

  5. A right-click menu of your own

    contextmenu.yaml

    Add, remove and rename the editor's context-menu commands, group them into submenus and include plugin commands - or bring Notepad++'s contextMenu.xml across as it is.

Platform & compatibility

  1. Native on four platforms

    Windows · Linux · macOS · FreeBSD

    One codebase, built on wxWidgets and Scintilla/Lexilla, packaged as an NSIS installer, an AppImage/.deb/.rpm/Flatpak, a .dmg, and a FreeBSD .pkg.

  2. Nib plugin API

    Extensions menu

    wxNote's own original, permissive, cross-platform plugin API for native extensions - no Notepad++ ABI required.

  3. Notepad++ plugin compatibility

    Windows only

    An optional GPL bridge loads real, compiled Notepad++-ABI plugin DLLs by reproducing the NPPM_* wire protocol.

  4. File-format compatible

    Import & export

    Brings a Notepad++ setup across: its settings, shortcuts, themes, context menu, language definitions, sessions and user-defined languages.

Comparison

Already use Notepad++? wxNote will feel like home. It keeps the same fast, no-nonsense editing and a familiar layout - the real difference is where it runs and how it's licensed. Here's the short, plain-English version.

wxNote Notepad++
Runs on Windows, macOS, Linux & FreeBSD Windows only
Apple Silicon & ARM Yes, native ARM Windows only
Price Free Free
Open source Yes - permissive (Apache-2.0) Yes - GPL
Familiar menus & shortcuts Yes Yes
Dark mode & themes Yes Yes
Syntax highlighting Yes Yes
Define your own language Yes Yes
Settings Plain YAML - only what you changed, your comments kept XML files
Plugins Its own, plus Notepad++ plugins on Windows Notepad++ plugins
Built-in terminal Yes Add-on
Interface languages 8, and growing Many

The short version: if you love Notepad++, you lose nothing by trying wxNote - and you gain your Mac and Linux machines, a more permissive open-source licence, and a fresh plugin system that can still load your existing Windows plugins. An optional import brings your Notepad++ settings, shortcuts, themes and right-click menu along. wxNote is the younger project, so its plugin library is smaller today, but it's growing. Grab it from the Download tab.

Screenshots

  • Several tabs open at once - a C++, a Python, and a JSON file, each with correct syntax highlighting

    Multi-document editing

    Editing

  • The light theme, editing a C++ file

    Light theme

    Themes

  • The Tabler toolbar icon pack, the theme-adaptive default of four selectable icon styles

    Tabler icon pack

    Themes

  • The Solar toolbar icon pack, one of four selectable icon styles

    Solar icon pack

    Themes

  • The IconPark toolbar icon pack, one of four selectable icon styles

    IconPark icon pack

    Themes

  • The Streamline toolbar icon pack, one of four selectable icon styles

    Streamline icon pack

    Themes

  • The toolbar at 32px icon size, the largest of four selectable sizes

    Large toolbar icons

    Themes

  • The Find and Replace dialog, with its Match whole word, Match case, and regular-expression options

    Find & Replace

    Editing

  • The Folder as Workspace panel, showing this project's own src/ directory tree

    Folder as Workspace

    Panels

  • The Document Map panel, a zoomed-out overview of the whole file

    Document Map

    Panels

  • The integrated terminal panel, with shell tabs

    Integrated Terminal

    Panels

  • The Preferences dialog's General page, with the localization, toolbar icon style, and theme options

    Preferences

    Panels

  • wxNote running natively on Windows

    Native on Windows

    Platforms

  • wxNote running natively on macOS

    Native on macOS

    Platforms

  • wxNote running natively on Linux

    Native on Linux

    Platforms

Download

Latest release

Loading…

Release notes

Prefer to build it yourself? See the build instructions in the README.