我是靠谱客的博主 傻傻绿草,最近开发中收集的这篇文章主要介绍CoolFormat 2.5源代码格式化工具使用手册,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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 代码格式化
参数命令样式,请参考Artistic Style 1.24说明文档: http://www.docin.com/p-62962478.html

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(116); 
?> 

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源代码格式化工具使用手册所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部