概述
1 代码格式化
1.1 快速格式化
1.1.1 C/C++/Java/C#
1.1.2 HTML/XML
1.1.3 JavaScript
1.1.4 PHP
1.1.5 SQL
1.2 批量格式化
2 代码网页高亮
2.1 支持多种语言
2.2 自定义高亮主题
2.2.1 编辑器主题
2.2.2 边框显示
2.2.3 背景色显示
2.2.4 行号显示
常见问题解答
1 代码格式化
1.1 快速格式化
1.1.1 C/C++/Java/C#
对于C/C++/Java/C#语言,预定义有十种风格选项,如下各种风格:
①Ansi/Allman/Bsd风格(格式缩进从下一行开始括号)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
②Java风格(格式缩进直接紧接后面括号)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
③Kernighan_Ritchie风格(格式缩进使用Linux方式括号)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
④Stroustrup风格(格式缩进使用stroustrup方式括号,缩进使用5个空格)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
⑤Whitesmith风格(格式缩进使用下一行且缩进的括号)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
⑥Banner风格(格式缩进使用直接紧接和缩进的括号)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
⑦GNU风格(格式缩进使用下一行括号,语句块括号缩进两个空格)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
⑧Linux风格(格式缩进使用Linux方式括号,语句块里面缩进8个空格)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
⑨Horstmann风格(格式缩进使用horstman方式,括号紧接语句块)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else return 0; } |
⑩1tbs/otbs风格(格式缩进使用Linux方式括号,自动补全单行语句块括号)
int Foo(bool isBar) { if (isBar) { bar(); return 1; } else { return 0; } } |
也可以自定义格式化参数,在“高级”→“配置设置”下的“快速格式化”输入自定义参数,如默认的参数“-A1pNYk3”。详细的可设置参数如下:
①制表和括号选项
参数命令 | 参数说明 |
default indent option | 默认4个空格 |
--indent=spaces / --indent=spaces=# / -s# | 指定#个空格,#在1~20之间 |
--indent=tab / --indent=tab=# / -t# | 使用制表符,指定#个空格(1~20) |
--indent=force-tab / --indent=force-tab=# / -T# | 强制使用制表符,指定#个空格,#在1~20之间 |
default brackets option | 默认不改变括号 |
--brackets=break / -b | 括号改为下行( e.g. ANSI C / C++ style ) |
--brackets=attach / -a | 括号在语句后( e.g. Java / K&R style ) |
--brackets=linux / -l | 括号如linux风格 |
--brackets=stroustrup / -u | 括号如stroustrup风格 |
--brackets=horstmann / -g | 括号如horstmann 风格 |
②缩进选项
参数命令 | 参数说明 |
--indent-classes / -C | 缩进class和struct块后面的public等 |
--indent-switches / -S | 缩进switch块后面的case块 |
--indent-cases / -K | 缩进case块后面的括号 |
--indent-brackets / -B | 括号缩进 |
--indent-blocks / -G | 括号缩进,函数缩进 |
--indent-namespaces / -N | 命名空间后缩进 |
--indent-labels / -L | 额外的标签缩进 |
--indent-preprocessor / -w | 多行反斜杠定义缩进 |
--indent-col1-comments / -Y | 允许注释跟随代码一起缩进 |
--max-instatement-indent=# / -M# | 在连续声明中缩进最大#个空格(#小于80,默认为40) |
--min-conditional-indent=# / -m# | 在多行中设置最小缩进(#小于40,默认为当前两倍缩进) |
③填充选项
参数命令 | 参数说明 |
--break-blocks / -f | 在循环语句前后加空行 |
--break-blocks=all / -F | 在循环语句前后、else、catch前加空行 |
--pad-oper / -p | 运算符前后加空格 |
--pad-paren / -P | 在括号内外都加上空格 |
--pad-paren-out / -d | 在括号外加上空格 |
--pad-paren-in / -D | 在括号内加上空格 |
--pad-header / -H | 只在括弧头部添加一个空格 |
--unpad-paren / -U | 移除括号内外的空格 |
--delete-empty-lines / -x | 删除函数方法里多余的空行 |
--fill-empty-lines / -E | 以空格对齐填充前一行空行 |
④格式化选项
参数命令 | 参数说明 |
--break-closing-brackets / -y | 让else语句块下起一行 |
--break-elseifs / -e | 让else if 语句拆开缩进 |
--add-brackets / -j | 自动补充括号,默认在条件语句后紧接括号 |
--add-one-line-brackets / -J | 自动补充括号,并且保持括号与语句在一行 |
--keep-one-line-statements / -o | 维持一行里的多条语句不变 |
--keep-one-line-blocks / -O | 不破坏一行里面的块 |
--convert-tabs / -c | 转换TAB 为空格 |
--align-pointer=type / -k1 --align-pointer=middle / -k2 --align-pointer=name / -k3 | 使指针或者引用符靠近变量类型 使指针或者引用符在变量类型和变量名称中间 使指针或者引用符靠近变量名称 |
--mode=c --mode=cs --mode=java | 指定为C/C++代码格式化 指定为C#代码格式化 指定为JAVA 代码格式化 |
1.1.2 HTML/XML
可以将HTML转换成标准的XHTML格式化,风格如下:
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> </head> <body> </body> </html> |
格式化XML时,缩进其子元素,风格如下:
<note> <to>George</to> <from>John</from> <heading>Reminder</heading> <body>Don't forget the meeting!</body> </note> |
1.1.3 JavaScript
支持JavaScript格式化,以逗号、分号进行换行缩进,风格如下:
function prod(a, b) { x = a * b; return x; } |
1.1.4 PHP
在支持PHP格式化的同时,若有语法错误也会弹出提示,缩进风格如下:
<?php function add($x, $y) { $total = $x + $y; return $total; } echo "1 + 16 = " . add(1, 16); ?> |
1.1.5 SQL
换行缩进SQL语句,风格如下:
SELECT LastName, FirstName FROM Persons WHERE FirstName='Bush' |
1.2 批量格式化
支持指定后缀名格式添加,或者自动寻找文件,最好在备份好个人重要文件后,再进行“批量格式化”。见截图:【图一】
2 代码网页高亮
2.1 支持多种语言
编辑器语法高亮支持ASM、BAT、C、C++、C#、Fortran、HTML、Java、JavaScript、JSP、Pascal、Perl、PHP、Python、Ruby、SQL、VB、VHDL、XML等等。
2.2 自定义高亮主题
2.2.1 编辑器主题
可以自定义编辑器主题,在“高级”→“配置设置”下的“编辑器设置”设置特定语言的编辑器主题颜色,比如可以设置Twilight主题模式:背景色RGB(20,20,20),注释色RGB(95,90,96),语法色RGB(205,168,105),正常色RGB(255,255,255),字符色RGB(143,157,106),数字色RGB(207,106,76),字符串色RGB(143,157,106),行号色RGB(238,238,236),行号背景色RGB(46,52,54),当前行号色RGB(249,238,152),分割线色RGB(85,87,83),被选背景色RGB(128,0,255),效果如下:
2.2.2 边框显示
在“高级”→“显示设置”→“边框”里面可以设置“实线边框”、“虚线边框”和“无边框”三种方式,在此同时还可以自定义高亮时边框的大小和颜色,在“高级”→“配置设置”下的“高亮设置”,设置“边框大小”和“边框颜色”,如下图所示:
2.2.3 背景色显示
在“高级”→“显示设置”→“显示背景”,然后在“背景颜色”设定高亮时的背景颜色,默认背景实线边框的高亮效果如下:
if (isBar) { bar(); } |
2.2.4 行号显示
在“高级”→“显示设置”→“显示行号”,即可显示行号高亮,而且复制代码时不会复制到行号,效果如下:
1 2 3 4 |
| if (isBar) { bar(); } |
常见问题解答
①在含有中文语句中,光标不正确?
原因:这是因为所设定的字体是英文字体,在含有中文情况下,未能较为准确的识别当前行的长度。
解决:可以设置“字体”为Fixedsys、Inconsolata、微软雅黑等等,推荐使用等宽字体。附上一些编程字体,下载链接:http://download.csdn.net/source/3271753。
②高亮时没有显示等宽效果?
原因:这是因为高亮是采用Consolas字体的,这在Vista和Win7中是自带的,在XP下需要安装字体包。同理,在网页、博客上看到代码高亮时没有显示等宽效果,亦是缺少此字体。
解决:下载Consolas字体放到系统Fonts目录下即可。下载链接:http://download.csdn.net/source/3271753。
下载页面:http://blog.csdn.net/akof1314/archive/2010/03/08/5355948.aspx
最后
以上就是傻傻绿草为你收集整理的CoolFormat 2.5源代码格式化工具使用手册的全部内容,希望文章能够帮你解决CoolFormat 2.5源代码格式化工具使用手册所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复