我想创建生成fa-icons
的实时模板。例如下一个
<i class="ace-icon fa fa-arrow-right icon-on-right align-top bigger-125"></i>
<i class="ace-icon fa fa-arrow-left icon-on-left bigger-140"></i>
<i class="ace-icon fa fa-times icon-on-right"></i>
<i class="fa fa-bars"></i>
下一步要生成的规则:
<i class="fa fa-$ICON_NAME$"></i>
ace-icon
,如果添加了设置icon-on-[right|left]
$ICON_NAME$
为fa-arrow-[right|left]
且已设置ace-icon
,请设置icon-on-[right|left]
中设置的方向部分align-top
中的设置$SIZE$
添加此类,则跳过bigger-$SIZE$
和$ICON_NAME$
的选项。假设实时模板
$SIZE$
我的问题:
<i class="$ACE_CLASS$ fa fa-$ICON_NAME$ icon-on-$ACE_DIRECTION$ $OPTIONAL_CLASS$ bigger-$SIZE$"></i>
,$ICON_NAME$
和$ACE_DIRECTION$
的预定义选项列表?$SIZE$
?bigger-$SIZE$
是否包含$ICON_NAME$
并切换它?$ACE_DIRECTION$
为真,如何呈现icon-on-$ACE_DIRECTION$
和bigger-$SIZE$
?答案 0 :(得分:2)
如何设置
$ICON_NAME$
,$ACE_DIRECTION$
和$SIZE$
的预定义选项列表?
enum(sCompletionString1,sCompletionString2,...)
- https://www.jetbrains.com/help/phpstorm/2017.1/live-template-variables.html#predefined_functions
如果尺寸为空,如何不渲染
bigger-$SIZE$
?
不可能 - 实时模板没有conditions或loops。
我可能只建议另一个enum
包含所有bigger-XXX
个选项,包括空选项(基本上 - 而不是bigger-$SIZE$
有$BIGGER-SIZE$
)。
2017.2应该 GroovyScript support - 也许您可以code your own Live Template function或某些内容(see this link获取某些文档链接)...
如何检查
$ICON_NAME$
是否包含$ACE_DIRECTION$
并切换它?
与上述相同:不可能 - 实时模板没有条件。
如果
icon-on-$ACE_DIRECTION$
为真,如何呈现bigger-$SIZE$
和$ACE_CLASS$
?
与上述相同:不可能 - 实时模板没有条件。
您可以创建多个不同场景的实时模板(当然,它们会有不同的缩写:例如fai
表示一个案例,fai2
表示另一个案例等。“