创建Live Template步骤
- 打开IDE设置:
- 在IntelliJ IDEA等IDE中,进入
Settings
(或 Preferences
在Mac上)。
- 找到
Editor
-> Live Templates
。
- 创建新的模板组:
- 点击
+
按钮,选择 Template Group
。
- 为新组命名,例如
Custom Coroutine
。
- 创建Live Template:
- 选中刚才创建的组,再次点击
+
按钮,这次选择 Live Template
。
- Abbreviation:输入缩写,如
asyncCoroutine
。
- Description:简要描述模板用途,如 “Generate an async function with coroutine for network requests”。
- Template text:输入如下代码模板(以Kotlin为例):
import kotlinx.coroutines.*
suspend fun $functionName$($paramList$): $returnType$ {
return withContext(Dispatchers.IO) {
// 模拟网络请求
val result = simulateNetworkRequest()
// 处理结果
handleResult(result)
}
}
private suspend fun simulateNetworkRequest(): $responseType$ {
// 实际逻辑替换此处
delay(1000)
return $responseType$()
}
private fun handleResult(result: $responseType$): $returnType$ {
// 处理结果逻辑
return $returnType$()
}
- 设置变量:
- $functionName$:函数名。
- Expression:可设为
suggestFunctionName()
,IDE会根据上下文建议合适的函数名。
- Default value:可留空,让用户自行输入。
- $paramList$:参数列表。
- Expression:
groovyScript("def result=''; for(i = 0; i < _1; i++) {result+='param'+i+': '+suggestType(); if(i < _1 - 1) result+=', '} return result", 3)
,这里假设初始建议3个参数,根据实际需求调整数字。
- Default value:留空。
- $returnType$:返回类型。
- Expression:
suggestType()
,让IDE根据上下文建议类型。
- Default value:留空。
- $responseType$:网络请求响应类型。
- Expression:
suggestType()
。
- Default value:留空。
- 设置适用场景:
- 点击
Define
,选择适用的语言,如Kotlin。
在不同项目场景中复用
- 模板组共享:将包含此Live Template的模板组导出为一个XML文件(在
Live Templates
设置界面点击 Manage
-> Export
)。然后在其他项目中,通过 Manage
-> Import
导入该XML文件。
- IDE配置同步:使用IDE的配置同步功能,如IntelliJ IDEA的
Settings Repository
。将包含Live Template的配置同步到不同项目所使用的IDE环境中。这样,无论在新老项目,只要使用相同配置环境,都能复用该Live Template。