第一章 前言概述
第01节 介绍
Region 是 IntelliJ IDEA 提供的一种自定义代码折叠区域。
你可以通过特定的注释标记,将一段代码包裹起来,使其在编辑器中可折叠/展开,从而隐藏不关心的细节,聚焦核心逻辑。
注意事项
- Region 标记不会影响代码编译或运行,它们只是 IDE 的辅助注释。
- 不同语言对 region 的支持程度略有差异,但主流语言均已支持。
使用场景
- 大型类分组:将字段、构造器、公共方法、私有方法分别放入不同 region,快速定位。
- 测试代码:将 Given-When-Then 结构用 region 包裹,提升可读性。
- 配置文件:在 XML 或 YAML 中使用 region 标记,折叠不常用的配置块。
- 多版本代码:用 region 包裹实验性代码,方便临时隐藏/显示。
第02节 格式
//region 区域名称
你的代码...
//endregion
不同的语言,格式略有差别
| 语言 | 注释格式示例 |
|---|---|
| Java | // region 初始化 ... // endregion |
| Kotlin | //region 初始化 ... //endregion |
| Python | # region 初始化 ... # endregion |
| JavaScript | // region 初始化 ... // endregion |
| TypeScript | // region 初始化 ... // endregion |
| C/C++ | // region 初始化 ... // endregion |
| Go | // region 初始化 ... // endregion |
| XML | <!-- region 初始化 --> ... <!-- endregion --> |
部分语言(如 Python)可能需要在注释后加空格,格式为 # region。
第二章 案例代码
第01节 在idea当中的Java代码
java
package com.study;
public class Test {
public static void main(String[] args) {
//region 咏柳
// -------------------------------------------------------------
System.out.println("碧玉妆成一树高,万条垂下绿丝绦。");
System.out.println("不知细叶谁裁出,二月春风似剪刀。");
// -------------------------------------------------------------
//endregion
// region 晓出净慈寺送林子方
// -------------------------------------------------------------
System.out.println("毕竟西湖六月中, 风光不与四时同");
System.out.println("接天莲叶无穷碧, 映日荷花别样红");
// -------------------------------------------------------------
// endregion
// region 山行
// -------------------------------------------------------------
System.out.println("远上寒山石径斜,白云生处有人家。");
System.out.println("停车坐爱枫林晚,霜叶红于二月花。");
// -------------------------------------------------------------
// endregion
// region 江雪
// -------------------------------------------------------------
System.out.println("千山鸟飞绝,万径人踪灭。");
System.out.println("孤舟蓑笠翁,独钓寒江雪。");
// -------------------------------------------------------------
// endregion
}
}
不会影响整体的运行
不知细叶谁裁出,二月春风似剪刀。
毕竟西湖六月中, 风光不与四时同
接天莲叶无穷碧, 映日荷花别样红
远上寒山石径斜,白云生处有人家。
停车坐爱枫林晚,霜叶红于二月花。
千山鸟飞绝,万径人踪灭。
孤舟蓑笠翁,独钓寒江雪。
他可以折叠代码的效果

第02节 操作的好处
提升代码的可阅读性。针对屎山堆砌的代码,结构化拆解。
隐藏实现细节,关注点核心重点内容。
第三章 自定义快捷键 增加 live Templates
第01节 操作目的
为了每次快速生成代码,不想每次都输入大量的注释重复的内容(如 横线)
我们可以使用 IDEA 自带的自定义快捷键。 live Templates 快速生成想要添加的内容。
第02节 创建活动面板组

操作方式
1、 打开【设置】 ---> 选择 【Editor】 ----> 选择活动面板【Live Templates】
2、 点击 "+" 号, 添加 Template Group... 活动面板组
方便于将自己定义的快捷键, 进行统一管理。
第03节 创建活动面板

操作方式
1、 点击自己新建的活动面板组,例如: MyChuanGe
2、 点击 "+" 号, 添加 Live Template 活动面板
添加自己指定的快捷键
第04节 添加自定义快捷键
效果图

详细说明
图标1 对应的区域:
说明: 这部分内容是, 我们输入的快捷键模板按键
例如: 在这里我输入的内容是 chcregionstart 那么我在代码当中, 输入这段字符串的时候, 就会提示快速生成代码
图标2 对应的区域:
说明: 这部分内容是, 我们输入的快捷键模板按键 给出的提示信息
例如: 在这里我输入的内容是 chcregionstart 那么我在代码当中, 输入这段字符串的时候, 就会提示 当前操作的对话框提示快捷键描述
图标3 对应的区域:
说明: 这部分内容是, 我们输入的快捷键模板按键 给出的模板信息, 将会生成什么样子的代码
例如: 在这里我输入的内容是 chcregionstart 那么我在代码当中, 将会自动生成下面的代码。 (注意: $user$ 将会作为变量使用)
图标4 对应的区域:
说明: 这部分内容是, 我们输入的快捷键模板按键 给出的模板信息当中的变量参数, 赋值具体的内容
例如: 在这里我输入的内容是 $user$ 那么我在代码当中, 对这个 user 值进行具体的赋值操作。他可以是方法名称, 类名称, 时间等
图标5 对应的区域:
说明: 这部分内容是, 我们输入的快捷键模板按键 所处的语言环境, 如: Java、Kotlin、xml 等相关的语言
解释: 只有在对应的语言环境当中, 按下快捷键, 才会生效。
第05节 变量详细说明
前面我们在上图当中,输入的内容如下:
//region $user$
//-------------------------------------------
在这里,我们引入了变量 user, 只要被 $ 包裹的内容,就是引入的变量。
当我们引入变量之后,我们需要在 Edit Variables 当中进行变量的配置,指明当前变量,使用依据是什么。
详细说明一下 Edit Variables

第06节 验证快捷键
