diff options
author | gentoo90 <[email protected]> | 2019-01-05 15:28:41 +0000 |
---|---|---|
committer | gentoo90 <[email protected]> | 2019-01-05 15:28:41 +0000 |
commit | a6e04cfa7fbc2baaf5fabb8a07093034d4d761e4 (patch) | |
tree | 43a703571f0e10dc619bbab959be002c9970c676 | |
parent | 8d51b02362109d71355aed63d48b5e7ccd0e51f4 (diff) |
Allow user to set path to ra_lsp_server in vscode settings
-rw-r--r-- | editors/code/package.json | 7 | ||||
-rw-r--r-- | editors/code/src/config.ts | 5 | ||||
-rw-r--r-- | editors/code/src/server.ts | 2 |
3 files changed, 13 insertions, 1 deletions
diff --git a/editors/code/package.json b/editors/code/package.json index 9b8f6351b..c6340e6df 100644 --- a/editors/code/package.json +++ b/editors/code/package.json | |||
@@ -132,6 +132,13 @@ | |||
132 | "default": true, | 132 | "default": true, |
133 | "description": "Highlight Rust code (overrides built-in syntax highlighting)" | 133 | "description": "Highlight Rust code (overrides built-in syntax highlighting)" |
134 | }, | 134 | }, |
135 | "ra-lsp.raLspServerPath": { | ||
136 | "type": [ | ||
137 | "string" | ||
138 | ], | ||
139 | "default": "ra_lsp_server", | ||
140 | "description": "Path to ra_lsp_server executable" | ||
141 | }, | ||
135 | "ra-lsp.trace.server": { | 142 | "ra-lsp.trace.server": { |
136 | "type": "string", | 143 | "type": "string", |
137 | "scope": "window", | 144 | "scope": "window", |
diff --git a/editors/code/src/config.ts b/editors/code/src/config.ts index 7d05ea078..cd0c6e6e2 100644 --- a/editors/code/src/config.ts +++ b/editors/code/src/config.ts | |||
@@ -4,6 +4,7 @@ import { Server } from './server'; | |||
4 | 4 | ||
5 | export class Config { | 5 | export class Config { |
6 | public highlightingOn = true; | 6 | public highlightingOn = true; |
7 | public raLspServerPath = 'ra_lsp_server'; | ||
7 | 8 | ||
8 | constructor() { | 9 | constructor() { |
9 | vscode.workspace.onDidChangeConfiguration(_ => | 10 | vscode.workspace.onDidChangeConfiguration(_ => |
@@ -21,5 +22,9 @@ export class Config { | |||
21 | if (!this.highlightingOn && Server) { | 22 | if (!this.highlightingOn && Server) { |
22 | Server.highlighter.removeHighlights(); | 23 | Server.highlighter.removeHighlights(); |
23 | } | 24 | } |
25 | |||
26 | if (config.has('raLspServerPath')) { | ||
27 | this.raLspServerPath = config.get('raLspServerPath') as string; | ||
28 | } | ||
24 | } | 29 | } |
25 | } | 30 | } |
diff --git a/editors/code/src/server.ts b/editors/code/src/server.ts index 75bdf3207..35fb7e3f5 100644 --- a/editors/code/src/server.ts +++ b/editors/code/src/server.ts | |||
@@ -12,7 +12,7 @@ export class Server { | |||
12 | notificationHandlers: Iterable<[string, lc.GenericNotificationHandler]> | 12 | notificationHandlers: Iterable<[string, lc.GenericNotificationHandler]> |
13 | ) { | 13 | ) { |
14 | const run: lc.Executable = { | 14 | const run: lc.Executable = { |
15 | command: 'ra_lsp_server', | 15 | command: this.config.raLspServerPath, |
16 | options: { cwd: '.' } | 16 | options: { cwd: '.' } |
17 | }; | 17 | }; |
18 | const serverOptions: lc.ServerOptions = { | 18 | const serverOptions: lc.ServerOptions = { |