#格式化 #代码块 #org #markdown

app cbfmt

一个用于格式化markdown、org和restructuredtext文档中的代码块的工具

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 开发工具

MIT 许可证

33KB
804

cbfmt (代码块格式化工具)

一个用于格式化markdown、org和restructuredtext文档中的代码块的工具。
它遍历所有代码块,并使用为块的编程语言指定的工具进行格式化。

安装

从GitHub下载

github.com/lukas-reineke/cbfmt/releases下载最新发布版本的可执行文件

Cargo

cargo install cbfmt

从源代码构建

  1. 克隆此仓库
  2. 使用 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