[b52abe0] | 1 | "use strict"; |
---|
| 2 | Object.defineProperty(exports, "__esModule", { value: true }); |
---|
| 3 | // The module 'vscode' contains the VS Code extensibility API |
---|
| 4 | // Import the module and reference it with the alias vscode in your code below |
---|
| 5 | const path = require("path"); |
---|
| 6 | const vscode = require("vscode"); |
---|
| 7 | |
---|
| 8 | |
---|
| 9 | const vscode_lc = require('vscode-languageclient'); |
---|
| 10 | |
---|
| 11 | let client = {} |
---|
| 12 | |
---|
| 13 | // this method is called when your extension is activated |
---|
| 14 | // your extension is activated the very first time the command is executed |
---|
| 15 | function activate(context) { |
---|
| 16 | vscode.window.showInformationMessage('Cforall Extension Starting'); |
---|
| 17 | |
---|
| 18 | // The debug options for the server |
---|
| 19 | // --inspect=6009: runs the server in Node's Inspector mode so VS Code can attach to the server for debugging |
---|
| 20 | let debugOptions = { execArgv: ['--nolazy', '--inspect=6009'] }; |
---|
| 21 | |
---|
| 22 | // If the extension is launched in debug mode then the debug server options are used |
---|
| 23 | // Otherwise the run options are used |
---|
| 24 | let serverOptions = { |
---|
[ebe0f0d] | 25 | run: { command: 'cfa-ls', transport: vscode_lc.TransportKind.stdio }, |
---|
[b52abe0] | 26 | debug: { |
---|
| 27 | command: 'cfa-ls', |
---|
[ebe0f0d] | 28 | transport: vscode_lc.TransportKind.stdio, |
---|
[b52abe0] | 29 | options: debugOptions |
---|
| 30 | } |
---|
| 31 | }; |
---|
| 32 | |
---|
| 33 | // Options to control the language client |
---|
[ebe0f0d] | 34 | let selector = [{ scheme: 'file', language: 'cforall' }]; |
---|
[b52abe0] | 35 | let clientOptions = { |
---|
[ebe0f0d] | 36 | // Register the server for cforall documents |
---|
| 37 | documentSelector: selector |
---|
[b52abe0] | 38 | }; |
---|
| 39 | |
---|
| 40 | // Create the language client and start the client. |
---|
| 41 | client = new vscode_lc.LanguageClient( |
---|
[ebe0f0d] | 42 | 'cforall', |
---|
[b52abe0] | 43 | 'Cforall Language Server', |
---|
| 44 | serverOptions, |
---|
| 45 | clientOptions |
---|
| 46 | ); |
---|
| 47 | |
---|
| 48 | // Start the client. This will also launch the server |
---|
| 49 | client.start(); |
---|
| 50 | |
---|
| 51 | } |
---|
| 52 | exports.activate = activate; |
---|
| 53 | |
---|
| 54 | // this method is called when your extension is deactivated |
---|
| 55 | function deactivate() { } |
---|
| 56 | exports.deactivate = deactivate; |
---|