4个版本 (2个重大更改)
0.2.0 | 2022年8月31日 |
---|---|
0.1.4 | 2022年8月23日 |
0.1.3 | 2022年8月15日 |
0.0.0 | 2022年7月28日 |
#1548 in 开发工具
33KB
804 行
cbfmt (代码块格式化工具)
一个用于格式化markdown、org和restructuredtext文档中的代码块的工具。
它遍历所有代码块,并使用为块的编程语言指定的工具进行格式化。
安装
从GitHub下载
从github.com/lukas-reineke/cbfmt/releases下载最新发布版本的可执行文件
Cargo
cargo install cbfmt
从源代码构建
- 克隆此仓库
- 使用 cargo 构建
git clone https://github.com/lukas-reineke/cbfmt.git && cd cbfmt
cargo install --path .
这将安装 cbfmt
到您的 ~/.cargo/bin
目录中。请确保将 ~/.cargo/bin
目录添加到您的 PATH
变量中。
配置
需要配置文件。默认文件名为 .cbfmt.toml
示例
[languages]
rust = ["rustfmt"]
go = ["gofmt"]
lua = ["stylua -s -"]
python = ["black --fast -"]
部分
语言
本部分指定为不同语言应运行哪些命令。
每个条目是以语言名称为键的,以要按顺序运行的格式化命令列表为值的。每个格式化命令都需要从stdin读取并写入stdout。
用法
带参数
您可以通过传递参数来在文件和/或目录上运行 cbfmt
。
cbfmt [OPTIONS] [file/dir/glob]...
默认行为是检查所有传递给参数的文件中的格式。如果所有文件都已正确格式化,则退出状态码为0,否则退出状态码为1。
当传递目录作为参数时,cbfmt
将递归地对该目录中的所有具有有效解析器且未被git忽略的文件运行。
通过stdin
如果没有指定参数,cbfmt
将从stdin读取并写入格式化结果到stdout。
cbfmt [OPTIONS] < [file]
没有参数和stdin
如果没有参数且没有写入stdin,cbfmt
将打印帮助文本并退出。
选项
这些是最重要的选项。要查看所有选项,请运行 cbfmt --help
检查 -c|--check
与默认行为相同,但只打印失败文件的路径。
写入 -w|--write
将格式化结果写回文件。
解析器 -p|--parser
指定要使用哪个解析器。如果可能,此值从文件扩展名中推断。
依赖项
~17–28MB
~502K SLoC