diff --git a/src/main.zig b/src/main.zig index 3587b24..d7e2db1 100644 --- a/src/main.zig +++ b/src/main.zig @@ -1161,7 +1161,8 @@ fn initializeHandler(arena: *std.heap.ArenaAllocator, id: types.RequestId, req: }, }, .semanticTokensProvider = .{ - .documentProvider = true, + .full = true, + .range = false, .legend = .{ .tokenTypes = comptime block: { const tokTypeFields = std.meta.fields(semantic_tokens.TokenType); diff --git a/src/types.zig b/src/types.zig index e26fca3..bd13ef1 100644 --- a/src/types.zig +++ b/src/types.zig @@ -338,7 +338,8 @@ const InitializeResult = struct { }, }, semanticTokensProvider: struct { - documentProvider: bool, + full: bool, + range: bool, legend: struct { tokenTypes: []const []const u8, tokenModifiers: []const []const u8, diff --git a/tests/sessions.zig b/tests/sessions.zig index 68cf5a9..dc2d6d9 100644 --- a/tests/sessions.zig +++ b/tests/sessions.zig @@ -143,6 +143,6 @@ test "Requesting utf-8 offset encoding" { try sendRequest(shutdown_message, process); try consumeOutputAndWait(process, .{ - \\{"jsonrpc":"2.0","id":0,"result":{"offsetEncoding":"utf-8","capabilities":{"signatureHelpProvider":{"triggerCharacters":["(",","]},"textDocumentSync":2,"renameProvider":true,"completionProvider":{"resolveProvider":false,"triggerCharacters":[".",":","@"]},"documentHighlightProvider":false,"hoverProvider":true,"codeActionProvider":false,"declarationProvider":true,"definitionProvider":true,"typeDefinitionProvider":true,"implementationProvider":false,"referencesProvider":true,"documentSymbolProvider":true,"colorProvider":false,"documentFormattingProvider":true,"documentRangeFormattingProvider":false,"foldingRangeProvider":false,"selectionRangeProvider":false,"workspaceSymbolProvider":false,"rangeProvider":false,"documentProvider":true,"workspace":{"workspaceFolders":{"supported":true,"changeNotifications":true}},"semanticTokensProvider":{"documentProvider":true,"legend":{"tokenTypes":["type","parameter","variable","tagField","field","errorTag","function","keyword","comment","string","number","operator","builtin","label","keywordLiteral"],"tokenModifiers":["namespace","struct","enum","union","opaque","definition","async","documentation","generic"]}}},"serverInfo":{"name":"zls","version":"0.1.0"}}} + \\{"jsonrpc":"2.0","id":0,"result":{"offsetEncoding":"utf-8","capabilities":{"signatureHelpProvider":{"triggerCharacters":["(",","]},"textDocumentSync":2,"renameProvider":true,"completionProvider":{"resolveProvider":false,"triggerCharacters":[".",":","@"]},"documentHighlightProvider":false,"hoverProvider":true,"codeActionProvider":false,"declarationProvider":true,"definitionProvider":true,"typeDefinitionProvider":true,"implementationProvider":false,"referencesProvider":true,"documentSymbolProvider":true,"colorProvider":false,"documentFormattingProvider":true,"documentRangeFormattingProvider":false,"foldingRangeProvider":false,"selectionRangeProvider":false,"workspaceSymbolProvider":false,"rangeProvider":false,"documentProvider":true,"workspace":{"workspaceFolders":{"supported":true,"changeNotifications":true}},"semanticTokensProvider":{"full":true,"range":false,"legend":{"tokenTypes":["type","parameter","variable","tagField","field","errorTag","function","keyword","comment","string","number","operator","builtin","label","keywordLiteral"],"tokenModifiers":["namespace","struct","enum","union","opaque","definition","async","documentation","generic"]}}},"serverInfo":{"name":"zls","version":"0.1.0"}}} }); }