当前位置: 首页 > news >正文

【详细】idea设置格式化方式 google style

idea设置格式化——google style

  • 下载google style文件
  • 修改google style文件
  • 使用google style文件

下载google style文件

Google 在 GitHub 上有一个专门放置编码规范的仓库,地址在:
https://github.com/google/styleguide
里面有一个intellij-java-google-style.xml文件,链接:google-style.xml文件链接

修改google style文件

这个文件直接导入idea会出现一些问题(例如tab键默认2格,回车也是2格,导致更加不规范),所以需要修改一下
主要修改这三个配置

<option name="INDENT_SIZE" value="4" />
<option name="TAB_SIZE" value="4" />
<option name="CONTINUATION_INDENT_SIZE" value="8" />
  • INDENT_SIZE:缩进宽度(一般指普通语句块的缩进)
  • TAB_SIZE:一个 制表符 Tab 显示为多少个空格(TAB_SIZE=4 → 1 个 Tab 看起来等于 4 个空格;TAB_SIZE=2 → 1 个 Tab 看起来等于 2 个空格)
  • CONTINUATION_INDENT_SIZE:换行缩进量,也就是代码太长换行时的额外缩进

这里可以全局搜索替换,也可以直接用我给的模版:

<?xml version="1.0" encoding="UTF-8"?>
<code_scheme name="GoogleStyle"><option name="OTHER_INDENT_OPTIONS"><value><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="8" /><option name="TAB_SIZE" value="4" /><option name="USE_TAB_CHARACTER" value="false" /><option name="SMART_TABS" value="false" /><option name="LABEL_INDENT_SIZE" value="0" /><option name="LABEL_INDENT_ABSOLUTE" value="false" /><option name="USE_RELATIVE_INDENTS" value="false" /></value></option><option name="INSERT_INNER_CLASS_IMPORTS" value="true" /><option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="999" /><option name="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND" value="999" /><option name="PACKAGES_TO_USE_IMPORT_ON_DEMAND"><value /></option><option name="IMPORT_LAYOUT_TABLE"><value><package name="" withSubpackages="true" static="true" /><emptyLine /><package name="" withSubpackages="true" static="false" /></value></option><option name="RIGHT_MARGIN" value="100" /><option name="JD_ALIGN_PARAM_COMMENTS" value="false" /><option name="JD_ALIGN_EXCEPTION_COMMENTS" value="false" /><option name="JD_P_AT_EMPTY_LINES" value="false" /><option name="JD_KEEP_EMPTY_PARAMETER" value="false" /><option name="JD_KEEP_EMPTY_EXCEPTION" value="false" /><option name="JD_KEEP_EMPTY_RETURN" value="false" /><option name="KEEP_CONTROL_STATEMENT_IN_ONE_LINE" value="false" /><option name="KEEP_BLANK_LINES_BEFORE_RBRACE" value="0" /><option name="KEEP_BLANK_LINES_IN_CODE" value="1" /><option name="BLANK_LINES_AFTER_CLASS_HEADER" value="0" /><option name="ALIGN_MULTILINE_PARAMETERS" value="false" /><option name="ALIGN_MULTILINE_FOR" value="false" /><option name="CALL_PARAMETERS_WRAP" value="1" /><option name="METHOD_PARAMETERS_WRAP" value="1" /><option name="EXTENDS_LIST_WRAP" value="1" /><option name="THROWS_KEYWORD_WRAP" value="1" /><option name="METHOD_CALL_CHAIN_WRAP" value="1" /><option name="BINARY_OPERATION_WRAP" value="1" /><option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" /><option name="TERNARY_OPERATION_WRAP" value="1" /><option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" /><option name="FOR_STATEMENT_WRAP" value="1" /><option name="ARRAY_INITIALIZER_WRAP" value="1" /><option name="WRAP_COMMENTS" value="true" /><option name="IF_BRACE_FORCE" value="3" /><option name="DOWHILE_BRACE_FORCE" value="3" /><option name="WHILE_BRACE_FORCE" value="3" /><option name="FOR_BRACE_FORCE" value="3" /><option name="SPACE_BEFORE_ARRAY_INITIALIZER_LBRACE" value="true" /><AndroidXmlCodeStyleSettings><option name="USE_CUSTOM_SETTINGS" value="true" /><option name="LAYOUT_SETTINGS"><value><option name="INSERT_BLANK_LINE_BEFORE_TAG" value="false" /></value></option></AndroidXmlCodeStyleSettings><JSCodeStyleSettings><option name="INDENT_CHAINED_CALLS" value="false" /></JSCodeStyleSettings><Python><option name="USE_CONTINUATION_INDENT_FOR_ARGUMENTS" value="true" /></Python><TypeScriptCodeStyleSettings><option name="INDENT_CHAINED_CALLS" value="false" /></TypeScriptCodeStyleSettings><XML><option name="XML_ALIGN_ATTRIBUTES" value="false" /><option name="XML_LEGACY_SETTINGS_IMPORTED" value="true" /></XML><codeStyleSettings language="CSS"><indentOptions><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="8" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="ECMA Script Level 4"><option name="KEEP_BLANK_LINES_IN_CODE" value="1" /><option name="ALIGN_MULTILINE_PARAMETERS" value="false" /><option name="ALIGN_MULTILINE_FOR" value="false" /><option name="CALL_PARAMETERS_WRAP" value="1" /><option name="METHOD_PARAMETERS_WRAP" value="1" /><option name="EXTENDS_LIST_WRAP" value="1" /><option name="BINARY_OPERATION_WRAP" value="1" /><option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" /><option name="TERNARY_OPERATION_WRAP" value="1" /><option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" /><option name="FOR_STATEMENT_WRAP" value="1" /><option name="ARRAY_INITIALIZER_WRAP" value="1" /><option name="IF_BRACE_FORCE" value="3" /><option name="DOWHILE_BRACE_FORCE" value="3" /><option name="WHILE_BRACE_FORCE" value="3" /><option name="FOR_BRACE_FORCE" value="3" /><option name="PARENT_SETTINGS_INSTALLED" value="true" /></codeStyleSettings><codeStyleSettings language="HTML"><indentOptions><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="8" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="JAVA"><option name="KEEP_CONTROL_STATEMENT_IN_ONE_LINE" value="false" /><option name="KEEP_BLANK_LINES_IN_CODE" value="1" /><option name="BLANK_LINES_AFTER_CLASS_HEADER" value="1" /><option name="ALIGN_MULTILINE_PARAMETERS" value="false" /><option name="ALIGN_MULTILINE_RESOURCES" value="false" /><option name="ALIGN_MULTILINE_FOR" value="false" /><option name="CALL_PARAMETERS_WRAP" value="1" /><option name="METHOD_PARAMETERS_WRAP" value="1" /><option name="EXTENDS_LIST_WRAP" value="1" /><option name="THROWS_KEYWORD_WRAP" value="1" /><option name="METHOD_CALL_CHAIN_WRAP" value="1" /><option name="BINARY_OPERATION_WRAP" value="1" /><option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" /><option name="TERNARY_OPERATION_WRAP" value="1" /><option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" /><option name="FOR_STATEMENT_WRAP" value="1" /><option name="ARRAY_INITIALIZER_WRAP" value="1" /><option name="WRAP_COMMENTS" value="true" /><option name="IF_BRACE_FORCE" value="3" /><option name="DOWHILE_BRACE_FORCE" value="3" /><option name="WHILE_BRACE_FORCE" value="3" /><option name="FOR_BRACE_FORCE" value="3" /><option name="PARENT_SETTINGS_INSTALLED" value="true" /><indentOptions><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="8" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="JSON"><indentOptions><option name="CONTINUATION_INDENT_SIZE" value="8" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="JavaScript"><option name="RIGHT_MARGIN" value="80" /><option name="KEEP_BLANK_LINES_IN_CODE" value="1" /><option name="ALIGN_MULTILINE_PARAMETERS" value="false" /><option name="ALIGN_MULTILINE_FOR" value="false" /><option name="CALL_PARAMETERS_WRAP" value="1" /><option name="METHOD_PARAMETERS_WRAP" value="1" /><option name="BINARY_OPERATION_WRAP" value="1" /><option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" /><option name="TERNARY_OPERATION_WRAP" value="1" /><option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" /><option name="FOR_STATEMENT_WRAP" value="1" /><option name="ARRAY_INITIALIZER_WRAP" value="1" /><option name="IF_BRACE_FORCE" value="3" /><option name="DOWHILE_BRACE_FORCE" value="3" /><option name="WHILE_BRACE_FORCE" value="3" /><option name="FOR_BRACE_FORCE" value="3" /><option name="PARENT_SETTINGS_INSTALLED" value="true" /><indentOptions><option name="INDENT_SIZE" value="4" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="PROTO"><option name="RIGHT_MARGIN" value="80" /><indentOptions><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="2" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="protobuf"><option name="RIGHT_MARGIN" value="80" /><indentOptions><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="2" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="Python"><option name="KEEP_BLANK_LINES_IN_CODE" value="1" /><option name="RIGHT_MARGIN" value="80" /><option name="ALIGN_MULTILINE_PARAMETERS" value="false" /><option name="PARENT_SETTINGS_INSTALLED" value="true" /><indentOptions><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="8" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="SASS"><indentOptions><option name="CONTINUATION_INDENT_SIZE" value="8" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="SCSS"><indentOptions><option name="CONTINUATION_INDENT_SIZE" value="8" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="TypeScript"><indentOptions><option name="INDENT_SIZE" value="4" /><option name="TAB_SIZE" value="4" /></indentOptions></codeStyleSettings><codeStyleSettings language="XML"><indentOptions><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="2" /><option name="TAB_SIZE" value="4" /></indentOptions><arrangement><rules><section><rule><match><AND><NAME>xmlns:android</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>^$</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>xmlns:.*</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>^$</XML_NAMESPACE></AND></match><order>BY_NAME</order></rule></section><section><rule><match><AND><NAME>.*:id</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>style</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>^$</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>^$</XML_NAMESPACE></AND></match><order>BY_NAME</order></rule></section><section><rule><match><AND><NAME>.*:.*Style</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match><order>BY_NAME</order></rule></section><section><rule><match><AND><NAME>.*:layout_width</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_height</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_weight</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_margin</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_marginTop</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_marginBottom</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_marginStart</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_marginEnd</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_marginLeft</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_marginRight</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:layout_.*</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match><order>BY_NAME</order></rule></section><section><rule><match><AND><NAME>.*:padding</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:paddingTop</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:paddingBottom</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:paddingStart</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:paddingEnd</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:paddingLeft</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*:paddingRight</NAME><XML_ATTRIBUTE /><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match></rule></section><section><rule><match><AND><NAME>.*</NAME><XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE></AND></match><order>BY_NAME</order></rule></section><section><rule><match><AND><NAME>.*</NAME><XML_NAMESPACE>http://schemas.android.com/apk/res-auto</XML_NAMESPACE></AND></match><order>BY_NAME</order></rule></section><section><rule><match><AND><NAME>.*</NAME><XML_NAMESPACE>http://schemas.android.com/tools</XML_NAMESPACE></AND></match><order>BY_NAME</order></rule></section><section><rule><match><AND><NAME>.*</NAME><XML_NAMESPACE>.*</XML_NAMESPACE></AND></match><order>BY_NAME</order></rule></section></rules></arrangement></codeStyleSettings><Objective-C><option name="INDENT_NAMESPACE_MEMBERS" value="0" /><option name="INDENT_C_STRUCT_MEMBERS" value="2" /><option name="INDENT_CLASS_MEMBERS" value="2" /><option name="INDENT_VISIBILITY_KEYWORDS" value="1" /><option name="INDENT_INSIDE_CODE_BLOCK" value="2" /><option name="KEEP_STRUCTURES_IN_ONE_LINE" value="true" /><option name="FUNCTION_PARAMETERS_WRAP" value="5" /><option name="FUNCTION_CALL_ARGUMENTS_WRAP" value="5" /><option name="TEMPLATE_CALL_ARGUMENTS_WRAP" value="5" /><option name="TEMPLATE_CALL_ARGUMENTS_ALIGN_MULTILINE" value="true" /><option name="ALIGN_INIT_LIST_IN_COLUMNS" value="false" /><option name="SPACE_BEFORE_SUPERCLASS_COLON" value="false" /></Objective-C><Objective-C-extensions><option name="GENERATE_INSTANCE_VARIABLES_FOR_PROPERTIES" value="ASK" /><option name="RELEASE_STYLE" value="IVAR" /><option name="TYPE_QUALIFIERS_PLACEMENT" value="BEFORE" /><file><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Import" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Macro" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Typedef" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Enum" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Constant" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Global" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Struct" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="FunctionPredecl" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Function" /></file><class><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Property" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Synthesize" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InitMethod" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="StaticMethod" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InstanceMethod" /><option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="DeallocMethod" /></class><extensions><pair source="cc" header="h" /><pair source="c" header="h" /></extensions></Objective-C-extensions><codeStyleSettings language="ObjectiveC"><option name="RIGHT_MARGIN" value="80" /><option name="KEEP_BLANK_LINES_BEFORE_RBRACE" value="1" /><option name="BLANK_LINES_BEFORE_IMPORTS" value="0" /><option name="BLANK_LINES_AFTER_IMPORTS" value="0" /><option name="BLANK_LINES_AROUND_CLASS" value="0" /><option name="BLANK_LINES_AROUND_METHOD" value="0" /><option name="BLANK_LINES_AROUND_METHOD_IN_INTERFACE" value="0" /><option name="ALIGN_MULTILINE_BINARY_OPERATION" value="false" /><option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" /><option name="FOR_STATEMENT_WRAP" value="1" /><option name="ASSIGNMENT_WRAP" value="1" /><indentOptions><option name="INDENT_SIZE" value="4" /><option name="CONTINUATION_INDENT_SIZE" value="8" /></indentOptions></codeStyleSettings>
</code_scheme>

使用google style文件

step1:导入xml文件
在这里插入图片描述
设置一个名字,应用即可。
在这里插入图片描述
应用——确定
然后随便修改一个文件(加空格等),保存,可以看到全部格式化完成。

http://www.dtcms.com/a/438416.html

相关文章:

  • 关于智能体互联协议标准的130天
  • 君正T32开发笔记之IVSP版本环境搭建和编译
  • DDR Study - MR Registers during the Clock Switch
  • Claude Code 的魔力
  • Node.js 常用工具
  • Node.js 的替代品Bun
  • 网站平台建设所需开发工具广安做网站的公司
  • 阿里云做网站送服务器吗显示网站建设中
  • 【AGI使用教程】Meta 开源视觉基础模型 DINOv3(1)下载与使用
  • JAVA之拷贝数组
  • 开源 C# 快速开发(十七)进程--消息队列MSMQ
  • [UnrealEngine] 虚幻编辑器界面 | 虚幻界面详解 | UE5界面详解
  • 旅游网站开发周期成都古怪科技网站建设公司
  • JavaEE初阶——网络原理初探:从独立模式到TCP/IP五层模型
  • 代码随想录算法训练营第五十七天|53.寻宝
  • 构建模拟人类思维过程的高级智能体检索增强生成(Agentic RAG)流水线模糊性检查、多工具规划、自我修正、因果推理等功能
  • 去类似美团网站做软件开发摄影毕业设计选题作品
  • TeR-TSF 论文解读
  • Eclipse 中文语言包安装教程:一键将界面切换为中文
  • id注册网站修改wordpress数据库配置文件
  • Navicat 17最新安装使用教程(附安装包)
  • C语言字符串安全查找三剑客:strchr_s、strrchr_s、strstr_s解析
  • 网络层协议—IP协议
  • 网站设计前沿网站淘宝开店需要多少钱
  • CSP-J复赛模拟赛2 王晨旭补题 2025.10.2
  • 理解Consumer<T>
  • Linux:了解Socket编程
  • UE4报错:无法编译项目
  • Cobalt Strike
  • 牛客算法基础noob61 字符串操作