Keil配置代码格式化

使用 Keil 作为 IDE 编写 STM32 项目时,代码格式总是让我头疼。尤其是每次用 STM32CubeMX 更新代码后,自动生成的部分都会变成 2 space 的缩进格式,非常影响阅读。后来我发现可以通过 clang-format 搭配 Keil 的自定义工具功能,实现一键代码格式化,大大提升了编码体验。

环境准备

需要准备以下环境:

  1. Keil uVision
  2. clang-format

获取 clang-format

  • 如果你使用的是 Keil V6(armclang 编译器)clang-format.exe 已包含在安装目录中,路径通常为:

    <Keil5_path>\ARM\ARMCLANG\bin\clang-format.exe
    
  • 如果你使用的是较老版本(V5,armcc 编译器),则需手动下载

    • 下载地址:Arm Compiler Downloads Index

    • 下载 V6 版本即可

    • 下载完成后解压,将其放入:

      <Keil5_path>\ARM
      
    • 确保存在以下路径:

      <Keil5_path>\ARM\ARMCLANG\bin\clang-format.exe
      

配置 clang-format 工具

  1. 打开 Keil uVision

  2. 点击菜单栏:Tools -> Customize Tools Menu...

  3. 点击右侧的 Add 按钮,添加新工具:

    • Menu Textclang format

    • Command:填写 clang-format.exe 的完整路径,例如:

      D:\Developer\Keil5\ARM\ARMCLANG\bin\clang-format.exe
      
    • Arguments

      -verbose -sort-includes -style=Microsoft -i !E
      

说明:

  • !E 表示当前打开的文件

  • -i 表示直接修改文件(in-place)

绑定快捷键

为了更方便使用,我们可以为该工具设置快捷键:

  1. 菜单栏进入:Edit -> Configuration

  2. 切换到 Shortcut Keys 页签

  3. 找到 Tools:clang format

  4. 点击 Create Shortcut,设置你喜欢的组合键(我用的是 Alt + F

使用方法

在使用前,请先保存当前文件!

因为该工具会直接修改源文件,未保存的内容仍在缓存中,不会被格式化。

保存之后,只需按下你设置的快捷键,就能完成代码格式化操作。生成的代码将按 Microsoft 风格自动缩进、整理 #include 顺序等,非常清爽!

个性化配置

clang-format 支持高度定制化,比如调整缩进宽度、换行风格等。如果你有特定的格式化需求,可以直接问 AI 或参考官方文档修改参数。

posted @ 2025-04-11 10:13  HanzoHuang  阅读(595)  评论(0)    收藏  举报