我想创建一个缩进4个空格的模板,如下所示:
def myMethod() '''
for (int i =0; i!= size; ++i) {
doSomething();
}
'''
但是Xtend删除了for()和结束的'}'之前的4个空格。如何添加未删除的缩进?
答案 0 :(得分:2)
我遇到过类似的问题,Xtend的模板系统可能很挑剔,但是有解决方法。当使用类似您显示的方法的东西时,我通常会发现我是从模板的另一部分调用它的,您可以在调用方法中创建缩进。例如:
def callingMethod() {'''
for (1 to 10) {
«myMethod()» ««« This puts indents before everything within the method
}
'''}
def myMethod() {'''
for (int i =0; i!= size; ++i) {
doSomething();
}
'''}
另一种选择是在模板中明确添加空格,例如:
def myMethod() {'''
«" "»for (int i =0; i!= size; ++i) {
«" "» doSomething();
«" "»}
'''}
或者我刚才发现的另一种方式
def myMethod() {'''
«""»
for (int i =0; i!= size; ++i) {
doSomething();
}
«""»
'''}
我个人认为,在可能的情况下,第一种方法要干净得多。可能还有其他方法可以实现这一点,这些只是我在自己的工作中发现的几件事。