是否可以在IntelliJ中的实时模板中获取当前文件的完整路径?我已尝试使用groovyScript("new File('.').absolutePath")
函数,但返回/Applications/IntelliJ IDEA.app/Contents/bin/.
而不是我希望的文件路径。
谢谢!
答案 0 :(得分:8)
根据docs(强调我的):
您可以将groovyScript宏与多个参数一起使用。第一个参数是执行的脚本文本或包含脚本的文件的路径。下一个参数绑定到脚本中可用的_1,_2,_3,... _ n个变量。 此外,脚本中还提供了_editor变量。此变量绑定到当前编辑器。
_editor
是EditorImpl
的一个实例,其中包含对代表当前打开文件的VirtualFile
的引用。
因此,以下脚本获取当前打开文件的完整路径。
groovyScript("_editor.getVirtualFile().getPath()")
或者,如果您想获得相对于项目根目录的路径:
groovyScript("_editor.getVirtualFile().getPath().replace(_editor.getProject().getBaseDir().getPath(), \"\")")