Skip to content
This repository was archived by the owner on Mar 21, 2024. It is now read-only.

Commit 57590da

Browse files
author
Rusty Key
committed
fix formatting
1 parent d52fee6 commit 57590da

File tree

2 files changed

+43
-36
lines changed

2 files changed

+43
-36
lines changed

src/formatters/ocaml.ts

Lines changed: 23 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,27 +6,32 @@ import * as vscode from "vscode";
66
import { getFullTextRange } from "./utils";
77

88
export function register() {
9-
const configuration = vscode.workspace.getConfiguration("ocaml-reason-format");
9+
const configuration = vscode.workspace.getConfiguration("reason");
1010
const rootPath = vscode.workspace.rootPath || "";
1111

12-
vscode.languages.registerDocumentFormattingEditProvider("ocaml", {
13-
provideDocumentFormattingEdits(_document: vscode.TextDocument): vscode.TextEdit[] {
14-
const formatterPath = configuration.get<string | undefined>("ocamlformat");
15-
const formatter = formatterPath ? path.resolve(rootPath, formatterPath) : "ocamlformat";
16-
const textEditor = vscode.window.activeTextEditor;
12+
vscode.languages.registerDocumentFormattingEditProvider(
13+
{ scheme: "file", language: "ocaml" },
14+
{
15+
provideDocumentFormattingEdits(_document: vscode.TextDocument): vscode.TextEdit[] {
16+
const formatterPath = configuration.get<string | undefined>("path.ocamlformat");
17+
const formatter = formatterPath ? path.resolve(rootPath, formatterPath) : "ocamlformat";
18+
const textEditor = vscode.window.activeTextEditor;
1719

18-
if (textEditor) {
19-
const tempFileName = `/tmp/vscode-reasonml-${uuidv4()}`;
20-
fs.writeFileSync(tempFileName, textEditor.document.getText(), "utf8");
21-
const filePath = textEditor.document.fileName;
22-
const formattedText = execSync(`cd ${rootPath} && ${formatter} --name=${filePath} ${tempFileName}`).toString();
23-
fs.unlinkSync(tempFileName);
20+
if (textEditor) {
21+
const tempFileName = `/tmp/vscode-reasonml-${uuidv4()}.ml`;
22+
fs.writeFileSync(tempFileName, textEditor.document.getText(), "utf8");
23+
const filePath = textEditor.document.fileName;
24+
const formattedText = execSync(
25+
`cd ${rootPath} && ${formatter} --name=${filePath} ${tempFileName}`,
26+
).toString();
27+
fs.unlinkSync(tempFileName);
2428

25-
const textRange = getFullTextRange(textEditor);
26-
return [vscode.TextEdit.replace(textRange, formattedText)];
27-
} else {
28-
return [];
29-
}
29+
const textRange = getFullTextRange(textEditor);
30+
return [vscode.TextEdit.replace(textRange, formattedText)];
31+
} else {
32+
return [];
33+
}
34+
},
3035
},
31-
});
36+
);
3237
}

src/formatters/reason.ts

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,28 @@ import * as vscode from "vscode";
66
import { getFullTextRange } from "./utils";
77

88
export function register() {
9-
const configuration = vscode.workspace.getConfiguration("ocaml-reason-format");
9+
const configuration = vscode.workspace.getConfiguration("reason");
1010
const rootPath = vscode.workspace.rootPath || "";
1111

12-
vscode.languages.registerDocumentFormattingEditProvider("reason", {
13-
provideDocumentFormattingEdits(_document: vscode.TextDocument): vscode.TextEdit[] {
14-
const formatterPath = configuration.get<string | undefined>("refmt");
15-
const formatter = formatterPath ? path.resolve(rootPath, formatterPath) : "refmt";
16-
const textEditor = vscode.window.activeTextEditor;
12+
vscode.languages.registerDocumentFormattingEditProvider(
13+
{ scheme: "file", language: "reason" },
14+
{
15+
provideDocumentFormattingEdits(_document: vscode.TextDocument): vscode.TextEdit[] {
16+
const formatterPath = configuration.get<string | undefined>("path.refmt");
17+
const formatter = formatterPath ? path.resolve(rootPath, formatterPath) : "/usr/local/bin/refmt";
18+
const textEditor = vscode.window.activeTextEditor;
19+
if (textEditor) {
20+
const tempFileName = `/tmp/vscode-refmt-${uuidv4()}.re`;
21+
fs.writeFileSync(tempFileName, textEditor.document.getText(), "utf8");
22+
const formattedText = execSync(`${formatter} ${tempFileName}`).toString();
23+
const textRange = getFullTextRange(textEditor);
24+
fs.unlinkSync(tempFileName);
1725

18-
if (textEditor) {
19-
const tempFileName = `/tmp/vscode-refmt-${uuidv4()}`;
20-
fs.writeFileSync(tempFileName, textEditor.document.getText(), "utf8");
21-
const formattedText = execSync(`${formatter} ${tempFileName}`).toString();
22-
const textRange = getFullTextRange(textEditor);
23-
fs.unlinkSync(tempFileName);
24-
25-
return [vscode.TextEdit.replace(textRange, formattedText)];
26-
} else {
27-
return [];
28-
}
26+
return [vscode.TextEdit.replace(textRange, formattedText)];
27+
} else {
28+
return [];
29+
}
30+
},
2931
},
30-
});
32+
);
3133
}

0 commit comments

Comments
 (0)