Update the README and CHANGELOG to describe newly documented language-server behaviors and editor UX details. - Read BLOCK_TEMPLATE and ADDRESS names from .def files listed under <DefinedEvents> in PSC layers and refresh on PSC/DEF changes; completion suggestions for MOM_do_template, MOM_ask_address_value, MOM_force, and MOM_suppress - Insert quoted block templates/addresses and Always|Once|Off modes (replace auto-closed/typed quotes instead of doubling) and insert variables with a leading `$` - Add BLOCK_LIST and ADDR_LIST completion keywords to list all loaded block templates or addresses - Document formatting/linting of uplevel bodies as Tcl and normalization of comment spacing (#Comment → # Comment) while preserving ##, #!, and already spaced comments - Note that the Python debug bootstrap now stops with a clear error instead of hanging when no debugpy listener or only a stale one is available These changes are reflected under "Unreleased" in the changelog and in the README section about DEF block templates and addresses.
65 lines
4.0 KiB
Markdown
65 lines
4.0 KiB
Markdown
## Unreleased
|
|
|
|
- Read `BLOCK_TEMPLATE` and `ADDRESS` names from the `.def` files listed under `<DefinedEvents>` in PSC layers and refresh them when PSC or DEF files change
|
|
- Suggest block templates for `MOM_do_template` and addresses for `MOM_ask_address_value`, `MOM_force`, and `MOM_suppress`, each followed by variables
|
|
- Suggest `Always`, `Once`, and `Off` for the first argument of `MOM_force` and `MOM_suppress`
|
|
- Insert block templates, addresses, and modes in quotes without doubling typed or auto-closed quotes; insert variables with a leading `$`
|
|
- Add `BLOCK_LIST` and `ADDR_LIST` completion keywords that list all loaded block templates or addresses
|
|
- Format and lint `uplevel` bodies as Tcl scripts
|
|
- Format comments with a space after `#` (`#Comment` becomes `# Comment`); `##` separators, `#!`, and already spaced comments stay unchanged
|
|
- Stop the Python debug bootstrap with a clear error instead of hanging when no debugpy listener or only a stale one is available
|
|
- Reparse only the top-level TCL commands touched by an edit instead of the whole file
|
|
- Cache the workspace index in the extension storage so restarts skip reparsing unchanged files; the cache is discarded automatically when the server or bundled tclint changes
|
|
- Speed up TclOO completion, signature help, inlay hints, and Go to Definition by reusing the cached syntax tree and skipping files without classes
|
|
- Speed up references, document highlights, and call hierarchy with cached definition lookups
|
|
- Keep background indexing from blocking requests that need a fresh syntax tree
|
|
- Add Go to Definition for TclOO classes, constructors, and resolved methods, including PSC library definitions
|
|
- Index PSC layer scripts (including external paths and legacy Windows encoding) and share TclOO class metadata across files for completion, signatures, inlay hints, and highlighting
|
|
- Add document-local TclOO method completion for `new`/`create` instances, `my`, and statically inferred return chains
|
|
- Suggest TclOO class names as classes and semantically highlight their declarations and calls
|
|
- Show signature help and parameter inlay hints for resolved TclOO methods and constructors, including optional and variadic arguments
|
|
- Add incoming and outgoing call hierarchy for custom TCL procedures and MOM event handlers
|
|
- Add document highlights for procedure and variable occurrences
|
|
- Make completion context-aware and prioritize local, current-file, workspace, and built-in symbols
|
|
- Add command-aware completion for Tcl subcommands, fixed arguments, and valid options
|
|
- Add semantic argument completion for variables, procedures, namespaces, and local file paths
|
|
- Add placeholder-based snippets for common Tcl structures and `dict for`
|
|
- Integrate the NX Tcl Remote Debugger directly into NX Postprocessor Support
|
|
- Add `nx-tcl` attach configurations and breakpoint support for TCL and DEF files
|
|
- Support breakpoints, stepping, stack frames, variables, watches, evaluation, logpoints, hit conditions, and Tcl error stops
|
|
- Add generation-safe stack and variable references so delayed VS Code requests cannot address stale NX frames
|
|
- Add command-buffer breakpoint handling for `LIB_GE_command_buffer_edit_*` source bodies
|
|
- Extend the README with launch configuration, path mapping, and debugger usage
|
|
- Prevent truncated TCL inlay hints and add configurable parameter hint modes
|
|
- Add inlay hints for built-in NX procedures, variadic arguments, and visible ranges
|
|
- Add inlay hint documentation and navigation to custom procedure definitions
|
|
- Add signature help for custom TCL procedures and built-in NX/MOM procedures
|
|
- Clean stale TCL indexes on close, delete, and rename operations
|
|
- Make background parsing and index updates thread-safe
|
|
- Improve TCL response times with debounced edits and cached semantic, inlay, hover, completion, and variable indexes
|
|
- Debounce CDL/DEF diagnostics and remove per-line diagnostic logging
|
|
|
|
## [0.0.1]
|
|
|
|
- Initial release
|
|
|
|
## [0.0.2]
|
|
|
|
- Add Autocomp for TYPE
|
|
|
|
## [0.1.0]
|
|
|
|
- Add Hover Feature
|
|
|
|
## [0.2.0]
|
|
|
|
- Add DEF File Support
|
|
|
|
## [2026.6.100]
|
|
|
|
- Fix several bugs
|
|
|
|
## [2026.6.200]
|
|
|
|
- Fix foramtting bug
|