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

Function basicEditorLspIntegration

packages/monaco/src/lsp.ts:51–139  ·  view source on GitHub ↗
(
    editor: monaco.editor.IStandaloneCodeEditor,
    languageServerWorker: Worker,
    info: {
        languageId: string;
        logger?: Logger;
        clientInfo?: InitializeParams['clientInfo'];
    }
)

Source from the content-addressed store, hash-verified

49 * @param languageServerWorker The web worker with a language server listening for messages.
50 */
51export async function basicEditorLspIntegration(
52 editor: monaco.editor.IStandaloneCodeEditor,
53 languageServerWorker: Worker,
54 info: {
55 languageId: string;
56 logger?: Logger;
57 clientInfo?: InitializeParams['clientInfo'];
58 }
59) {
60 const reader = new BrowserMessageReader(languageServerWorker);
61 const writer = new BrowserMessageWriter(languageServerWorker);
62 const connection = createProtocolConnection(reader, writer, info.logger);
63 connection.onError(data => {
64 info.logger?.error(`Error on protocol connection: ${data}`);
65 });
66 connection.onClose(() => {
67 info.logger?.log(`Language Server connection closed`);
68 });
69
70 const initRequest: InitializeParams = {
71 processId: null,
72 clientInfo: info.clientInfo,
73 rootUri: null,
74 capabilities: {
75 general: {
76 staleRequestSupport: {
77 cancel: true,
78 retryOnContentModified: []
79 },
80 regularExpressions: {
81 engine: 'ECMAScript',
82 version: 'ES2020'
83 },
84 markdown: {
85 parser: 'marked',
86 version: '1.1.0'
87 },
88 positionEncodings: [PositionEncodingKind.UTF16]
89 },
90 textDocument: {
91 completion: {
92 completionItem: {
93 snippetSupport: true,
94 documentationFormat: ['markdown', 'plaintext'],
95 insertReplaceSupport: true,
96 labelDetailsSupport: true
97 }
98 },
99 hover: {
100 contentFormat: ['markdown', 'plaintext']
101 },
102 signatureHelp: {
103 signatureInformation: {
104 documentationFormat: ['markdown', 'plaintext'],
105 parameterInformation: {
106 labelOffsetSupport: true
107 },
108 activeParameterSupport: true

Callers 1

initMethod · 0.90

Calls 8

onErrorMethod · 0.80
logMethod · 0.80
setupCompletionFunction · 0.70
setupHoverFunction · 0.70
setupSignatureHelpFunction · 0.70
errorMethod · 0.65
getValueMethod · 0.45

Tested by

no test coverage detected