Skip to content

TXTeditor 0.4.7

Choose a tag to compare

@yinyin333333 yinyin333333 released this 17 Jul 03:06
· 79 commits to main since this release
e3bdaa3

TXTeditor 0.4.7

TXTeditor 0.4.7 adds dedicated JSON editing and localization diagnostics, few things fix or expands based binary-verified D2R linting and bundled reference data, and improves Find, clipboard, grid, freeze, startup, and Vector-LSP workflows.

image image

What's Changed

JSON Editing and Localization Diagnostics

  • Added dedicated CodeMirror-based tabs for opening and editing .json documents, integrated with TXTeditor's normal open, save, close, and document-switching workflows.
  • Added Vector-LSP diagnostics for localization JSON files under data/local/lng/strings.
  • Added checks for duplicate localization IDs and keys, invalid localization string-entry formats, and localization-key usage.
  • Malformed JSON now publishes a precise Json/Syntax diagnostic to the Problems panel instead of leaving the parse error visible only in the LSP log. (#56)
  • Existing localization diagnostics no longer disappear while a JSON document is temporarily invalid. The current syntax error is shown alongside the last valid semantic results, and the semantic rules are recalculated after the syntax is repaired.
  • Cross-file duplicate diagnostics remain stable when another JSON file in the same localization scope is temporarily invalid.
  • Improved version and latest-result handling for open JSON buffers, externally modified files, and repeated invalid → valid → invalid edits.
  • Added runtime coverage for JSON document opening, watched-file changes, syntax-error recovery, diagnostic replacement, and document deletion or restoration.

Linting, Plugins, and Reference Data

  • Reworked selected lint rules to match binary-verified game behavior more closely.
  • Added bundled, versioned d2rdoc reference txt data for Diablo II 1.13 and Diablo II: Resurrected 2.4, 3.1, and 3.2.
  • Added automatic fallback to bundled reference data when complete workspace reference files are unavailable.
  • Expanded diagnostics for calculation expressions, CubeMain inputs and outputs, item codes, property codes, and Treasure Class item references.
  • Improved reference-source selection so diagnostics use the most appropriate data for the configured game version.
  • Hardened Vector-LSP plugin discovery and deduplication so the same plugin is not loaded more than once from overlapping discovery paths.
  • Improved plugin-host resilience and regression coverage around plugin loading and execution failures.
  • Added manifest and release-asset synchronization checks for bundled reference data and plugins.
  • Clarified the supported SkillCalc parameter aliases in the Vector-LSP documentation.

Find and Navigation

  • The Find dialog can now be dragged to a different position. (#46)
  • The Find dialog position is retained for the rest of the current application session.
  • Opening or restarting Find now begins from the active grid cell instead of continuing from an unrelated previous position. (#47)
  • Added backward search through the new Find Previous command. (#49)

Editing and Clipboard

  • Pasting a single copied cell into a multi-cell selection now fills every selected cell with that value. (#45)
  • Desktop builds now use native clipboard access for paste operations, improving compatibility with clipboard content supplied by other applications. (#52)

Grid and Interface

  • Added a setting to lock mouse-based row-height and column-width resizing while leaving other grid interactions available. (#48)
  • Freeze Row and Freeze Column states are now persisted and restored instead of being lost when document state is restored. (#51)
  • Refined the active styling of Freeze Row and Freeze Column with lower-saturation, theme-specific blue-gray colors while preserving clear active, hover, disabled, and focus states. (#57)
  • Improved selected-range rendering so the separators between individual cells remain clearly visible instead of being washed out by the selection background.
  • Selected-cell separators are redrawn consistently across normal and frozen grid regions, including ranges containing diagnostic markers.
  • Swapped the toolbar positions of Shortcuts and Settings for a more natural command order. (#50)
  • When Freeze Row and Freeze Column were active, they felt a bit too distracting. Therefore, I adjusted the color saturation so that it is still clear they are active, but no longer sore to the eyes. (#57)

Desktop Startup and Vector-LSP Reliability

  • Files passed to TXTeditor through command-line or desktop launch arguments are now opened automatically during startup. (#53)
  • Fixed a Vector-LSP close-and-reopen ordering race that could allow stale document lifecycle operations to affect a newly reopened document.
  • Improved regression coverage for rapid document close/reopen sequences, JSON diagnostic versioning, watched-file updates, plugin resilience, and bundled release assets.

Full Changelog: TXTeditor PR #44 and vector-lsp PR #5