IntelliJIDEA实时模板变量
返回由当前⽅法返回的值的类型IntelliJ IDEA 实时模板中的模板变量允许⽤户输⼊。扩展模板后,变量将作为输⼊字段显⽰在编辑器中。IntelliJ IDEA 声明实时模板变量
模板中的变量以下列格式声明:
{#content}lt;variable_name>$
IntelliJ IDEA 创建和编辑实时模板变量
变量由表达式定义,并且可以接受某些默认值。
此表达式可能包含以下基本类型的构造:
双引号中的字符串常量。
在实时模板中定义的另⼀个变量的名称。
具有可能参数的预定义函数。
模板变量在 "编辑模板变量" 对话框中可编辑,其中包含可⽤函数的完整列表。请参见本页下⾯的预定义函数列表。
IntelliJ IDEA 预定义的模板变量
光标放在分号前的位置。$SELECTION $ ⽤于环绕模板, 并代表要包装的代码⽚段。扩展模板后, 选定的⽂本将按照模板中指定的内容进⾏包装。例如, 如果您在代码中选择了⽰例, 并通过指定的缩写调⽤ "$SELECTION $" 模板, 或者按下 Ctrl + Alt + T 并从列表中选择所需的模板,则 IntelliJ 想法将⽤双引号将所选内容括起来, 如下所⽰:
IntelliJ IDEA⽀持两个预定义的实时模板变量:$END$ 和 $SELECTION$。
你不能编辑预定义的实时模板变量 $END$ 和 $SELECTION$。
$END$ 指⽰在扩展模板后光标的位置。例如,模板返回 $END$;将扩展到:
return ;
光标定位在分号之前的位置。
$SELECTION$ ⽤于环绕模板,代表要包装的代码⽚段。展开模板后,选定的⽂本将按照模板中指定的内容进⾏包装。例如,如果您在代码中选择了⽰例并通过指定的缩写调⽤ "$SELECTION $" 模板,或通过按下 Ctrl+Alt+T 从列表中选择所需的模板,IntelliJ IDEA 将使⽤双引号将所选内容括起来:
"EXAMPLE"
⽤于实时模板变量的预定义函数
项⽬描述
annotated("annotation qname")创建⼀个具有位于指定位置的注释的类型符号。
arrayVariable()建议在当前范围内适⽤的所有数组变量
anonymousSuper()为 Kotlin 对象表达式建议⼀个超类型。
camelCase(String)返回作为参数传递的字符串,转换为骆驼⼤⼩写。例如,my-text-file/ my text file/ my_text_file将被转换为myTextFile。
capitalize(String)将作为参数传递的名称的⾸字母⼤写。
capitalizeAndUnderscore(sCamelCaseName)将作为参数传递的匹配名称的所有字母⼤写,并在各部分之间插⼊下划线。例如,如果作为参数传递的字符串FooBar,则函数返回FOO_BAR。
castToLeftSideType()将右侧表达式转换为左侧表达式类型。在 "迭代" 组中使⽤它可以⽣成原始类型和泛型集合的单个模板。
className(sClassName)返回当前类的名称(扩展模板的类)。classNameComplete()此表达式替换在变量位置的类名称完成。
clipboard()返回系统剪贴板的内容。
snakeCase(String)从 snake_case 字符串中返回 CamelCase 字符串。例如,如果作为参数传递的字符串foo_bar,则函数返回fooBar。
complete()此表达式替换可变位置处的代码完成调⽤。completeSmart()此表达式替换在变量位置的智能类型完成调⽤。componentTypeOf (<array variable or array
componentTypeOf (<array variable or array
type>)
返回数组的组件类型。currentPackage()返回当前包的名称。
date(sDate)以指定的格式返回当前系统⽇期
默认情况下,当前⽇期以默认系统格式返回。但是,如果您在双引号中指定⽇期格式,则⽇期将以此格式显⽰
:
decapitalize(sName)将作为参数传递的名称的第⼀个字母替换为相应的⼩写字母。descendantClassEnum(<String>)显⽰作为字符串参数输⼊的类的⼦项。
enum(sCompletionString1,sCompletionString2,...)在模板调⽤中建议完成的逗号分隔字符串的列表。escapeString(sEscapeString)转义指定的字符串。
expectedType()返回作为整个模板的结果所需的类型。如果模板在分配的右部分、返回后等范围内展开,则会有意义。
fileName(sFileName)返回具有扩展名的⽂件名。fileNameWithoutExtension()返回没有扩展名的⽂件名。
firstWord(sFirstWord)返回作为参数传递的字符串的第⼀个单词。
groovyScript("groovy code")返回具有指定代码的 Groovy 脚本。
您可以使⽤带有多个参数的 groovyScript 宏。第⼀个参数是执⾏的脚本⽂本或包含脚本的⽂件的路径。下⼀个参数绑定到脚本中可⽤的_1, _2, _3, ..._n变量。
此外,_editor变量在脚本中可⽤。该变量绑定到当前编辑器。
guessElementType (<container>)对存储在java.util.Collection中的元素的类型进⾏猜测。为了猜测,IntelliJ IDEA 尝试查元素添加到容器中或从容器中提取的位置。
iterableComponentType(<ArrayOrIterable>)返回可迭代(iterable)组件的类型,例如数组或集合。iterableVariable()返回可以迭代的变量的名称。
lineNumber()返回当前⾏号。
lowercaseAndDash(String)返回以破折号分隔的⼩写形式,作为参数传递的字符串。例如,字符串MyExampleName被转换为my-example-name。
methodName()返回包含(embracing)⽅法的名称(扩展模板的位置)。methodParameters()返回包含⽅法的参数列表(其中扩展了模板)。methodReturnType()返回由当前⽅法返回的值的类型(该模板在其中展开的⽅法)。
qualifiedClassName()
返回当前类的完全限定名(扩展模板的类)。
清除 "缩短" 的 "检查名称" 复选框。
rightSideType()⽤右侧表达式的类型声明左侧变量。在 "迭代" 组中使⽤它可以⽣成原始类型和泛型集合的单个模板。
snakeCase(sCamelCaseText)返回从作为参数传递的 CamelCase 字符串中的 snake_case 字符串。
spaceSeparated(String)返回⽤匹配字符串作为参数传递的空格分隔的字符串。例如,如果作为参数传递的字符串fooBar,则函数返回foo bar。
subtypes(sType)返回作为参数传递的类型的⼦类型。suggestIndexName()建议索引变量的名称。
suggestVariableName()根据引⽤变量命名规则的代码样式设置,根据变量类型及其初始化程序表达式建⽴变量的名称。例如,如果它是在迭代中保存元素的变量,则 IntelliJ IDEA 对最合理的名称进⾏猜测,同时考虑到要迭代的容器的名称。
typeof arraysuggestFirstVariableName(sFirstVariableName)不建议true, false, this, super。
time(sSystemTime)返回当前系统时间。typeOfVariable(VAR)返回作为参数传递的变量的类型。
underscoresToCamelCase(sCamelCaseText)返回作为参数传递的字符串, 并将 CamelHump 字母替换为下划线。例如,如果作为参数传递的字符串foo_bar,则函数返回fooBar。
underscoresToSpaces(sParameterWithSpaces)返回作为参数传递的字符串, 并⽤空格替换下划线。user()返回当前⽤户的名称。
variableOfType(<type>)建议所有可能分配给作为参数传递的类型的变量,例如variableOfType(“java.util.Vector”)。如果将空字符串 ("") 作为参数传递, 则建议所有变量, ⽽不考虑它们的类型。
JsArrayVariable返回 JavaScript 数组名称。
jsClassName()返回当前 JavaScript 类的名称。jsComponentType返回 JavaScript 组件类型。
项⽬描述
jsComponentType返回 JavaScript 组件类型。
项⽬描述jsMethodName()返回当前 JavaScript ⽅法的名称。jsQualifiedClassName返回当前 JavaScript 类的完整名称。jsSuggestIndexName返回建议的索引名称。jsSuggestVariableName返回变量的建议名称。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论