intellij-idea - Intellij Idea 实时模板
问题描述
每次我写“待办事项”评论时,我都会遇到写我的 vcs 当前分支名称的问题。
最近我了解了 Intellij 的“实时模板”,它使用起来非常舒服。我试图将它应用于我的问题,但没有模板可以取出分支名称。
所以问题是我真的可以以某种方式取出我的分支名称来编码注释吗?
解决方案
可以使用 groovyScript 预定义函数和脚本来提取分支名称。例如创建以下实时模板:
$COMMENT$ todo [$BRANCH$]: $END$
带有缩写“todo”和描述“插入带有分支名称的 todo 注释”。单击编辑变量并为变量提供以下定义:
评论:
lineCommentStart()
BRANCH(针对 2020.2 及更高版本更新)
groovyScript("com.intellij.dvcs.repo.VcsRepositoryManager.getInstance(_editor.project).getRepositoryForFileQuick(com.intellij.openapi.fileEditor.FileDocumentManager.getInstance().getFile(_editor.document)).getCurrentBranchName()")
如果已定义,则跳过检查两个变量。Groovy 脚本(不幸的是)都是一行。将适用的上下文设置为Everywhere
。
使用这个实时模板,现在可以todo
Tab在源文件的某处键入,并插入带有分支名称的行注释。这将根据文件的语言插入正确的行注释,或者在没有像 HTML 这样的行注释的语言的情况下不插入任何内容。无论使用哪种版本控制(我用 Git 测试过),都应该提取分支名称。
推荐阅读
- function - 在汇编中接收整数
- datetime - 如何改进反垃圾邮件功能 discord.py?
- vba - 我需要帮助,将复制的项目与 Excel 中的 Powerpoint 对齐
- c# - 为什么使用 Blazor OnInitialized 方法返回基方法
- azure - Azure 应用程序网关入口控制器未到达服务(CLusterIP)
- django - 使用 dj_rest_auth 的 Django REST 社交登录不会对用户进行身份验证
- c++ - 获取存储在 LLVM 变量中的数据
- java - ClassCastException 即使在使用泛型之后
- tkinter - 使用 GitHub Actions 测试 tkinter/tcl GUI?
- python - 运行“$ python manage.py collectstatic --noinput”时出错。即使我设置了 STATIC_ROOT 和 STATIC_FILES_DIRS