diff options
author | Roberto Vidal <[email protected]> | 2019-10-17 14:22:39 +0100 |
---|---|---|
committer | Roberto Vidal <[email protected]> | 2019-10-17 19:21:07 +0100 |
commit | f4d50de2758b38208745d9594ccbcf0227d49d5b (patch) | |
tree | b55fba950d29f6bd041f26e78e3e56cefb649c31 /editors/code/src | |
parent | e8a7a7b19aab195d2b37a0b13abca4e006e9bbd5 (diff) |
Adds config option for cargo-watch `--ignore` flag
Diffstat (limited to 'editors/code/src')
-rw-r--r-- | editors/code/src/commands/cargo_watch.ts | 7 | ||||
-rw-r--r-- | editors/code/src/config.ts | 11 |
2 files changed, 16 insertions, 2 deletions
diff --git a/editors/code/src/commands/cargo_watch.ts b/editors/code/src/commands/cargo_watch.ts index 00b24dbce..59d4ba97a 100644 --- a/editors/code/src/commands/cargo_watch.ts +++ b/editors/code/src/commands/cargo_watch.ts | |||
@@ -93,10 +93,15 @@ export class CargoWatchProvider implements vscode.Disposable { | |||
93 | args = '"' + args + '"'; | 93 | args = '"' + args + '"'; |
94 | } | 94 | } |
95 | 95 | ||
96 | const ignoreFlags = Server.config.cargoWatchOptions.ignore.reduce( | ||
97 | (flags, pattern) => [...flags, '--ignore', pattern], | ||
98 | [] as string[] | ||
99 | ); | ||
100 | |||
96 | // Start the cargo watch with json message | 101 | // Start the cargo watch with json message |
97 | this.cargoProcess = child_process.spawn( | 102 | this.cargoProcess = child_process.spawn( |
98 | 'cargo', | 103 | 'cargo', |
99 | ['watch', '-x', args], | 104 | ['watch', '-x', args, ...ignoreFlags], |
100 | { | 105 | { |
101 | stdio: ['ignore', 'pipe', 'pipe'], | 106 | stdio: ['ignore', 'pipe', 'pipe'], |
102 | cwd: vscode.workspace.rootPath, | 107 | cwd: vscode.workspace.rootPath, |
diff --git a/editors/code/src/config.ts b/editors/code/src/config.ts index a4581485c..49bdf7d72 100644 --- a/editors/code/src/config.ts +++ b/editors/code/src/config.ts | |||
@@ -12,6 +12,7 @@ export interface CargoWatchOptions { | |||
12 | arguments: string; | 12 | arguments: string; |
13 | command: string; | 13 | command: string; |
14 | trace: CargoWatchTraceOptions; | 14 | trace: CargoWatchTraceOptions; |
15 | ignore: string[]; | ||
15 | } | 16 | } |
16 | 17 | ||
17 | export class Config { | 18 | export class Config { |
@@ -29,7 +30,8 @@ export class Config { | |||
29 | enableOnStartup: 'ask', | 30 | enableOnStartup: 'ask', |
30 | trace: 'off', | 31 | trace: 'off', |
31 | arguments: '', | 32 | arguments: '', |
32 | command: '' | 33 | command: '', |
34 | ignore: [] | ||
33 | }; | 35 | }; |
34 | 36 | ||
35 | private prevEnhancedTyping: null | boolean = null; | 37 | private prevEnhancedTyping: null | boolean = null; |
@@ -124,6 +126,13 @@ export class Config { | |||
124 | ); | 126 | ); |
125 | } | 127 | } |
126 | 128 | ||
129 | if (config.has('cargo-watch.ignore')) { | ||
130 | this.cargoWatchOptions.ignore = config.get<string[]>( | ||
131 | 'cargo-watch.ignore', | ||
132 | [] | ||
133 | ); | ||
134 | } | ||
135 | |||
127 | if (config.has('lruCapacity')) { | 136 | if (config.has('lruCapacity')) { |
128 | this.lruCapacity = config.get('lruCapacity') as number; | 137 | this.lruCapacity = config.get('lruCapacity') as number; |
129 | } | 138 | } |