429 words
2 minutes
Keil 使用 clang-format 的完整教程:实现 STM32 代码一键格式化
在使用 Keil 作为 STM32 开发环境时,每次通过 STM32CubeMX 更新代码后,自动生成的代码都会变成 2 空格缩进格式,严重影响代码可读性。本文将介绍如何通过 clang-format 工具实现 Keil 环境下的一键代码格式化。
环境准备
必要组件
- Keil uVision IDE
- clang-format 工具
clang-format 获取方式
Keil V6 用户(armclang 编译器): 工具已内置在安装目录中:
<Keil安装路径>\ARM\ARMCLANG\bin\clang-format.exe
Keil V5 用户(armcc 编译器):
- 从Arm 官网下载 V6 编译器包
Arm Compiler for Embedded 6.24 (for Keil® MDK)
- 解压至 Keil 安装目录下的 ARM 文件夹
- 确保最终路径为:
<Keil安装路径>\ARM\ARMCLANG\bin\clang-format.exe
配置步骤
1. 添加自定义工具
-
打开 Keil → Tools → Customize Tools Menu…
-
点击 Add 添加新工具
-
配置参数:
-
名称:clang format
-
路径:clang-format.exe 的完整路径
-
参数:
-verbose -sort-includes -style=Microsoft -i !E -
!E
表示当前文件 -
-i
表示直接修改文件
-
2. 设置快捷键
-
进入 Edit → Configuration → Shortcut Keys
-
找到”Tools
format”项 -
设置喜欢的快捷键组合,我使用 VSCode 同款
Alt + Shift + F
。
使用技巧
- 使用前务必保存文件,因为工具会直接修改源文件
- 格式化后会按照 Microsoft 风格自动调整:
- 代码缩进
- #include 排序
- 代码对齐等
高级定制
clang-format 支持高度自定义配置,可通过修改参数调整:
- 缩进宽度
- 大括号风格
- 换行规则等
如需特定格式要求,可参考 clang-format 官方文档或咨询相关技术支持。
提示:该方案特别适合需要频繁使用 STM32CubeMX 生成代码的开发者,能有效保持代码风格统一。
Keil 使用 clang-format 的完整教程:实现 STM32 代码一键格式化
https://blog.hanzogenji.cn/posts/keil-format-code/