diff options
author | bors[bot] <bors[bot]@users.noreply.github.com> | 2018-10-09 22:37:31 +0100 |
---|---|---|
committer | bors[bot] <bors[bot]@users.noreply.github.com> | 2018-10-09 22:37:31 +0100 |
commit | 3c41087bf83a4ffda87a7bee16d8eb31562bac23 (patch) | |
tree | 54c1381ec3d57cbd0722053900e02f3a7ad10cd2 /editors/code/src/extension.ts | |
parent | 31c8ebb743572ef07ac4ca77ddd17eddbcf4b24c (diff) | |
parent | f2d719b24afd404dbaf26332ff314a6161c74b71 (diff) |
Merge #115
115: Format vscode extension and add npm run fix r=matklad a=aochagavia
Co-authored-by: Adolfo OchagavĂa <[email protected]>
Diffstat (limited to 'editors/code/src/extension.ts')
-rw-r--r-- | editors/code/src/extension.ts | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/editors/code/src/extension.ts b/editors/code/src/extension.ts index 3e5767535..ff8f23c7a 100644 --- a/editors/code/src/extension.ts +++ b/editors/code/src/extension.ts | |||
@@ -16,21 +16,26 @@ export function activate(context: vscode.ExtensionContext) { | |||
16 | disposeOnDeactivation(vscode.commands.registerCommand(name, f)); | 16 | disposeOnDeactivation(vscode.commands.registerCommand(name, f)); |
17 | } | 17 | } |
18 | function overrideCommand( | 18 | function overrideCommand( |
19 | |||
20 | name: string, | 19 | name: string, |
21 | f: (...args: any[]) => Promise<boolean>, | 20 | f: (...args: any[]) => Promise<boolean> |
22 | ) { | 21 | ) { |
23 | const defaultCmd = `default:${name}`; | 22 | const defaultCmd = `default:${name}`; |
24 | const original = async (...args: any[]) => await vscode.commands.executeCommand(defaultCmd, ...args); | 23 | const original = async (...args: any[]) => |
24 | await vscode.commands.executeCommand(defaultCmd, ...args); | ||
25 | |||
25 | registerCommand(name, async (...args: any[]) => { | 26 | registerCommand(name, async (...args: any[]) => { |
26 | const editor = vscode.window.activeTextEditor; | 27 | const editor = vscode.window.activeTextEditor; |
27 | if (!editor || !editor.document || editor.document.languageId !== 'rust') { | 28 | if ( |
29 | !editor || | ||
30 | !editor.document || | ||
31 | editor.document.languageId !== 'rust' | ||
32 | ) { | ||
28 | return await original(...args); | 33 | return await original(...args); |
29 | } | 34 | } |
30 | if (!await f(...args)) { | 35 | if (!(await f(...args))) { |
31 | return await original(...args); | 36 | return await original(...args); |
32 | } | 37 | } |
33 | }) | 38 | }); |
34 | } | 39 | } |
35 | 40 | ||
36 | // Commands are requests from vscode to the language server | 41 | // Commands are requests from vscode to the language server |
@@ -44,12 +49,12 @@ export function activate(context: vscode.ExtensionContext) { | |||
44 | 'ra-lsp.applySourceChange', | 49 | 'ra-lsp.applySourceChange', |
45 | commands.applySourceChange.handle | 50 | commands.applySourceChange.handle |
46 | ); | 51 | ); |
47 | overrideCommand('type', commands.on_enter.handle) | 52 | overrideCommand('type', commands.onEnter.handle); |
48 | 53 | ||
49 | // Notifications are events triggered by the language server | 54 | // Notifications are events triggered by the language server |
50 | const allNotifications: Iterable< | 55 | const allNotifications: Iterable< |
51 | [string, lc.GenericNotificationHandler] | 56 | [string, lc.GenericNotificationHandler] |
52 | > = [['m/publishDecorations', notifications.publishDecorations.handle]]; | 57 | > = [['m/publishDecorations', notifications.publishDecorations.handle]]; |
53 | 58 | ||
54 | // The events below are plain old javascript events, triggered and handled by vscode | 59 | // The events below are plain old javascript events, triggered and handled by vscode |
55 | vscode.window.onDidChangeActiveTextEditor( | 60 | vscode.window.onDidChangeActiveTextEditor( |