zoukankan      html  css  js  c++  java
  • keil中使用Astyle格式化你的代码的方法-keil4 keil5通用

    简介:在给RTT 提交代码,需要符合RT-Thread 的代码规范,本文简单介绍如何使用Astyle 格式化为符合RTT要求的代码风格。

      关于Astyle

      Astyle 的全称是Artistic Style的简称,是一个开源的源代码格式化工具,可以对C,C++,C#以及Java等编程语言的源代码进行缩进、格式化、美化。

      Home Page: http://astyle.sourceforge.net/

      Project Page: http://sourceforge.net/projects/astyle/

      在Keil μVision中集成Astyle(以Keil μVison5为例)

      ①下载Astyle,解压到任意位置(Astyle为绿色软件)

      下载地址:

      链接:https://pan.baidu.com/s/1cGh2yA7T0F22hpVulz60GQ

      提取码:m4hh

      ②µVision5中单击Tools菜单---Customize Tools Menu

    1550038163429745.png

    ③添加Astyle All Files 和Astyle Current File菜单(自定义菜单名,可以使用中文)

      这里添加了两个菜单,分别是格式化当前文件和格式化project中的所有文件。

    1550038210941993.png

      ④添加Command命令:单击...按钮,在Astyle的安装目录中选择Astyle.exe。

      ⑤Arguments:

      Astyle Current File菜单填写 -n !E --style=allman --indent=spaces=4 --indent-preproc-block --pad-oper --pad-header --unpad-paren --suffix=none --align-pointer=name --lineend=linux --convert-tabs --verbose    当前文件

      Astyle All Files菜单填写 -n "$E*.c" "$E*.h" --style=allman --indent=spaces=4 --indent-preproc-block --pad-oper --pad-header --unpad-paren --suffix=none --align-pointer=name --lineend=linux --convert-tabs --verbose

      当前文件所在文件夹中的所有.c 和.h文件

      注:!E 表示的是当前获得焦点且正在编辑的文件。

      $E*.c和$E*.h代表当前获得焦点且正在编辑文件所在目录下所有.c和.h文件(参考keil uVision的帮助文档)

      使用的是Astyle默认格式来格式化文件,另外也可以自定义格式,自定义格式参考Astyle的帮助文档。默认格式化后,会备份原文件为 源文件名.orig。如果不想让Astyle备份文件,可以使用-n参数。 如:-n !E (表示格式化当前文件,不备份)

    1550038238932615.png

      ⑥实际使用效果如下:

    1550038265228016.png

      使用格式化命令后:

    1550038299537920.png

      显示已经完成:

    1550038330519732.png

      注:RTT 使用参数简要说明:具体可看D:GEN_FILE_000005_V1.0%20AStyle_3.1_windowsAStyledoc 中说明

      用 astyle 自动格式化代码

      --style=allman  此风格大括号 单独使用一行

      --indent=spaces=4    缩进 4个空格

      --indent-preproc-block  按块进行预处理

      --pad-oper      在操作符前后添加空格

      --pad-header    在if for while 等后面插入空格

      --unpad-paren   移除括号里面多余的空格

      --suffix=none    不需要备份 也就是 -n

      --align-pointer=name  *, &, or ^ 挨着变量名放置

      --lineend=linux   行结束风格Valid options are windows (CRLF), linux  (LF), and macold (CR).

      --convert-tabs  缩进时将tab 转换成空格

      --verbose    详细的显示模式

  • 相关阅读:
    Hadoop Combiner的三次测试...
    加了@Accessors(chain = true),copy实体类出现问题
    zookeeper启动:Could not find or load main class org.apache.zookeeper.server.quorum.
    CentOS7 更新yum源
    SpringBoot外部静态资源的访问
    从背包问题说起——初学者角度看背包问题
    C++ 常用STL数据类型总结归纳 简单易懂 入门 教程 array vector list deque map set stack
    1.4 HTML5新增的表单属性
    1.3 HTML5新增的input类型
    1.2 HTML5新增的多媒体标签
  • 原文地址:https://www.cnblogs.com/CodeWorkerLiMing/p/11273850.html
Copyright © 2011-2022 走看看