SourceTermAnalysisSystem_vue/node_modules/@dprint/formatter/README.md
2026-05-15 10:22:44 +08:00

60 lines
1.8 KiB
Markdown

# dprint - JS Formatter
[![CI](https://github.com/dprint/js-formatter/workflows/CI/badge.svg)](https://github.com/dprint/js-formatter/actions?query=workflow%3ACI)
[![npm version](https://badge.fury.io/js/%40dprint%2Fformatter.svg)](https://badge.fury.io/js/%40dprint%2Fformatter)
[![deno doc](https://doc.deno.land/badge.svg)](https://doc.deno.land/https/deno.land/x/dprint/mod.ts)
JS formatter for dprint Wasm plugins.
## Deno
```ts
import {
createStreaming,
GlobalConfiguration,
} from "https://deno.land/x/dprint/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.57.0.wasm"),
);
tsFormatter.setConfig(globalConfig, {
semiColons: "asi",
});
// outputs: "const t = 5\n"
console.log(tsFormatter.formatText("file.ts", "const t = 5;"));
```
## Node.js
Use the following:
```ts
import { createFromBuffer } from "@dprint/formatter";
// You may have to use `getBuffer` on plugins that haven't updated yet.
// See the plugins README.md for details.
import { getPath } from "@dprint/json";
import * as fs from "fs";
const buffer = fs.readFileSync(getPath());
const formatter = createFromBuffer(buffer);
console.log(formatter.formatText("test.json", "{test: 5}"));
```
Unfortunately Node.js doesn't have any way to cache compiles at the moment and so it will have a slower than ideal startup time.
### Plugin NPM Packages
- [@dprint/json](https://www.npmjs.com/package/@dprint/json)
- [@dprint/typescript](https://www.npmjs.com/package/@dprint/typescript)
- [@dprint/markdown](https://www.npmjs.com/package/@dprint/markdown)
- [@dprint/toml](https://www.npmjs.com/package/@dprint/toml)
- [@dprint/dockerfile](https://www.npmjs.com/package/@dprint/dockerfile)