适用于Flutter camelCase(String)的Android Studio Live模板吗?

时间:2018-08-27 18:09:24

标签: android-studio dart flutter jetbrains-ide live-templates

尝试为Flutter设置活动模板,这是

S.of(context).$END$$lowerCaseName$ $lowerCaseName$":$SELECTION$

lowerCaseName是camelCase(String)。但是当我运行它时,我会在$ END $

之后得到一个额外的“

例如,如果我在代码中选择“测试字符串”并用实时模板括起来,而不是这样:

String test = S.of(context).TestString TestString":"test string";

我明白了:

String test = S.of(context)."TestString "TestString":"test string";

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

问题在于$SELECTION$值是您选择的整个字符串,包括引号。因此,您必须以某种方式剥离它们。我建议使用groovyScript()-请参见https://www.jetbrains.com/help/idea/edit-template-variables-dialog.htmlhttp://bartololeo.blogspot.com/2014/01/idea-12-how-to-write-live-template-with.html。例如,为$lowerCaseName$指定为 expression 的以下函数应该可以执行以下操作:

camelCase(groovyScript("_1.replace('\"', '')", SELECTION))