Files
rust/editors/code/src/commands/server_version.ts

23 lines
836 B
TypeScript
Raw Normal View History

2020-02-21 10:04:03 +08:00
import * as vscode from 'vscode';
2020-02-21 09:57:24 +08:00
import { ensureServerBinary } from '../installation/server';
import { Ctx, Cmd } from '../ctx';
import { spawnSync } from 'child_process';
2020-02-21 10:04:03 +08:00
2020-02-21 09:57:24 +08:00
export function serverVersion(ctx: Ctx): Cmd {
return async () => {
const binaryPath = await ensureServerBinary(ctx.config.serverSource);
if (binaryPath == null) {
throw new Error(
"Rust Analyzer Language Server is not available. " +
"Please, ensure its [proper installation](https://rust-analyzer.github.io/manual.html#installation)."
);
}
const res = spawnSync(binaryPath, ["--version"]);
const version = res.output?.filter(x => x !== null).map(String).join(" ");
vscode.window.showInformationMessage('rust-analyzer version : ' + version);
2020-02-21 10:04:03 +08:00
};
2020-02-20 16:49:31 +08:00
}