aboutsummaryrefslogtreecommitdiff
path: root/editors/code/src/commands/join_lines.ts
diff options
context:
space:
mode:
Diffstat (limited to 'editors/code/src/commands/join_lines.ts')
-rw-r--r--editors/code/src/commands/join_lines.ts38
1 files changed, 19 insertions, 19 deletions
diff --git a/editors/code/src/commands/join_lines.ts b/editors/code/src/commands/join_lines.ts
index 134ddc801..7952fb0c0 100644
--- a/editors/code/src/commands/join_lines.ts
+++ b/editors/code/src/commands/join_lines.ts
@@ -1,29 +1,29 @@
1import * as vscode from 'vscode';
2
3import { Range, TextDocumentIdentifier } from 'vscode-languageclient'; 1import { Range, TextDocumentIdentifier } from 'vscode-languageclient';
4import { Server } from '../server'; 2import { Ctx, Cmd } from '../ctx';
5import { 3import {
6 handle as applySourceChange, 4 handle as applySourceChange,
7 SourceChange, 5 SourceChange,
8} from './apply_source_change'; 6} from './apply_source_change';
9 7
8export function joinLines(ctx: Ctx): Cmd {
9 return async () => {
10 const editor = ctx.activeRustEditor;
11 if (!editor) {
12 return;
13 }
14 const request: JoinLinesParams = {
15 range: ctx.client.code2ProtocolConverter.asRange(editor.selection),
16 textDocument: { uri: editor.document.uri.toString() },
17 };
18 const change = await ctx.client.sendRequest<SourceChange>(
19 'rust-analyzer/joinLines',
20 request,
21 );
22 await applySourceChange(change);
23 }
24}
25
10interface JoinLinesParams { 26interface JoinLinesParams {
11 textDocument: TextDocumentIdentifier; 27 textDocument: TextDocumentIdentifier;
12 range: Range; 28 range: Range;
13} 29}
14
15export async function handle() {
16 const editor = vscode.window.activeTextEditor;
17 if (editor == null || editor.document.languageId !== 'rust') {
18 return;
19 }
20 const request: JoinLinesParams = {
21 range: Server.client.code2ProtocolConverter.asRange(editor.selection),
22 textDocument: { uri: editor.document.uri.toString() },
23 };
24 const change = await Server.client.sendRequest<SourceChange>(
25 'rust-analyzer/joinLines',
26 request,
27 );
28 await applySourceChange(change);
29}