简体中文
快速开始
gdfmt 通过命令行格式化 GDScript 文件。可以直接使用默认设置,需要共享项目风格时再提交配置文件。
从源码安装
使用 Rust 1.88 或更高版本。仓库中的 rust-toolchain.toml 固定了开发工具链。
sh
git clone https://github.com/ntnyq/gdfmt.git
cd gdfmt
cargo install --path crates/gdfmt_cli --locked
gdfmt --version确保 Cargo 的可执行文件目录已加入 PATH。也可以在仓库内通过 cargo run -p gdfmt_cli -- <参数> 直接运行 CLI。
使用 pnpm dlx @gdfmt/gdfmt@next --version 运行 npm 预发布版本,CLI 命令仍为 gdfmt。
格式化项目
在你的 Godot 项目目录中运行:
sh
gdfmt .默认命令将格式化结果写回原文件,也可以指定单个文件、目录或多个路径:
sh
gdfmt src/player.gd
gdfmt src addons只选择 .gd 文件,遵循项目忽略文件,并跳过 .git、.godot、node_modules 和 target。详见文件选择。
例如:
gdscript
func run( value : int=1 ): return [value,2] # result格式化后:
gdscript
func run(value: int = 1):
return [value, 2] # result检查或预览差异
sh
gdfmt --check .
gdfmt --diff src/player.gd两种命令都不修改文件。格式一致时退出码为 0,发现源码错误或格式差异时为 1,配置、参数或 I/O 错误为 2。
只检查语法可运行 gdfmt check . --syntax-only。它使用 gdfmt 的解析器,不能替代 Godot 的项目分析。
共享配置
sh
gdfmt init这会在当前目录创建 .gdfmtrc.json,已有文件时拒绝覆盖。默认使用 100 列行宽、Tab 缩进、LF 换行和文件末尾换行。
选项、EditorConfig、继承与按路径覆盖见配置说明。运行 gdfmt explain-config src/player.gd 可查看某个文件的实际配置。