Rust代码格式化插件dprint-plugin-typescript的使用:高效TypeScript/JavaScript代码格式化工具
Rust代码格式化插件dprint-plugin-typescript的使用:高效TypeScript/JavaScript代码格式化工具
dprint-plugin-typescript
这是一个用于dprint的TypeScript格式化插件。它使用Rust编写的swc解析器来处理TypeScript代码,具有极高的速度。
安装
可以通过GitHub发布页面获取安装包。
开发
测试用例位于./tests/specs
文件夹中。要运行测试,请执行cargo test
命令。
构建Wasm文件
如果你想从源代码构建并试用这个插件:
- 运行
cargo build --target wasm32-unknown-unknown --release --features "wasm"
- 在dprint配置文件中引用
./target/wasm32-unknown-unknown/release/dprint_plugin_typescript.wasm
文件
完整示例
以下是一个使用dprint-plugin-typescript格式化TypeScript代码的完整示例:
// 首先添加依赖到Cargo.toml
// dprint-plugin-typescript = "0.95.9"
use dprint_plugin_typescript::configuration::ConfigurationBuilder;
use dprint_plugin_typescript::format_text;
fn main() {
// 创建格式化配置
let config = ConfigurationBuilder::new()
.line_width(80)
.indent_width(2)
.build();
// 要格式化的TypeScript代码
let code = r#"function helloWorld(name:string){console.log('Hello, '+name);}"#;
// 格式化代码
match format_text("file.ts", code, &config) {
Ok(formatted_code) => {
println!("Formatted code:\n{}", formatted_code);
}
Err(err) => {
eprintln!("Error formatting code: {}", err);
}
}
}
格式化后的输出将是:
function helloWorld(name: string) {
console.log("Hello, " + name);
}
完整示例demo
// Cargo.toml 依赖配置
// [dependencies]
// dprint-plugin-typescript = "0.95.9"
use dprint_plugin_typescript::configuration::ConfigurationBuilder;
use dprint_plugin_typescript::format_text;
use std::fs;
fn main() {
// 创建自定义格式化配置
let config = ConfigurationBuilder::new()
.line_width(100) // 设置行宽为100个字符
.indent_width(4) // 设置缩进为4个空格
.prefer_hanging(true) // 优先使用悬挂缩进
.prefer_single_line(false) // 不优先使用单行格式
.build();
// 读取TypeScript文件
let code = match fs::read_to_string("input.ts") {
Ok(content) => content,
Err(err) => {
eprintln!("Error reading file: {}", err);
return;
}
};
// 格式化代码
match format_text("input.ts", &code, &config) {
Ok(formatted_code) => {
// 将格式化后的代码写入文件
if let Err(err) = fs::write("output.ts", formatted_code) {
eprintln!("Error writing formatted code: {}", err);
} else {
println!("Code formatted successfully!");
}
}
Err(err) => {
eprintln!("Error formatting code: {}", err);
}
}
}
元数据
- 版本: 0.95.9
- 发布时间: 18天前
- 2021版
- MIT许可证
- 大小: 212 KiB
安装方法
在项目目录中运行以下Cargo命令:
cargo add dprint-plugin-typescript
或者在Cargo.toml中添加以下行:
dprint-plugin-typescript = "0.95.9"
文档
可以在docs.rs上查看完整文档。
仓库
项目托管在GitHub上。
所有者
- David Sherret
1 回复