好看且风格统一的代码更利于维护,看着就有一种美感。但是不同人的习惯和代码缩进风格很难统一,于是神器AStyle就派上了用了,这里简单介绍并分享下Astyle工具的使用和配置。

常用的C/C++代码格式优化工具有两个,一是老牌的indent,再一个就是astyle了。astyle不但可以对C/C++进行格式优化,还可以处理Java和C#。版本一直在保持更新,且开放源代码,可以自行编译或使用自带的发布版本。通过命令““astyle -V”可以查询版本信息,最新版本的源代码和可执行文件可以在此处【下载】

下载

1、Astyle官网下载地址:Artistic Style download | SourceForge.net

安装(Windows平台)

1、将压缩包解压到指定目录下。

2、找到Astyle.exe存放目录。

在命令行中使用

命令行下使用,需把Astyle.exe放在环境变量能找到的位置。astyle是一个命令行工具,命令语法很简单:

 astyle [options] < original > Beautifiedastyle [options] Foo.cpp Bar.cpp  [...]

原始文件备份到foo.cpp.orgin。所以你可以安全的使用该软件而不必担心会将代码改得无法回头。

 > Astyle --style=allman --indent=spaces=4 --align-pointer=type --attach-closing-while --indent-col1-comments --pad-oper --pad-comma --pad-header --add-brackets --mode=c -i .\mytest.cpp
//--style=ansi:ANSI 风格格式和缩进
namespace foospace
{int Foo(){if (isBar){bar();return 1;}elsereturn 0;}
}//--style=kr :Kernighan&Ritchie 风格格式和缩进
namespace foospace {int Foo() {if (isBar) {bar();return 1;} elsereturn 0;}
}//--style=linux :Linux 风格格式和缩进
namespace foospace
{int Foo(){if (isBar) {bar();return 1;} else return 0;}
}//--style=gnu :GNU 风格格式和缩进
namespace foospace
{int Foo(){if (isBar){bar();return 1;}elsereturn 0;}
}//--style=java :Java 风格格式和缩进
class foospace {int Foo() {if (isBar) {bar();return 1;} elsereturn 0;}
}

Clion中配置

clion已经很强大了,其实也可以不用astyle。 clion里已经有了一个叫clang-format的工具,直接启用即可,在fileWaters里配置下可以保存时触发格式化。这里还是简单介绍下如何配置astyle吧。

下载插件File Watchers插件

配置插件File Watchers

按照图中一摸一样填写即可

Name:用户自己取个名字

File type:选C/C++

Scope:选择Open Files

Program:找到目录并选择Astyle.exe

Argument(附:博主最满意格式):

-i $FileName$ --style=allman --indent=spaces=4 --align-pointer=type --attach-closing-while --indent-col1-comments --pad-oper --pad-comma --pad-header --add-brackets --mode=c

Output paths to refresh:$FileName$

Working Directory:$FileDir$

最后发现,clion中原来就支持代码格式化的,快捷键为:

CTRL+ALT+L 自 动缩进,但这好像不够强大。

Clion相关快捷键:

CTRL+ALT+I 自 动缩进

CTRL+ALT+L 自 动缩进(我主要是找这个功能,其他的没有试过)

查询快捷键CTRL+N 查找类

CTRL+SHIFT+N 查找文件

CTRL+SHIFT+ALT+N 查 找类中的方法或变量

CIRL+B 找变量的来源

CTRL+ALT+B 找所有的子类

CTRL+SHIFT+B 找变量的 类

CTRL+G 定位行

CTRL+F 在当前窗口查找文本

CTRL+SHIFT+F 在指定窗口查找文本

CTRL+R 在 当前窗口替换文本

CTRL+SHIFT+R 在指定窗口替换文本

ALT+SHIFT+C 查找修改的文件

CTRL+E 最 近打开的文件

F3 向下查找关键字出现位置

SHIFT+F3 向上一个关键字出现位置

F4 查找变量来源

CTRL+ALT+F7 选 中的字符 查找工程出现的地方

CTRL+SHIFT+O 弹出显示查找内容

自动代码ALT+回车 导入包

CTRL+ALT+T 把选中的代码放在 TRY{} IF{} ELSE{} 里

复制快捷方式F5 拷贝文件快捷方式

CTRL+D 复制行

CTRL+X 剪 切,删除行

引用

在VS 2008中使用astyle代码格式化工具 - 狼哥2 - 博客园

AStyle - Clion中配置代码格式化工具(附:博主最满意格式) - Citrusliu - 博客园

使用astyle进行代码格式化_hadesjaky的博客-CSDN博客_astyle格式化

c++代码格式化工具神器AStyle介绍相关推荐

  1. 代码格式化工具Astyle的使用

    dddd,工作中总会遇到一言难尽.阅读性低的代码,真的能逼疯一个处女座码农,但是手动改任务量又太重了,这个时候格式化工具就尤为重要. 代码格式化工具选择astyle主要是感觉比较容易上手,且开放源代码 ...

  2. 代码格式化工具AStyle简要说明

    一 安装 1.1 windows下安装 astyle是代码格式化工具,可以配合vs code的插件进行代码的方便格式化,也可以作为命令行工具单独运行: 下载地址: https://sourceforg ...

  3. 多功能mac代码编辑神器coderunner 4 比Xcode都强大

    coderunner 4是Mac平台上的一款轻量级多功能代码编辑神器.本站第一时间为大家带来 coderunner 全新升级版 coderunner 4,支持 23 种语言和.txt 文档制作,比Xc ...

  4. HTML代码格式化工具

    有一款免费开源的代码格式化工具名为HTML Tidy,可以格式化混乱的HTML格式.有两种Tidy工具,一种是原生的命令行工具,另外一种是GUI工具.在此紧介绍命令行Tidy工具: 用法如下: ①将t ...

  5. 查找论文对应开源代码的神器 Papers with Code

    Papers with Code 是一个总结了机器学习论文及其代码实现的网站.大多数论文都是有GitHub代码的.这个网站最好的地方就是对机器学习做了任务分类,检索对应的模型非常方便. 带有代码的论文 ...

  6. 五彩斑斓的 Black —— Python代码格式化工具

    良好的 Python 代码应有良好的格式规范(不止于遵守 PEP 8 ),使用一个更强大更专业的代码格式化工具,来替代编辑器自带的「格式化代码」功能是有一定必要的,这还可以使团队成员即使在不同编辑器下 ...

  7. 超人气代码格式化工具prettier

    一.prettier 介绍 官方自己介绍说,prettier是一款强势武断的代码格式化工具,它几乎移除了编辑器本身所有的对代码的操作格式,然后重新显示.就是为了让所有用这套规则的人有完全相同的代码.在 ...

  8. 代码太多不要怕,分享一个阅读代码的神器

    大家好,我是程序员小哈. 又到了知识分享时间,今天我给大家分享一个阅读代码的神器,如果对你有所帮助的话,还请文末点赞支持一下哈. 今天给大家介绍一个查看代码的编辑器软件:Source Insight, ...

  9. 代码编辑神器--VSCode

    代码编辑神器–VSCode VSCode 全称 Visual Studio Code,是微软出的一款轻量级代码编辑器,免费.开源而且功能强大.它支持几乎所有主流的程序语言的语法高亮.智能代码补全.自定 ...

  10. STM32CubeMX安装包和JDK环境以及Keil代码格式化工具

    STM32Cube生态系统是针对STM32微控制器和微处理器的完整软件解决方案, 它既适合寻求STM32的完整,免费开发环境的用户,也适合已经拥有IDE(包括Keil或iAR)的用户,在其中可以轻松集 ...

最新文章

  1. 【深度学习】60题PyTorch简易入门指南,做技术的弄潮儿
  2. 多数据源使用spring-data-jpa无法部署到JBoss As Server
  3. [译]JavaScript:ES6中的模板字符串简介
  4. 实验 5 性能测试脚本录制和开发实验报告--软件功能测试与性能测试实验
  5. js 闭包作用域和作用域链_Java:伪造工厂的闭包以创建域对象
  6. sql获取某列出现频次最多的值_业务硬核SQL集锦
  7. unity3d UGUI视频教程
  8. python 图片转文字错误_python3把base64字符串写成图片文件出错
  9. 递归 求一个数的阶乘
  10. 双语学习xml系列----之一 什么是xml?(第一小节)
  11. c语言实现万年历程序带节日,【C】万年历
  12. Java事务管理之JDBC
  13. 阿里P8手把手教你!java私塾培训
  14. 谷歌浏览器32位安装包_Chromium内核的edge浏览器终于来了,试用了半天,发现真香!...
  15. 迅雷for linux centos,在CentOS6.6(32位)下配置迅雷远程成功
  16. HFSS - 半波偶极子天线的设计与仿真
  17. QQ 居然被盗了?原因在这......
  18. 【ESP 保姆级教程】疯狂传感器篇 —— 案例:ESP8266 + MQ3酒精传感器 + webserver(局域网内曲线变化图)
  19. 计算机工资表2017,薪级工资对照表2017年最新
  20. 业务修养篇-业务理解有偏差,产品和开发如何达成共识?

热门文章

  1. php有序数组合并,使用Python怎么合并两个有序数组
  2. matlab 电流相量图,表示了电路电压相量与电流相量之间的关系.ppt
  3. java spring初始化_Spring框架初始化解析
  4. mysql 8.0.3 rc_MySQL 8.0.3 RC 版即将发布,看看有哪些变化
  5. VScode C、c++ 环境(windows10 17763.1131)
  6. c++ 11 中for循环新增的用法(基于范围的for循环)
  7. HTML资源嗅探,scrapy-2 嗅探网站,解析HTML
  8. 微信小程序项目源代码SSM英语学习平台
  9. 《MySQL技术内幕》读书笔记
  10. Java2实用教程第五版课后习题解析(持续更新,适合初学者)