dprint
deno fmtで使われているRust製formatter
/icons/github.icondprint/dprint
/Icons2/deno.iconhttps://deno.land/x/dprint
Typescriptから直接使うこともできる
dprint.dev/formatter/v2.ts - deno doc
dprint/plugins.md at main · dprint/dprint
typescriptの設定
Configuration - TypeScript / JavaScript - dprint - Code Formatter
https://github.com/dprint/dprint/blob/main/website/plugins.md#using-wasm-plugins-in-the-browser-deno-or-nodejs を少し改造した
code:sample.ts
import {
createStreaming,
GlobalConfiguration,
} from "https://deno.land/x/dprint@0.1.4/mod.ts";
const globalConfig: GlobalConfiguration = {
indentWidth: 2,
lineWidth: 80,
};
const tsFormatter = await createStreaming(
// check https://plugins.dprint.dev/ for latest plugin versions
fetch("https://plugins.dprint.dev/typescript-0.46.1.wasm"),
);
tsFormatter.setConfig(globalConfig, {
semiColons: "asi",
});
console.log(tsFormatter.formatText("file.ts", `
const t = 5;
const s = "aa // ここでエラーが発生する
const k = t + s;
`));