TronCode Tron CLI 代码格式化

概述

Tron 可在修改文件后自动运行格式化工具,保持代码风格一致。无论是个人项目还是团队协作,统一的代码格式能显著减少代码审查中的格式争议,让开发者专注于逻辑本身。

Tron 的格式化集成是非侵入式的——它尊重项目已有的格式化配置,并在 AI 完成文件修改后自动触发相应的格式化工具。

自动格式化

通过 autoFormat 配置项,可以让 Tron 在每次保存文件后自动运行对应的格式化工具,无需手动触发。

💡
提示

启用 autoFormat 后,Tron 会根据文件扩展名自动选择合适的格式化器,无需为每个文件单独配置。

autoFormat 设置为 true 即可开启全局自动格式化:

json
{
  "autoFormat": true
}

也可以针对特定语言开启或关闭自动格式化:

json
{
  "autoFormat": {
    "javascript": true,
    "typescript": true,
    "python": true,
    "go": true,
    "rust": false
  }
}

支持的格式化器

Tron 内置支持以下主流格式化工具,会自动检测系统中是否安装:

格式化器 支持语言 安装方式
prettier JavaScript / TypeScript / CSS / HTML / JSON / Markdown npm install -g prettier
black Python pip install black
ruff Python pip install ruff
gofmt Go 随 Go 工具链内置
rustfmt Rust 随 Rust 工具链内置
clang-format C / C++ / Objective-C brew install clang-format 或包管理器安装
💡
优先级说明

对于 Python,如果同时安装了 ruffblack,Tron 优先使用 ruff,因为它速度更快。可通过配置强制指定格式化器。

配置示例

config.json 中通过 formatters 字段进行详细配置:

json
{
  "autoFormat": true,
  "formatters": {
    "javascript": {
      "command": "prettier",
      "args": ["--write", "{{file}}"]
    },
    "typescript": {
      "command": "prettier",
      "args": ["--write", "{{file}}"]
    },
    "python": {
      "command": "ruff",
      "args": ["format", "{{file}}"]
    },
    "go": {
      "command": "gofmt",
      "args": ["-w", "{{file}}"]
    },
    "rust": {
      "command": "rustfmt",
      "args": ["{{file}}"]
    },
    "c": {
      "command": "clang-format",
      "args": ["-i", "{{file}}"]
    }
  }
}

其中 {{file}} 是占位符,Tron 会在运行时将其替换为实际的文件路径。

项目配置优先

Tron 在运行格式化工具时,会优先读取项目根目录中的格式化配置文件,确保格式化结果与团队规范一致:

  • prettier:读取 .prettierrc.prettierrc.jsonprettier.config.js
  • black / ruff:读取 pyproject.toml 中的 [tool.black][tool.ruff] 配置段
  • clang-format:读取 .clang-format 文件
  • rustfmt:读取 rustfmt.toml.rustfmt.toml

这意味着你无需在 Tron 中重复配置格式化规则——只需确保项目中有对应的配置文件即可。

💡
建议

将格式化配置文件(如 .prettierrcpyproject.toml)提交到 Git 仓库,让所有团队成员和 Tron 使用相同的格式化规则。