feat: add multi-engine regex flavour support
This commit is contained in:
@@ -18,14 +18,22 @@ budget. Consumers must inspect the preview status rather than treating a
|
||||
preview as complete. In particular, list export is disabled if its template
|
||||
would consume an incomplete value.
|
||||
|
||||
Repeated ECMAScript, PCRE2, Python and Java captures expose only the final
|
||||
retained capture. The UI labels this limitation and does not invent history.
|
||||
Later .NET support may add actual engine capture-history nodes without
|
||||
degrading them to this model.
|
||||
Repeated captures expose only the final retained value in all twelve v0.4.0
|
||||
profiles. This includes .NET even though its native API can retain capture
|
||||
history: the current adapter deliberately normalizes only the final record and
|
||||
reports `captureHistory: false`. The UI labels the limitation and does not
|
||||
invent or silently discard advertised history.
|
||||
|
||||
The syntactic hierarchy remains useful even if actual spans overlap or fall
|
||||
outside a parent's geometry; native and normalized ranges are preserved rather
|
||||
than “fixed”. ECMAScript and Java native offsets are UTF-16 code units, PCRE2
|
||||
native offsets are UTF-8 bytes and Python native offsets are Unicode code
|
||||
points. All editor ranges are normalized to UTF-16 without discarding the
|
||||
native unit.
|
||||
The partial syntactic hierarchy remains useful when the active provider found
|
||||
capture relationships, even if actual spans overlap or fall outside a parent's
|
||||
geometry. For C++ alternate grammars or suppressed submatches, capture
|
||||
discovery can be explicitly unavailable. Runtime records remain authoritative.
|
||||
|
||||
Native and normalized ranges are preserved rather than “fixed”:
|
||||
|
||||
- JavaScript, Java, Scala compatibility and .NET use UTF-16 code units;
|
||||
- standalone PCRE2, PHP, Go and Rust use UTF-8 bytes; and
|
||||
- Python, Ruby, C++ and legacy Perl use Unicode code points.
|
||||
|
||||
All editor ranges are normalized to UTF-16 only after the adapter verifies
|
||||
valid boundaries. The native unit and original range remain available.
|
||||
|
||||
Reference in New Issue
Block a user