MCPcopy Create free account
hub / github.com/CoderLine/alphaTab / startLanguageServer

Function startLanguageServer

packages/lsp/src/server/index.ts:27–69  ·  view source on GitHub ↗
(serverConnection: Connection)

Source from the content-addressed store, hash-verified

25} from 'vscode-languageserver/lib/node/main.js';
26
27function startLanguageServer(serverConnection: Connection) {
28 const documents = new TextDocuments<AlphaTexTextDocument>(TextDocument);
29
30 serverConnection.onInitialize((params: InitializeParams) => {
31 const capabilities = params.capabilities;
32
33 const hasWorkspaceFolderCapability = !!(capabilities.workspace && !!capabilities.workspace.workspaceFolders);
34
35 const result: InitializeResult = {
36 capabilities: {
37 textDocumentSync: TextDocumentSyncKind.Incremental,
38 positionEncoding: PositionEncodingKind.UTF16,
39 completionProvider: {
40 resolveProvider: true
41 },
42 signatureHelpProvider: {
43 triggerCharacters: ['(']
44 },
45 diagnosticProvider: {
46 interFileDependencies: false,
47 workspaceDiagnostics: false
48 },
49 hoverProvider: {}
50 }
51 };
52 if (hasWorkspaceFolderCapability) {
53 result.capabilities.workspace = {
54 workspaceFolders: {
55 supported: true
56 }
57 };
58 }
59 return result;
60 });
61
62 setupDiagnostics(serverConnection, documents);
63 setupCompletion(serverConnection, documents);
64 setupHover(serverConnection, documents);
65 setupSignatureHelp(serverConnection, documents);
66
67 documents.listen(serverConnection);
68 serverConnection.listen();
69}
70
71
72type Port = ConstructorParameters<typeof BrowserMessageReader>[0];

Callers 2

startNodeLanguageServerFunction · 0.85

Calls 4

setupDiagnosticsFunction · 0.90
setupCompletionFunction · 0.90
setupHoverFunction · 0.90
setupSignatureHelpFunction · 0.90

Tested by

no test coverage detected