Skip to content

Read VSCode extension namespace from the manifest#383

Open
holodorum wants to merge 1 commit intokson-org:mainfrom
holodorum:namespace-vscode-contributions
Open

Read VSCode extension namespace from the manifest#383
holodorum wants to merge 1 commit intokson-org:mainfrom
holodorum:namespace-vscode-contributions

Conversation

@holodorum
Copy link
Copy Markdown
Collaborator

The upstream kson extension hard-coded "kson" as the prefix for its contributed command ids (kson.selectSchema) and configuration properties (kson.format.*, kson.codeLens.enable, kson.trace.server, ...).

The client now reads the namespace from a ksonConfigNamespace top-level manifest field, falling back to "kson", and passes it to the server via initializationOptions. CommandType enum values are unqualified ids (plainFormat, compactFormat, ...) with the wire prefix applied at the LSP boundary via toWireCommandId / fromWireCommandId — both exported so the client doesn't hand-build wire ids either. KsonSettings is flattened to drop the fixed { kson: {...} } wrapper and a single unwrapPushedSettings helper handles both namespaced and already-scoped push payloads.

The upstream kson extension hard-coded "kson" as the prefix for its
contributed command ids (kson.selectSchema) and configuration
properties (kson.format.*, kson.codeLens.enable, kson.trace.server,
...).

The client now reads the namespace from a `ksonConfigNamespace`
top-level manifest field and then  "kson", and passes it to the server
via initializationOptions. CommandType enum values are unqualified ids
(plainFormat, compactFormat, ...) with the wire prefix applied at the
LSP boundary via toWireCommandId / fromWireCommandId — both exported so
the client doesn't hand-build wire ids either. KsonSettings is flattened
to drop the fixed { kson: {...} } wrapper and a single
unwrapPushedSettings helper handles both namespaced and already-scoped
push payloads.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant