Repository navigation
Releases: JDeffner/px-toolkit-notepadpp
Release list
Paradox Modding Toolkit for Notepad++ v0.2.2
Paradox Modding Toolkit for Notepad++ 0.2.2
This version includes the changes from the unreleased 0.2.1 build.
This release updates the Notepad++ plugin to 0.2.2 and bundles px-lsp 0.3.8 with a Windows Node runtime. These are separate version numbers; 0.2.2 is not the version of the main PX Toolkit or its language server.
The bundled LSP comes from the PX Toolkit 0.5.5 prerelease. It updates CK3 references for Crozier and improves symbol resolution, live-document indexing, completion, semantic colors and localization edits. This does not add the main toolkit's VS Code-only tools to Notepad++. Automatic LSP updates remain restricted to newer stable releases.
Download
Choose the ZIP matching your Notepad++ architecture:
| Notepad++ | Download |
|---|---|
| 64-bit x64 | PxToolkit-NotepadPlusPlus-0.2.2-win-x64.zip |
| 32-bit x86 | PxToolkit-NotepadPlusPlus-0.2.2-win-x86.zip |
| ARM64 | PxToolkit-NotepadPlusPlus-0.2.2-win-arm64.zip |
Use these complete plugin packages. The main toolkit's px-lsp ZIP contains only the language server, and GitHub's Source code downloads require building the plugin. No separate Node installation is needed.
Save your files and close Notepad++, then extract the entire PxToolkit folder into its plugins folder and reopen the editor. The DLL should be at plugins/PxToolkit/PxToolkit.dll, with px-lsp beside it. Existing settings are retained.
Settings
Options uses full game names, folder browse buttons, and explanations for game data, script documentation, completion, and hover settings. The localization dropdown includes the server's standard languages and an Other (custom language) option for custom keys, with a filename and header preview. Existing settings remain valid.
The game data folder must point to the game's game subfolder. Empty disables vanilla file indexing; no game installation is detected automatically. An empty script docs folder uses bundled documentation for the selected game.
Reliability fixes
- Declare versioned workspace edits and file creation so LSP 0.3.8 can offer localization fixes and rename symbols in unsaved buffers. The native regression verifies that unrelated unsaved text survives rename.
- Folding uses Notepad++'s folding margin and preserves the change-history gutter, fixing orange lines after edits.
- Unchanged semantic tokens retain their colors during edits and undo while a new server response is pending.
- Valid JSON-RPC array parameters no longer cause false language-server errors from
paradox/indexChanged. - Completion checks its document, revision, caret, request, and server session before display and insertion. Checked server edit ranges cannot consume text between an old response and a new caret position.
- Indexed UTF-16 position conversion removes repeated document-prefix scans for large semantic responses.
- Pipe writes run off the editor thread through a bounded queue. Shutdown cancels blocked I/O and stops the server process tree.
- Restart resends tracked buffers for the active mod, including inactive tabs with unsaved edits. Switching mods keeps their server sessions separate.
- Message validation contains malformed envelopes and payload errors. Pending requests fail when a session ends.
- Framing rejects invalid lengths and enforces message and queue limits.
Platforms and installation
Windows packages cover x86, x64, and ARM64 Notepad++. Choose the package matching the editor's architecture. Each includes px-lsp 0.3.8 and a Windows Node runtime. Wine support on Linux and macOS is experimental and untested; the wiki documents its setup requirements.
The x86 launcher uses a 1 GiB JavaScript heap limit. Applying the 4 GiB limit used by the other architectures caused 32-bit Node to fail before server initialization. Use x64 or ARM64 for large indexes.
Automatic LSP updates accept only server archives matching the plugin architecture. When upstream has no matching archive, the bundled server remains available. Under Wine, managed updates require working Windows PowerShell; manual plugin packages provide the update route when it is unavailable.
Plugin DLL updates require a plugin package; LSP updates alone do not install these fixes. A GitHub release does not add the plugin to Plugins Admin.
Documentation and maintenance
The README and wiki cover installation, settings, editor tools, updates, and troubleshooting. Contribution, support, security, and conduct policies are included with issue and pull request templates. The project uses GPL-3.0-or-later, the same license as PX Toolkit.
I do not plan to develop this Notepad++ version much further. My main focus is PX Toolkit for VS Code, and I do not use Notepad++ myself. I may fix reported issues when time permits, but regular feature updates and response times are not guaranteed. Community contributions and a new maintainer are welcome.
See integration validation for the recorded checks and their limits. Build coverage is separate from testing in a live editor; no Linux or macOS Wine run is claimed.
v0.2.0
Paradox Modding Toolkit for Notepad++ 0.2.0
Adds docked Problems, Outline, References, Symbols and Changes tabs; cross-file rename with before/after previews; localization quick fixes; code folding; signature help; and semantic highlighting. Native Options lets users choose their game, data paths, feature switches and LSP update behavior.
Fixes Windows mod-path handling that prevented some mod-specific diagnostics and quick fixes. Document revisions guard delayed responses, and edit previews refuse changed or read-only targets. Existing-file edits remain unsaved and can be undone separately in each file.
Includes px-lsp 0.3.4 and Node. Automatic LSP updates are enabled by default and take effect on the next server restart. Plugin DLL updates require installing a plugin release and restarting Notepad++.
Tested with Notepad++ 8.9.8 x64 on Windows 10, using the real LSP in light and dark modes. Unit tests and updater tests also pass.
Close Notepad++, extract the whole PxToolkit folder from the zip into its plugins folder, then reopen it. Existing user settings are retained.
v0.1.1
Paradox Modding Toolkit for Notepad++ 0.1.1
Adds the syntax highlighting missing from 0.1.0. Paradox script, GUI and localization files inside a mod now have colors for comments, strings, numbers, keys, operators, boolean literals and variables. Highlighting starts immediately and works without the language server, with colors for light and dark backgrounds.
Extract the whole PxToolkit folder from the zip into your Notepad++ plugins folder while Notepad++ is closed. Then reopen Notepad++.
The zip includes px-lsp 0.3.3 and Node. Automatic LSP updates remain enabled. This highlighting fix is in the plugin DLL, so it requires installing this plugin release.
Requires 64-bit Notepad++ 8.x on Windows 10 or later.
v0.1.0
Paradox Modding Toolkit for Notepad++ 0.1.0
Language support for CK3, Victoria 3 and EU5 mod files: diagnostics, completion, hover, go to definition, formatting, scope lookup and snippets.
The zip includes px-lsp 0.3.3 and Node. Extract the whole PxToolkit folder into your Notepad++ plugins folder, then restart Notepad++.
The plugin checks for stable LSP updates in the background when it first starts the server, at most once a day. Downloads are checked against GitHub's SHA-256 digest and tested before activation. An update applies on the next Notepad++ launch or Restart server. Failed downloads leave the current server available. A custom serverCommand disables this automatic update path.
Requires 64-bit Notepad++ 8.x on Windows 10 or later.