1 import * as vscode from 'vscode';
2 import * as lc from 'vscode-languageclient';
3 import { Server } from '../server';
4 import { handle as applySourceChange, SourceChange } from './apply_source_change';
6 interface OnEnterParams {
7 textDocument: lc.TextDocumentIdentifier;
11 export async function handle(event: { text: string }): Promise<boolean> {
12 const editor = vscode.window.activeTextEditor;
13 if (editor == null || editor.document.languageId !== 'rust' || event.text !== '\n') {
16 const request: OnEnterParams = {
17 textDocument: { uri: editor.document.uri.toString() },
18 position: Server.client.code2ProtocolConverter.asPosition(editor.selection.active),
20 const change = await Server.client.sendRequest<undefined | SourceChange>(
27 await applySourceChange(change);