Guard auto cargo watch behind a config option

This commit is contained in:
Igor Matuszewski 2019-03-18 22:35:47 +01:00
parent 60cac29964
commit 7c2595c268
3 changed files with 17 additions and 0 deletions

View file

@ -168,6 +168,11 @@
"default": "ra_lsp_server",
"description": "Path to ra_lsp_server executable"
},
"rust-analyzer.enableCargoWatchOnStartup": {
"type": "boolean",
"default": "true",
"description": "When enabled, ask the user whether to run `cargo watch` on startup"
},
"rust-analyzer.trace.server": {
"type": "string",
"scope": "window",

View file

@ -153,6 +153,10 @@ export const autoCargoWatchTask: vscode.Task = {
* that, when accepted, allow us to `cargo install cargo-watch` and then run it.
*/
export async function interactivelyStartCargoWatch() {
if (!Server.config.enableCargoWatchOnStartup) {
return;
}
const execAsync = util.promisify(exec);
const watch = await vscode.window.showInformationMessage(

View file

@ -9,6 +9,7 @@ export class Config {
public enableEnhancedTyping = true;
public raLspServerPath = RA_LSP_DEBUG || 'ra_lsp_server';
public showWorkspaceLoadedNotification = true;
public enableCargoWatchOnStartup = true;
private prevEnhancedTyping: null | boolean = null;
@ -68,5 +69,12 @@ export class Config {
this.raLspServerPath =
RA_LSP_DEBUG || (config.get('raLspServerPath') as string);
}
if (config.has('enableCargoWatchOnStartup')) {
this.enableCargoWatchOnStartup = config.get<boolean>(
'enableCargoWatchOnStartup',
true
);
}
}
}