Repository navigation
fix(ts-query): correct predicate and directive completions - #350
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow up on #347 to align query completions and argument validation with
ts_query_lsand Zed's query runtime.ts_query_lsgeneratenot-eqandnot-matchfrom their base predicates, and disable automaticnot-expansion for the explicit quantified variants. This avoids unsupported suggestions such as#not-not-eq?and#not-any-eq?, while preserving the supported#not-any-of?spelling.is/is-notanddowncase!/select-adjacent!/strip!completion entries because Zed does not execute those operations. Keepset!, which Zed consumes through property settings.The capture additions from #347 and all existing query files are unchanged. In particular, cleanup of the existing no-op
downcase!use is outside this PR.Validation
cargo test --locked: 82 tests passed.ts_query_lsconfiguration deserializer at305587adaf39719152866012edd700c53036c7a6: all failed against the original configuration, then passed after the fix. They verify the expanded predicate names, equality argument types, and directive names. The temporary harness is not added as a project dependency or committed test.git diff --checkpassed.No live editor/LSP session was run.