代码排版工具utfy使用说明V_第1页
代码排版工具utfy使用说明V_第2页
代码排版工具utfy使用说明V_第3页
代码排版工具utfy使用说明V_第4页
代码排版工具utfy使用说明V_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

设备型号:(开发管理平台专项)产品代号:项目代号:代码排版工具部门:Uncrustfy宽带产品部拟制: 王旗^.”I^联;10月27日审核: 年月 日批准: 年月 日.版本记录 错误!未指定书签.引言 背景说明 适用范围 执行标准 相关文档 参考资料 .代码排版工具使用说明 Uncrustify简介 安装Uncrustify 配置SourceInsight 配置MicrosoftVisualStudio Uncrustify 配置文件说明 软件编程规范排版要求的支持情况 .附录UNCRUST雇数说明 .版本记录序号文件编号生成时间主要修改记录作者备注12011-10-27初次生成王玮初始化文档.引言背景说明委托部门:宽带产品部项目名称:代码排版工具选型项目说明:本项目为更好的落实宽带产品部《软件编程规范》中关于代码排版的要求,提高代码的可读性、排版的规范性,本着减少编程人员对代码排版的工作量、提高工作效率的原则,特以Uncrustify 为基础开发了一款代码排版工具。该工具作为 Sourceinsight以及MicrosoftVisualStudio编辑器的插件,对C语言编写的代码进行排版。该工具排版之后的代码基本可满足部门《软件编程规范CHECKLIST中所有排版类的要求。适用范围软件使用对象:宽带产品部软件开发人员使用范围:宽带产品部产品软件研发过程执行标准序号标准名称版本号发布单位备注01M2009015-软件编程规范1.2宽带产品部相关文档

序号文档名称版本号作者备注01M2009015-软件编程规范1.2向忠清参考资料序号文档名称版本号作者发表日期出版单位/来源备注01无.代码排版工具使用说明Uncrustify简介Uncrustify是一个代码美化工具可用于C,C++,C#,ObjectiveC,D,Java,Pawn和VALA源代码的美化。它能够利用空格,tab与空格或只有tab进行缩排,添加或删除换行,排列代码等,并且Uncrustify 具有高配置性,易于修改的特点,可配合SourceInsight及MicrosoftVisualStudio进行使用。安装Uncrustify将Uncrustify.rar文件解压缩即可,解压缩路径以"c:\uncrustify”为例。配置SourceInsight打开SourceInsight,选择菜单“Options-->CustomCommands-->Add,输入uncrustifyRun中输入:C:\uncrustify\uncrustify.exe -cC:\uncrustify\uncrustify.cfg -f%f-o%f如果不想对源代码文件进行备份,可以输入:C:\uncrustify\uncrustify.exe -cC:\uncrustify\uncrustify.cfg--no-backup -f%f-o%fDir不填写,将“File,thenLine”打上勾;4然后点对话框中右侧的按钮“Keys…”设置快捷键“Ctrl+F85打开要格式化的文件,“Ctrl+F8”即可对当前文件格式化;注1 : C:\uncrustify\uncrustify.exe -cC:\uncrustify\uncrustify.cfg -f%f-o%f命令中,-c表明需要调用配置文件,%£在SourceInsight中代表当前文件,-。表示将排版后的输出直接替换当前文件(需要当前文件已经保存,否则SourceInsight不会提示文件被外部编辑器改变,并重新载入 )。注2:%f-o%f也可以使用%$来替换,表明输入的是当前文件中所选择的部分,即uncrustify只对当前所选择的代码进行排版。如果要使用这种方式,请将“PasteOutput”进行勾选。酉己置MicrosoftVisualStudio1打开MicrosoftVisualStudio, 选择菜单“工具-->外部工具-->添加”,在“标题”中输入输入uncrustify。命令中输入:C:\uncrustify\uncrustify.exe参数中军^入:-cC:\uncrustify\uncrustify.cfg -f$(TargetName)—o$(TargetName)如果不想对源代码文件进行备份,可以输入:-cC:\uncrustify\uncrustify.cfg --no-backup-f$(TargetName)—o$(TargetName)4点击“确定”即可;5打开要格式化的文件,选择菜单“工具-->外部工具-->uncrustify即可对当前文件格式化;注:$(TargetName)在MicrosoftVisualStudio 中代表当前文件。3.5.Uncrustify 配置文件说明.缩进为4个空格,未使用Tab;.大括号不做缩进;.缩进Case;.对备注进行缩进;.运算符两端加空格;.赋值操作符两端加空格;.布尔操作符两端加空格;.比较操作符两端加空格;.'if','for','switch', 及'while'与后面的‘('之间加空格;.移除’;‘前面的空格;.','后面加空格;.移除’,‘前面的空格;.'if'、'Elseif'、'Eles'、'Try'、'Finally'、'For'、'While'、'Do'、'Switch'语句单独占一行;.大括号单独占一行;.遇';'就换行,除了在for语句声明中;.非注释行最大字符数为80;.‘if'、'For'、'While'、'Do'的语句强制增加大括号;.'#if、'#elseif 、'#endif、'#define'强制放在行首;.支持预编译指令的缩进及换行。6.软件编程规范排版要求的支持情况编程规范的要求是否支持备注全局变量的定义及函数声明应在头文件中给出;.C文件中如有main()函数,则应将main()放在最前面。不支持需要人工判断程序块要采用缩进风格编写。缩进方式应与所用开发工具生动自动生成的缩进相一致。缩进量要一致并以Tab键为单位,定义Tab为4个字小。支持未使用Tab键,用空格进行了替换。相对独立的程序块之间、变量说明之后必须加空行。支持较长的语句(>80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读(注:一行程序以支持

小于80字符为宜,不要写得过长)。循环、判断等语句中若有较长的表达式或语句,则要进行适应当的划分,长表达式要在低优先级操作符处划分新行,操作符放在新行之首。不完全支持长度以上条所定义的为准表达式中,若有多个操作符连写的情况,应使用空格对它们分隔。支持不允许把多个短语句写在一行中,即一行只写一条语句。支持if、for、do、while、case、switch>default等语句自占一行,且if、for、do、while等语句的执行语句部分无论多少都要加括号{}。支持若只有一条语句时,将强制增加。在两个以上的关键字、变量、常量进行对等操作时,它们之间的操作符前后要加空格;进行非对等操作时,如果是关系密切的立即操作符(如一>),后不应加空格。支持除上述支持的排版功能以外,此排版工具还定义了如下排版规则:.强制移除前面的空格;.'if','for','switch', 及'while'与后面的‘('之间加空格;.对备注进行缩进;.附录Uncrustify参数说明##Generaloptions#newlines {Auto,LF,CR,CRLF}Thetypeoflineendingsinput_tab_size NumberTheoriginalsizeoftabsintheinputoutput_tab_size NumberThesizeoftabsintheoutput(onlyusedifalign_with_tabs=true)string_escape_char NumberTheASCIIvalueofthestringescapechar,usually92(\)or94(八).(Pawn)string_escape_char2 NumberAlternatestringescapecharforPawn.Onlyworksrightbeforethequotechar.tok_split_gte{False,True}indent_continue Numberindent_continue Numberindent_continue Numberindent_continue NumberAllowinterpreting'>='and'>>='aspartofatemplatein'voidf(list<list<B>>=val);'.Iftrue(default),'assert(x<0&&y>=3)'willbebroken.Improvementstotemplatedetectionmaymakethisoptionobsolete.utf8_bom {Ignore,Add,Remove,Force}ControlwhattodowiththeUTF-8BOM(recommed'remove')utf8_byte {False,True}Ifthefileonlycontainscharsbetween128and255andisnotUTF-8,thenoutputasUTF-8utf8_force {False,True}ForcetheoutputencodingtoUTF-8##Indenting#indent_columns NumberThenumberofcolumnstoindentperlevel.Usually2,3,4,or8.Thecontinuationindent.Ifnon-zero,thisoverridestheindentof'('and'='continuationindents.ForFreeBSD,thisissetto4.indent_with_tabs NumberHowtousetabswhenindentingcode0=spacesonly1=indentwithtabstobracelevel,alignwithspaces2=indentandalignwithtabs,usingspaceswhennotonatabstopindent_cmt_with_tabs {False,True}Commentsthatarenotabracelevelareindentedwithtabsonatabstop.Requiresindent_with_tabs=2.Iffalse,willusespaces.indent_align_string {False,True}Whethertoindentstringsbrokenby'\'sothattheylineupindent_xml_string NumberThenumberofspacestoindentmulti-lineXMLstrings.Requiresindent_align_string=Trueindent_brace NumberSpacestoindent'{'fromlevel

indent_braces{False,True}indent_braces{False,True}Whetherbracesareindentedtothebodylevelindent_braces_no_func {False,True}Disabledindentingfunctionbracesifindent_bracesistrueindent_braces_no_class {False,True}Disabledindentingclassbracesifindent_bracesistrueindent_braces_no_struct {False,True}Disabledindentingstructbracesifindent_bracesistrueindent_brace_parent {False,True}Indentbasedonthesizeofthebraceparent,i.e.'if'=>3spaces,'for'=>4spaces,etc.indent_namespace {False,True}Whetherthe'namespace'bodyisindentedindent_namespace_level NumberThenumberofspacestoindentanamespaceblockindent_namespace_limit NumberIfthebodyofthenamespaceislongerthanthisnumber,itwon'tbeindented.Requiresindent_namespace=true.Default=0(nolimit)indent_extern {False,True}indent_extern {False,True}indent_extern {False,True}indent_extern {False,True}Whetherthe'extern"C"'bodyisindentedindent_class {False,True}Whetherthe'class'bodyisindentedindent_class_colon {False,True}Whethertoindentthestuffafteraleadingclasscolonindent_ctor_init NumberAdditionalindentingforconstructorinitializerlistindent_else_if {False,True}False=treat'else\nif'as'elseif'forindentingpurposesTrue=indentthe'if'onelevelindent_var_def_blk NumberAmounttoindentvariabledeclarationsafteraopenbrace.neg=relative,pos=absoluteindent_var_def_cont {False,True}Indentcontinuedvariabledeclarationsinsteadofaligning.indent_func_call_param {False,True}True:indentcontinuedfunctioncallparametersoneindentlevelFalse:alignparametersundertheopenparenqualifierqualifierqualifierqualifierindent_func_def_param {False,True}Sameasindent_func_call_param,butforfunctiondefsindent_func_proto_param {False,True}Sameasindent_func_call_param,butforfunctionprotosindent_func_class_param {False,True}Sameasindent_func_call_param,butforclassdeclarationsindent_func_ctor_var_param {False,True}Sameasindent_func_call_param,butforclassvariableconstructorsindent_template_param {False,True}Sameasindent_func_call_param,butfortemplatesindent_func_param_double {False,True}Doubletheindentforindent_func_xxx_paramoptionsindent_func_const NumberIndentationcolumnforstandalone'const'functiondecl/protoqualifierindent_func_throw NumberIndentationcolumnforstandalone'throw'functiondecl/protoindent_member Numberindent_member Numberindent_col1_comment {False,True}indent_col1_comment {False,True}indent_member Numberindent_member Numberindent_col1_comment {False,True}indent_col1_comment {False,True}Thenumberofspacestoindentacontinued'->'or'.'Usuallysetto0,1,orindent_columns.indent_sing_line_comments NumberSpacestoindentsingleline('//')commentsonlinesbeforecodeindent_relative_single_line_comments{False,True}Ifset,willindenttrailingsingleline('//')commentsrelativetothecodeinsteadoftryingtokeepthesameabsolutecolumnindent_switch_case NumberSpacestoindent'case'from'switch'Usually0orindent_columns.indent_case_shift NumberSpacestoshiftthe'case'line,withoutaffectinganyotherlinesUsually0.indent_case_brace NumberSpacestoindent'{'from'case'.Bydefault,thebracewillappearunderthe'c'incase.Usuallysetto0orindent_columns.Whethertoindentcommentsfoundinfirstcolumnindent_label NumberHowtoindentgotolabels>0:absolutecolumnwhere1istheleftmostcolumn<=0:subtractfrombraceindentindent_access_spec NumberSameasindent_label,butforaccessspecifiersthatarefollowedbyacolonindent_access_spec_body {False,True}Indentthecodeafteranaccessspecifierbyonelevel.Ifset,thisoptionforces'indent_access_spec=0'indent_paren_nl {False,True}Ifanopenparenisfollowedbyanewline,indentthenextlinesothatitlinesupaftertheopenparen(notrecommended)indent_paren_close NumberControlstheindentofacloseparenafteranewline.0:IndenttobodylevelAlignundertheopenparenIndenttothebracelevelindent_comma_paren {False,True}indent_comma_paren {False,True}indent_comma_paren {False,True}indent_comma_paren {False,True}Controlstheindentofacommawheninsideaparen.IfTRUE,alignsundertheopenparenindent_bool_paren {False,True}ControlstheindentofaBOOLoperatorwheninsideaparen.IfTRUE,alignsundertheopenparenindent_first_bool_expr {False,True}If'indent_bool_paren'istrue,controlstheindentofthefirstexpression.IfTRUE,alignsthefirstexpressiontothefollowingonesindent_square_nl {False,True}Ifanopensquareisfollowedbyanewline,indentthenextlinesothatitlinesupaftertheopensquare(notrecommended)indent_preserve_sql {False,True}Don'tchangetherelativeindentofESQL/C'EXECSQL'bodiesindent_align_assign {False,True}Aligncontinuedstatementsatthe'='.Default=TrueIfFALSEorthe'='isfollowedbyanewline,thenextlineisindentonetab.#Spacingoptions#sp_arith {Ignore,Add,Remove,Force}Addorremovespacearoundarithmeticoperator'+', '-', '/', '*',etcsp_assign {Ignore,Add,Remove,Force}Addorremovespacearoundassignmentoperator'=','+=',etcsp_assign_default {Ignore,Add,Remove,Force}Addorremovespacearoundassignmentoperator'='inaprototypesp_before_assign {Ignore,Add,Remove,Force}Addorremovespacebeforeassignmentoperator'=','+=',etc.Overridessp_assign.sp_after_assign {Ignore,Add,Remove,Force}Addorremovespaceafterassignmentoperator'=','+=',etc.Overridessp_assign.

sp_enum_assign{Ignore,Add,Remove,sp_enum_assign{Ignore,Add,Remove,Force}Addorremovespacearoundassignment'='inenumsp_enum_before_assign {Ignore,Add,Remove,Force}Addorremovespacebeforeassignment'='inenum.Overridessp_enum_assign.sp_enum_after_assign {Ignore,Add,Remove,Force}Addorremovespaceafterassignment'='inenum.Overridessp_enum_assign.sp_pp_concat {Ignore,Add,Remove,Force}Addorremovespacearoundpreprocessor'##'concatenationoperator.Default=Addsp_pp_stringify {Ignore,Add,Remove,Force}Addorremovespaceafterpreprocessor'#'stringifyoperator.Alsoaffectsthe'#@'charizingoperator.Default=Addsp_bool {Ignore,Add,Remove,sp_bool {Ignore,Add,Remove,sp_bool {Ignore,Add,Remove,sp_bool {Ignore,Add,Remove,Force}Addorremovespacearoundbooleanoperators'&&'and'||'sp_compare {Ignore,Add,Remove,Force}Addorremovespacearoundcompareoperator'<','>','==',etcsp_inside_paren {Ignore,Add,Remove,Force}Addorremovespaceinside'('and')'sp_paren_paren {Ignore,Add,Remove,Force}Addorremovespacebetweennestedparenssp_balance_nested_parens {False,True}Whethertobalancespacesinsidenestedparenssp_paren_brace {Ignore,Add,Remove,Force}Addorremovespacebetween')'and'{'sp_before_ptr_star {Ignore,Add,Remove,Force}Addorremovespacebeforepointerstar'*'{Ignore,Add,Remove,{Ignore,Add,Remove,sp_before_unnamed_ptr_starForce}Addorremovespacebeforepointerstar'*'thatisn'tfollowedbyavariablenameIfsetto'ignore',sp_before_ptr_starisusedinstead.sp_between_ptr_star {Ignore,Add,Remove,Force}Addorremovespacebetweenpointerstars'*'sp_after_ptr_star {Ignore,Add,Remove,Force}Addorremovespaceafterpointerstar'*',iffollowedbyaword.sp_after_ptr_star_func {Ignore,Add,Remove,Force}Addorremovespaceafterapointerstar'*',iffollowedbyafuncproto/def.sp_before_ptr_star_func {Ignore,Add,Remove,Force}Addorremovespacebeforeapointerstar'*',iffollowedbyafuncproto/def.sp_after_type {Ignore,Add,Remove,sp_after_type {Ignore,Add,Remove,sp_after_type {Ignore,Add,Remove,sp_after_type {Ignore,Add,Remove,sp_before_byref {Ignore,Add,Remove,sp_before_byref {Ignore,Add,Remove,Force}Addorremovespacebeforeareferencesign'&'sp_before_unnamed_byref {Ignore,Add,Remove,Force}Addorremovespacebeforeareferencesign'&'thatisn'tfollowedbyavariablenameIfsetto'ignore',sp_before_byrefisusedinstead.sp_after_byref {Ignore,Add,Remove,Force}Addorremovespaceafterreferencesign'&',iffollowedbyaword.sp_after_byref_func {Ignore,Add,Remove,Force}Addorremovespaceafterareferencesign'&',iffollowedbyafuncproto/def.sp_before_byref_func {Ignore,Add,Remove,Force}Addorremovespacebeforeareferencesign'&',iffollowedbyafuncproto/def.Force}Addorremovespacebetweentypeandword.Default=Forcesp_template_angle {Ignore,Add,Remove,Force}Addorremovespacein'template<'vs'templatev'.Ifsettoignore,sp_before_angleisused.sp_before_angle {Ignore,Add,Remove,Force}Addorremovespacebefore'<>'sp_inside_angle {Ignore,Add,Remove,Force}Addorremovespaceinside'<'and'>'sp_after_angle {Ignore,Add,Remove,Force}Addorremovespaceafter'<>'sp_angle_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'<>'and'('asfoundin'newListvbyte>();'Addorremovespaceafter')'of'if','for','switch',and'while'Addorremovespaceafter')'of'if','for','switch',and'while'Addorremovespaceafter')'of'if','for','switch',and'while'Addorremovespaceafter')'of'if','for','switch',and'while'sp_angle_word {Ignore,Add,Remove,sp_angle_word {Ignore,Add,Remove,Force}Force}Force}Addorremovespacebetween'<>'andawordasin'List<byte>m;'sp_angle_shift {Ignore,Add,Remove,Force}Addorremovespacebetween'>'and'>'in'>>'(templatestuffC++/C#only).Default=Addsp_before_sparen {Ignore,Add,Remove,Force}Addorremovespacebefore'('of'if','for','switch',and'while'sp_inside_sparen {Ignore,Add,Remove,Force}Addorremovespaceinsideif-condition'('and')'sp_inside_sparen_close {Ignore,Add,Remove,Force}Addorremovespacebeforeif-condition')'.Overridessp_inside_sparen.sp_after_sparen {Ignore,Add,Remove,sp_sparen_brace {Ignore,Add,Remove,Force}Addorremovespacebetween')'and'{'of'if','for','switch',and'while'sp_invariant_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'invariant'and'('intheDlanguage.sp_after_invariant_paren {Ignore,Add,Remove,Force}Addorremovespaceafterthe')'in'invariant(C)c'intheDlanguage.sp_special_semi {Ignore,Add,Remove,Force}Addorremovespacebeforeemptystatement';'on'if','for'and'while'sp_before_semi {Ignore,Add,Remove,Force}Addorremovespacebefore';'.Default=Removesp_before_semi_for {Ignore,Add,Remove,sp_before_semi_for {Ignore,Add,Remove,sp_before_semi_for {Ignore,Add,Remove,sp_before_semi_for {Ignore,Add,Remove,Force}Addorremovespacebefore';'innon-empty'for'statementssp_before_semi_for_empty {Ignore,Add,Remove,Force}Addorremovespacebeforeasemicolonofanemptypartofaforstatement.sp_after_semi {Ignore,Add,Remove,Force}Addorremovespaceafter';',exceptwhenfollowedbyacomment.Default=Addsp_after_semi_for {Ignore,Add,Remove,Force}Addorremovespaceafter';'innon-empty'for'statements.Default=Forcesp_after_semi_for_empty {Ignore,Add,Remove,Force}Addorremovespaceafterthefinalsemicolonofanemptypartofaforstatement:for(;;<here>).sp_before_square {Ignore,Add,Remove,sp_before_square {Ignore,Add,Remove,sp_before_ellipsis {Ignore,Add,Remove,sp_before_ellipsis {Ignore,Add,Remove,Force}sp_before_square {Ignore,Add,Remove,sp_before_square {Ignore,Add,Remove,sp_before_ellipsis {Ignore,Add,Remove,sp_before_ellipsis {Ignore,Add,Remove,Force}Force}Addorremovespacebefore'['(except'[]')sp_before_squares {Ignore,Add,Remove,Force}Addorremovespacebefore'[]'sp_inside_square {Ignore,Add,Remove,Force}Addorremovespaceinsideanon-empty'['and']'sp_after_comma {Ignore,Add,Remove,Force}Addorremovespaceafter','sp_before_comma {Ignore,Add,Remove,Force}Addorremovespacebefore','sp_paren_comma {Ignore,Add,Remove,Force}Addorremovespacebetweenanopenparenandcomma:'(,'vs'(Force}Force}Force}Force}Addorremovespacebeforethevariadic'…'whenprecededbyanon-punctuatorsp_after_class_colon {Ignore,Add,Remove,Force}Addorremovespaceafterclass':'sp_before_class_c010n {Ignore,Add,Remove,Force}Addorremovespacebeforeclass':'sp_before_case_c010n {Ignore,Add,Remove,Force}Addorremovespacebeforecase':'.Default=Removesp_after_operator {Ignore,Add,Remove,Force}Addorremovespacebetween'operator'andoperatorsignsp_after_operator_sym {Ignore,Add,Remove,Force}Addorremovespacebetweentheoperatorsymbolandtheopenparen,asin'operator++('sp_after_cast {Ignore,Add,Remove,AddorremovespaceafterC/Dcast,i.e.'cast(int)a'vs'cast(int)a'or'(int)a'vs'(int)a'sp_inside_paren_cast {Ignore,Add,Remove,Force}Addorremovespacesinsidecastparenssp_cpp_cast_paren {Ignore,Add,Remove,Force}AddorremovespacebetweenthetypeandopenpareninaC++cast,i.e.'int(exp)'vs'int(exp)'sp_sizeof_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'sizeof'and'('sp_after_tag {Ignore,Add,Remove,Force}Addorremovespaceafterthetagkeyword(Pawn)sp_inside_braces_enum {Ignore,Add,Remove,Force}Addorremovespaceinsideenum'{'and'}'sp_inside_braces_struct {Ignore,Add,Remove,Addorremovespaceinsidestruct/union'{'and'}sp_inside_braces {Ignore,Add,Remove,Force}Addorremovespaceinside'{'and'}'sp_inside_braces_empty {Ignore,Add,Remove,Force}Addorremovespaceinside'{}'sp_type_func {Ignore,Add,Remove,Force}AddorremovespacebetweenreturntypeandfunctionnameAminimumof1isforcedexceptforpointerreturntypes.sp_func_proto_paren {Ignore,Add,Remove,Force}Addorremovespacebetweenfunctionnameand'('onfunctiondeclarationsp_func_def_paren {Ignore,Add,Remove,Force}Addorremovespacebetweenfunctionnameand'('onfunctiondefinitionsp_inside_fparens{Ignore,Add,Remove,sp_inside_fparens{Ignore,Add,Remove,Force}Addorremovespaceinsideemptyfunction'()'sp_inside_fparen {Ignore,Add,Remove,Force}Addorremovespaceinsidefunction'('and')'sp_square_fparen {Ignore,Add,Remove,Force}Addorremovespacebetween']'and'('whenpartofafunctioncall.sp_fparen_brace {Ignore,Add,Remove,Force}Addorremovespacebetween')'and'{'offunctionsp_func_call_paren {Ignore,Add,Remove,Force}Addorremovespacebetweenfunctionnameand'('onfunctioncallssp_func_call_paren_empty {Ignore,Add,Remove,Force}Addorremovespacebetweenfunctionnameand'()'onfunctioncallswithoutparameters.Ifsetto'ignore'(thedefault),sp_func_call_parenisused.sp_func_call_user_paren {Ignore,Add,Remove,Force}Addorremovespacebetweentheuserfunctionnameand'('onfunctioncallsYouneedtosetakeywordtobeauserfunction,likethis:'setfunc_call_user_'intheconfigfile.sp_func_class_paren {Ignore,Add,Remove,Force}Addorremovespacebetweenaconstructor/destructorandtheopenparensp_return_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'return'and'('sp_attribute_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'__attribute__'and'('sp_defined_paren {Ignore,Add,Remove,Force}

Addorremovespacebetween'defined'and'('in'#ifdefined(FOO)'sp_throw_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'throw'and'('in'throwsp_catch_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'catch'and'('in'catch{}'Ifsettoignore,sp_before_sparenisused.sp_version_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'version'and'('(something){}'(Dlanguage)Ifsettoignore,sp_before_sparenisused.sp_scope_paren {Ignore,Add,Remove,Force}Addorremovespacebetween'scope'and'('in'scope{}'(Dlanguage)(something)(something)in'version(something)Ifsettoignore,sp_before_sparenisused.

(something)(something)in'version(something)sp_macro{Ignore,Add,Remove,sp_macro{Ignore,Add,Remove,Force}Addorremovespacebetweenmacroandvaluesp_macro_func {Ignore,Add,Remove,Force}Addorremovespacebetweenmacrofunction')'andvaluesp_else_brace {Ignore,Add,Remove,Force}Addorremovespacebetween'else'and'{'ifonthesamelinesp_brace_else {Ignore,Add,Remove,Force}Addorremovespacebetween'}'and'else'ifonthesamelinesp_brace_typedef {Ignore,Add,Remove,Force}Addorremovespacebetween'}'andthenameofatypedefonthesamelinesp_catch_brace {Ignore,Add,Remove,Force}Addorremovespacebetween'catch'and'{'ifonthesamelinesp_brace_catch {Ignore,Add,Remove,sp_brace_catch {Ignore,Add,Remove,Force}Force}sp_brace_catch {Ignore,Add,Remove,sp_brace_catch {Ignore,Add,Remove,Force}Force}Force}Addorremovespacebetween'}'and'catch'ifonthesamelinesp_finally_brace {Ignore,Add,Remove,Force}Addorremovespacebetween'finally'and'{'ifonthesamelinesp_brace_finally {Ignore,Add,Remove,Force}Addorremovespacebetween'}'and'finally'ifonthesamelinesp_try_brace {Ignore,Add,Remove,Force}Addorremovespacebetween'try'and'{'ifonthesamelinesp_getset_brace {Ignore,Add,Remove,Force}Addorremovespacebetweenget/setand'{'ifonthesamelinesp_before_dc {Ignore,Add,Remove,Force}Addorremovespacebeforethe'::'operatorsp_after_dc {Ignore,Add,Remove,Addorremovespaceafterthe'::'operatorsp_d_array_c010n {Ignore,Add,Remove,Force}AddorremovearoundtheDnamedarrayinitializer':'operatorsp_not {Ignore,Add,Remove,Force}Addorremovespaceafterthe'!'(not)operator.Default=Removesp_inv {Ignore,Add,Remove,Force}Addorremovespaceafterthe'~'(invert)operator.Default=Removesp_addr {Ignore,Add,Remove,Force}Addorremovespaceafterthe'&'(address-of)operator.Default=RemoveThisdoesnotaffectthespacingaftera'&'thatispartofatype.sp_member {Ignore,Add,Remove,Force}Addorremovespacearoundthe'.'or'->'operators.Default=Removesp_deref {Ignore,Add,Remove,Force}Addorremovespaceafterthe'*'(dereference)operator.Default=RemoveThisdoesnotaffectthespacingaftera'*'thatispartofatype.sp_sign {Ignore,Add,Remove,Force}Addorremovespaceafter'+'or'-',asin'x=-5'or'y=+7'.Default=Removesp_incdec {Ignore,Add,Remove,Force}Addorremovespacebeforeorafter'++'and'--',asin'(--x)'or'y++;'.Default=Removesp_before_nl_cont {Ignore,Add,Remove,Force}Addorremovespacebeforeabackslash-newlineattheendofaline.Default=Addsp_after_oc_scope {Ignore,Add,Remove,sp_after_oc_scope {Ignore,Add,Remove,sp_after_oc_scope {Ignore,Add,Remove,sp_after_oc_scope {Ignore,Add,Remove,Force}Addorremovespaceafterthescope'+'or'-',asin'-(void)foo;'or'+(int)bar;'sp_after_oc_c010n {Ignore,Add,Remove,Force}Addorremovespaceafterthecoloninmessagespecs'-(int)f:(int)x;'vs'-(int)f:(int)x;'sp_before_oc_c010n {Ignore,Add,Remove,Force}Addorremovespacebeforethecoloninmessagespecs'-(int)f:(int)x;'vs'-(int)f:(int)x;'sp_after_send_oc_c010n {Ignore,Add,Remove,Force}Addorremovespaceafterthecoloninmessagespecs'[objectsetValue:1];'vs'[objectsetValue:1];'sp_before_send_oc_c010n {Ignore,Add,Remove,Force}Addorremovespacebeforethecoloninmessagespecs[objectsetValue:1];'vs'[objectsetValue:1];'Force}Force}Force}Force}sp_after_oc_type{Ignore,Add,Remove,sp_after_oc_type{Ignore,Add,Remove,Force}Addorremovespaceafterthe(type)inmessagespecs'-(int)f:(int)x;'vs'-(int)f:(int)x;'sp_after_oc_return_type {Ignore,Add,Remove,Force}Addorremovespaceafterthefirst(type)inmessagespecs'-(int)f:(int)x;'vs'-(int)f:(int)x;'sp_after_oc_at_sel {Ignore,Add,Remove,Force}Addorremovespacebetween'@selector'and'(''@selector(msgName)'vs'@selector(msgName)'Alsoappliesto@protocol()constructssp_after_oc_at_sel_parens {Ignore,Add,Remove,Force}Addorremovespacebetween'@selector(x)'andthefollowingword'@selector(foo)a:'vs'@selector(foo)a:'sp_inside_oc_at_sel_parens{Ignore,Add,Remove,Addorremovespaceinside'@selector'parens'@selector(foo)'vs'@selector(foo)'Alsoappliesto@protocol()constructssp_before_oc_block_caret {Ignore,Add,Remove,Force}Addorremovespacebeforeablockpointercaret'Aint(intarg){…}'vs.'Aint(intarg){…}'sp_after_oc_block_caret {Ignore,Add,Remove,Force}Addorremovespaceafterablockpointercaret'Aint(intarg){…}'vs.'八int(intarg){…}'sp_cond_colon {Ignore,Add,Remove,Force}Addorremovespacearoundthe':'in'b?t:f'sp_cond_question {Ignore,Add,Remove,Force}Addorremovespacearoundthe'?'in'b?t:f'sp_case_label {Ignore,Add,Remove,Fixthespacingbetween'case'andthelabel.Only'ignore'and'force'makesensehere.sp_range {Ignore,Add,Remove,Force}ControlthespacearoundtheD'..'operator.sp_cmt_cpp_start {Ignore,Add,Remove,Force}ControlthespaceaftertheopeningofaC++comment'//A'vs'//A'sp_endif_cmt {Ignore,Add,Remove,commentForce}commentControlsthespacesbetween#elseor#endifandatrailingsp_after_new {Ignore,Add,Remove,Force}Controlsthespacesafter'new','delete',and'delete[]'sp_before_tr_emb_cmt {Ignore,Add,Remove,Force}Controlsthespacesbeforeatrailingorembeddedcommentsp_num_before_tr_emb_cmt NumberNumberofspacesbeforeatrailingorembeddedcomment#Codealignment(notleftcolumnspaces/tabs)#align_keep_tabs {False,True}Whethertokeepnon-indentingtabsalign_with_tabs {False,True}Whethertousetabsforaligningalign_on_tabstop {False,True}Whethertobumpouttothen

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论